; Merge from origin/emacs-25
[emacs.git] / ChangeLog.3
blob1c2f5b1d2fa4b9b45b714ff0c89032dfc6d8dde5
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 (ibuffer-update-title-and-summary, ibuffer-redisplay-current)
197         (ibuffer-buffer-name-face, ibuffer-unmark-all)
198         (ibuffer-count-deletion-lines, ibuffer-buffer-names-with-mark):
199         Use 'eq' instead of 'char-equal' when comparing mark characters (Bug#25000).
200         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000):
201         Update test result as pass.
203 2016-12-07  Christopher Genovese  <genovese@cmu.edu>
205         ibuffer-saved-filters: Remove extra nesting level
207         Fix Bug#25049.
208         * lisp/ibuf-ext.el (ibuffer-saved-filters): Remove extra
209         nesting level; add transparent setter to adjust old-format values;
210         update doc string.
211         (ibuffer-save-filters): Remove extra level of nesting
212         in ibuffer-saved-filters values when saving new filters.
213         (ibuffer-old-saved-filters-warning): New variable with
214         clickable message with repair options to be displayed
215         as a warning if 'ibuffer-repair-saved-filters' detects
216         a format mismatch.
217         (ibuffer-repair-saved-filters): Add new command to check and
218         repair saved filters format.
219         (ibuffer-included-in-filter-p, ibuffer-decompose-filter):
220         Change access of saved filter data (cadr->cdr) to account
221         for reduced nesting.
222         * test/lisp/ibuffer-tests.el (ibuffer-save-filters):
223         New test; check that filters are saved in the proper format.
225 2016-12-06  Paul Eggert  <eggert@cs.ucla.edu>
227         Clean out some IRIX cruft
229         * etc/MACHINES: Remove obsolete discussion of IRIX.
230         * src/process.c (allocate_pty) [__sgi]: Remove SGI-specific code.
231         (create_process) [HAVE_PTYS]: Don't worry about IRIX.
232         * src/syntax.c (scan_sexps_forward): Remove obsolete comment.
233         * src/unexelf.c [__sgi]: Don't include <syms.h>.
234         (unexec) [__sgi]: Remove SGI-specific code.
236 2016-12-06  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
238         Simplify FUNCTIONP implementation
240         * src/bytecode.c (exec_byte_code):
241         * src/image.c (parse_image_spec):
242         Prefer FUNCTIONP (x) to !NILP (Ffunctionp (x)).
243         * src/eval.c (FUNCTIONP): Move here ...
244         * src/lisp.h: ... from here.  No longer inline, as that
245         bloats the text and does not help speed (at least on my platform).
246         (functionp): Remove this name, since callers use FUNCTIONP.
248 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
250         Don't assume window-point and point are the same
252         The function `cursor-sensor--detect' calls `bobp' to decide whether to
253         check properties at (1- (window-point)).  However, (window-point) may be
254         at beginning of buffer, even if (point) is not.  In this case an
255         `args-out-of-range' error will be signaled (Bug#25104).
257         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
258         value of (window-point) against (point-min), rather than (bobp) to
259         decide if (1- (window-point)) is accessible.
261 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
263         Give test-completion's PREDICATE the hashtable key
265         For hashtable entries with symbol keys, `test-completion' would convert
266         the key to a string before calling PREDICATE, unlike `try-completion'
267         and `all-completions'.
269         * src/minibuf.c (Ftest_completion): Pass original key from hashtable.
271 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
273         Give test-completion's PREDICATE full alist entry
275         Since 2016-06-26 "Fix test-completion with completion-regexp-list", when
276         calling test-completion with an alist collection, the predicate was
277         recieving the string value instead of the alist entry (Bug#24966).
279         * src/minibuf.c (Ftest_completion): Don't modify the found element, just
280         test STRING against `completion-regexp-list'.
281         * test/src/minibuf-tests.el: New tests for `try-completion',
282         `all-completions', and `test-completion'.
284 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
286         Fix ert-tests when running compiled
288         * test/lisp/emacs-lisp/ert-tests.el (ert-test-deftest): Don't test for
289         specific macroexpansion, just check result of evaluation.
290         (ert-test-record-backtrace): Don't hardcode representation of closure in
291         expected backtrace, this lets the test succeed even when the test code
292         is compiled.
294         * lisp/emacs-lisp/ert.el (ert--expand-should-1): Also pass
295         `byte-compile-macro-environment' to `macroexpand', this allows the
296         `should' macro to properly handle macroexpansion of macros that were
297         defined in the same file when it's being compiled (Bug #17851).
299 2016-12-06  Glenn Morris  <rgm@gnu.org>
301         Make "g" in vc push/pull buffers re-push/pull
303         * lisp/vc/vc-bzr.el (vc-bzr--pushpull):
304         * lisp/vc/vc-git.el (vc-git--pushpull):
305         * lisp/vc/vc-hg.el (vc-hg--pushpull):
306         Set compile-command so that "g" works.  (Bug#11446)
308 2016-12-06  Paul Eggert  <eggert@cs.ucla.edu>
310         Change two _Noreturn functions to return void
312         This is a bit clearer than _Noreturn functions that (do not)
313         return a non-void type.
314         * src/callproc.c (call_process) [MSDOS]:
315         Use 'status' local to record status.
316         (child_setup): Return CHILD_SETUP_TYPE.
317         * src/data.c, src/lisp.h (wrong_type_argument): Return void.
318         All callers changed.
319         * src/lisp.h (CHILD_SETUP_TYPE): New macro.
321 2016-12-05  Paul Eggert  <eggert@cs.ucla.edu>
323         Fix GPG bug introduced by Oct file-missing change
325         Problem with visiting nonexistent .gpg file
326         reported by Herbert J Skuhra.
327         * lisp/epa-file.el (epa-file--find-file-not-found-function):
328         (epa-file-insert-file-contents, epa-file-write-region):
329         Signal file-missing or file-error instead of epa-error.
331 2016-12-05  Glenn Morris  <rgm@gnu.org>
333         Tweak recent flymake change
335         * lisp/progmodes/flymake.el (flymake-report-fatal-status):
336         Avoid double message when flymake-log-level >= 0.
337         * doc/misc/flymake.texi (Customizable variables):
338         No longer mention flymake-gui-warnings-enabled.
340 2016-12-05  Katsumi Yamaoka  <yamaoka@jpl.org>
342         Make TAB and M-TAB run widget-forward and widget-backward (bug#25091)
344         * lisp/gnus/mm-decode (mm-convert-shr-links): Avoid `shr-next-link'
345         and `shr-previous-link' so TAB and M-TAB run `widget-forward' and
346         `widget-backward' instead (bug#25091).
348 2016-12-05  Michael Albinus  <michael.albinus@gmx.de>
350         Remove compat code in Tramp
352         * lisp/net/tramp.el (tramp-parse-time-months): Remove.
354         * lisp/net/tramp-compat.el (top): Require parse-time.
356         * lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
357         Use `parse-time-months'.
359 2016-12-05  Martin Rudalics  <rudalics@gmx.at>
361         Don't try to split side windows in ibuffer (Bug#25115)
363         * lisp/ibuffer.el (ibuffer-confirm-operation-on): Don't try to
364         split a side window (Bug#25115).
366 2016-12-04  Paul Eggert  <eggert@cs.ucla.edu>
368         * src/lisp.h: Update comment to kick -Og down the road.
370 2016-12-04  Mark Oteiza  <mvoteiza@udel.edu>
372         More image-dired refactoring
374         * lisp/image-dired.el: Remove TODO comment. This appears to have been
375         implemented in 5d7433a "image-dired: Signal an error before calling a
376         missing executable".
377         (image-dired-cmd-create-standard-thumbnail-command): Use %p specifier.
378         Add :version.
379         (image-dired-display-thumbs, image-dired-create-thumbs): Use dolist and
380         when. Remove superfluous call to image-dired-thumb-name. Move single nil
381         binding and setq into dolist form.
383 2016-12-04  Michael Albinus  <michael.albinus@gmx.de>
385         Implement quoting the local part of a remote file name
387         * doc/emacs/files.texi (Quoted File Names):
388         * etc/NEWS: Mention quoting the local part of a remote file name.
390         * lisp/net/tramp.el (tramp-dissect-file-name): Check with
391         `tramp-tramp-file-p'.
392         (tramp-quoted-name-p, tramp-quote-name, tramp-unquote-name):
393         New defsubst.
394         (tramp-handle-substitute-in-file-name)
395         (tramp-handle-make-auto-save-file-name): Handle quoted files.
396         (tramp-shell-quote-argument): Unquote argument.
398         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
399         Handle quoted files.
401         * test/lisp/net/tramp-tests.el (tramp--test-expensive-test): New defvar.
402         (tramp--test-make-temp-name): New argument QUOTED.
403         (tramp-test01-file-name-syntax)
404         (tramp-test02-file-name-dissect)
405         (tramp-test04-substitute-in-file-name)
406         (tramp-test05-expand-file-name, tramp-test07-file-exists-p)
407         (tramp-test08-file-local-copy)
408         (tramp-test09-insert-file-contents)
409         (tramp-test10-write-region, tramp-test11-copy-file)
410         (tramp-test12-rename-file, tramp-test13-make-directory)
411         (tramp-test14-delete-directory, tramp-test15-copy-directory)
412         (tramp-test16-directory-files)
413         (tramp-test17-insert-directory)
414         (tramp-test18-file-attributes)
415         (tramp-test19-directory-files-and-attributes)
416         (tramp-test20-file-modes, tramp-test21-file-links)
417         (tramp-test22-file-times, tramp-test23-visited-file-modtime)
418         (tramp-test24-file-name-completion, tramp-test25-load)
419         (tramp-test26-process-file, tramp-test27-start-file-process)
420         (tramp-test28-shell-command, tramp-test30-vc-registered)
421         (tramp-test31-make-auto-save-file-name)
422         (tramp--test-check-files)
423         (tramp-test35-asynchronous-requests): Test also quoted file names.
424         (tramp--test-shell-command-to-string-asynchronously): Rename.
425         (tramp-test29-environment-variables): Use it.
427 2016-12-04  Tino Calancha  <tino.calancha@gmail.com>
429         Fix typo in dired-omit-case-fold-p
431         * lisp/dired-x.el (dired-omit-case-fold-p):
432         Write 'file-name-case-insensitive-p' instead of
433         'file-name-case-sensitive-p'.
434         Add declaration of 'file-name-case-insensitive-p'.
436 2016-12-04  Simen Heggestøyl  <simenheg@gmail.com>
438         Add HTML5 attributes for the input element
440         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 attributes
441         for the input element.
443 2016-12-03  Glenn Morris  <rgm@gnu.org>
445         Obsolete sc-load-hook in favor of eval-after-load
447         * lisp/mail/supercite.el (sc-load-hook): Make obsolete.
448         * doc/misc/sc.texi (Getting Connected, Filling Cited Text):
449         No longer mention sc-load-hook.
451 2016-12-03  Glenn Morris  <rgm@gnu.org>
453         Obsolete calendar-load-hook in favor of eval-after-load
455         * lisp/calendar/calendar.el (calendar-load-hook): Make obsolete.
456         (calendar): Doc fix - no longer mention calendar-load-hook.
457         * doc/emacs/cal-xtra.texi (Calendar Customizing):
458         No longer mention calendar-load-hook.
459         * doc/lispintro/emacs-lisp-intro.texi (X11 Colors):
460         Replace calendar-load-hook in example with with-eval-after-load.
462 2016-12-03  Glenn Morris  <rgm@gnu.org>
464         Fix markup in read-multiple-choice doc (Bug#25102)
466         * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Doc fix.
468 2016-12-03  Glenn Morris  <rgm@gnu.org>
470         Stop flymake using dialog boxes for errors (Bug#16622)
472         * lisp/progmodes/flymake.el (flymake-gui-warnings-enabled):
473         Mark as obsolete.
474         (flymake-display-warning): Turn into an obsolete alias.
475         (flymake-report-fatal-status): Just use message for a warning that
476         was formerly displayed by default.
478 2016-12-03  Mark Oteiza  <mvoteiza@udel.edu>
480         Clean up keymap and menu code in image-dired
482         A function to populate these maps is not necessary, just define the maps
483         once and for all.
484         * lisp/image-dired.el (image-dired-show-all-from-dir): Make prompt
485         clearer and in the spirit of dired's.
486         (image-dired-define-display-image-mode-keymap):
487         (image-dired-define-thumbnail-mode-keymap): Remove.
488         (image-dired-thumbnail-mode-map):
489         (image-dired-thumbnail-mode-line-up-map):
490         (image-dired-thumbnail-mode-tag-map): Assimilate all define-key and mode
491         menu code from the aforementioned removed functions.  Reorder so that
492         the definitions are inherited properly.
493         (image-dired-display-current-image-sized): Fix erroneous message.
494         (image-dired-thumbnail-mode):
495         (image-dired-display-image-mode): Remove defunct call.
497 2016-12-03  Michael Albinus  <michael.albinus@gmx.de>
499         Mention `file-name-case-insensitive-p' as magic file name
501         * doc/lispref/files.texi (Magic File Names):
502         Mention `file-name-case-insensitive-p'.
504         * doc/lispref/variables.texi (Connection Local Variables):
505         Fix typo.
507 2016-12-03  Mark Oteiza  <mvoteiza@udel.edu>
509         Clean up uses of cl-foo in image-dired
511         Both instances here are just emulating cl-find-if.
512         * lisp/image-dired.el: Use cl-lib at compile time.
513         (image-dired-dired-toggle-marked-thumbs): Don't need let* at the top.
514         Replace the cl-foo instances with equivalent cl-loops.
516 2016-12-03  Eli Zaretskii  <eliz@gnu.org>
518         Avoid compilation warnings in nt/*.c files
520         * nt/cmdproxy.c (fail, vfprintf, fprintf, printf, warn)
521         (console_event_handler): Add prototypes.
522         (canon_filename, skip_space, skip_nonspace, get_next_token)
523         (batch_file_p, search_dir, make_absolute, try_dequote_cmdline)
524         (spawn, get_env_size): Now static.
525         * nt/ddeclient.c (DdeCallback): Provide prototype.
526         * nt/addpm.c (DdeCallback): Provide prototype.
527         (add_registry): Now static.
529 2016-12-02  Mark Oteiza  <mvoteiza@udel.edu>
531         Display window before calculating width
533         * lisp/image-dired.el (image-dired-display-thumbs): Display the buffer
534         before calling image-dired-line-up and friends, which in turn calculate
535         the window width. Otherwise, the thumbnail layout will be wrong in
536         a side-by-side split.
538 2016-12-02  Mark Oteiza  <mvoteiza@udel.edu>
540         Use pop-to-buffer-same-window
542         * lisp/image-dired.el (image-dired-dired-with-window-configuration):
543         (image-dired-dired-edit-comment-and-tags): Instead of switch-to-buffer,
544         use pop-to-buffer-same-window cf. Bug#22244.
545         (image-dired-forward-image, image-dired-backward-image): Ignore unused.
547 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
549         Document watchpoints
551         * doc/lispref/debugging.texi (Variable Debugging):
552         * doc/lispref/variables.texi (Watching Variables): New section.
553         * etc/NEWS: Add entry for watchpoints
555 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
557         Add tests for watchpoints
559         * test/src/data-tests.el (data-tests-variable-watchers):
560         (data-tests-local-variable-watchers): New tests.
562 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
564         Ensure redisplay using variable watcher
566         This replaces looking up the variable name in redisplay--variables when
567         setting it.
569         * lisp/frame.el: Replace redisplay--variables with add-variable-watcher
570         calls.
571         * src/xdisp.c (Fset_buffer_redisplay): Rename from maybe_set_redisplay,
572         set the redisplay flag unconditionally.
573         (Vredisplay__variables): Remove it.
574         * src/data.c (set_internal): Remove maybe_set_redisplay call.
576 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
578         Add function to trigger debugger on variable write
580         * lisp/emacs-lisp/debug.el (debug-on-variable-change):
581         (debug--variable-list):
582         (cancel-debug-on-variable-change): New functions.
583         (debugger-setup-buffer): Add watchpoint clause.
585 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
587         Show watchpoints when describing variables
589         * src/data.c (Fget_variable_watchers): New function.
590         * lisp/help-fns.el (describe-variable): Use it to detect watching
591         functions.
593 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
595         Add lisp watchpoints
597         This allows calling a function whenever a symbol-value is changed.
599         * src/lisp.h (lisp_h_SYMBOL_TRAPPED_WRITE_P):
600         (SYMBOL_TRAPPED_WRITE_P): New function/macro.
601         (lisp_h_SYMBOL_CONSTANT_P): Check for SYMBOL_NOWRITE specifically.
602         (enum symbol_trapped_write): New enumeration.
603         (struct Lisp_Symbol): Rename field constant to trapped_write.
604         (make_symbol_constant): New function.
606         * src/data.c (Fadd_variable_watcher, Fremove_variable_watcher):
607         (set_symbol_trapped_write, restore_symbol_trapped_write):
608         (harmonize_variable_watchers, notify_variable_watchers): New functions.
610         * src/data.c (Fset_default): Call `notify_variable_watchers' for trapped
611         symbols.
612         (set_internal): Change bool argument BIND to 3-value enum and call
613         `notify_variable_watchers' for trapped symbols.
615         * src/data.c (syms_of_data):
616         * src/data.c (syms_of_data):
617         * src/font.c (syms_of_font):
618         * src/lread.c (intern_sym, init_obarray):
619         * src/buffer.c (syms_of_buffer): Use make_symbol_constant.
621         * src/alloc.c (init_symbol):
622         * src/bytecode.c (exec_byte_code): Use SYMBOL_TRAPPED_WRITE_P.
623         * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable):
624         (Fmake_variable_frame_local):
625         * src/eval.c (Fdefvaralias, specbind): Refer to Lisp_Symbol's
626         trapped_write instead of constant.
627         (Ffuncall): Move subr calling code into separate function.
628         (funcall_subr): New function.
630 2016-12-02  Glenn Morris  <rgm@gnu.org>
632         Starting doc of user options with "*" is long obsolete
634         * lisp/battery.el (battery-upower-device): Doc fix.
636 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
638         Fix bug#25087
640         * etc/themes/manoj-dark-theme.el: Fix two typos.
642         (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
644 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
646         Fix docstrings to have a complete sentence in first line
648         * lisp/dired-x.el (dired-omit-case-fold, dired-omit-case-fold-p): Fix
649         docstrings.
651 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
653         Remove obsolete comments and commented code from dired-x.el
655         * lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its
656         1997 answer about whether dired-mark-sexp is used.
657         * lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function
658         commented out since before dired-x.el was added to RCS in 1994.
660 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
662         Remove pre-customize dired-x.el documentation
664         * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to
665         use dired-x from .emacs.  It is now fully customizable.
666         * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of
667         how to set this custom variable in .emacs.  It should be customized.
669 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
671         Allow files to be matched case-sensitively in dired-x
673         * lisp/dired-x.el (dired-mark-unmarked-files): Add an argument which
674         controls case folding for matching the regex (Bug#18716).
675         (dired-omit-case-fold): New variable.  Defaults to `t' on case-sensitive
676         systems, `nil' otherwise.
677         (dired-mark-omitted, dired-omit-expunge): Use dired-omit-case-fold.
678         * doc/misc/dired-x.texi, etc/NEWS: Document dired-omit-case-fold.
680 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
682         Add support for curly quotation marks to electric-pair-mode
684         * lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs): Add
685         entries for left/right single/double quotation marks, from
686         electric-quote-chars. Note that this is safe for single quotation marks,
687         unlike with the ASCII apostrophe, since, although the right quotation
688         mark can be used as an apostrophe, it is the left quotation mark that is
689         typed to get a pair (Bug#24901).
691 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
693         Fix bug#25087
695         * etc/themes/manoj-dark-theme.el: Fix two typos.
697 2016-12-02  Michael Albinus  <michael.albinus@gmx.de>
699         Handle quoted file names in Tramp
701         * lisp/net/tramp.el (tramp-file-name-handler): Handle also the
702         case the file name is quoted.  This is not trapped by the
703         reassigned `tramp-file-name-regexp' anymore.
705 2016-12-02  Evgeny Zajcev  <lg.zevlg@gmail.com>
707         * lisp/battery.el: Add 'battery-upower' -- very fast battery status.
709 2016-12-02  Evgeny Zajcev  <lg.zevlg@gmail.com>
711         Support for rawrgb images using imagemagick
713         * src/image.c (imagemagick_load_image): Set wand size before loading
714         blob when ':width' and ':height' are provided.
716         * lisp/image.el (image-format-suffixes): Add 'image/x-rgb'.
718 2016-12-02  Nikolay Kudryavtsev  <nikolay.kudryavtsev@gmail.com>
720         Fix 'sql-connect' on first invocation
722         * lisp/progmodes/sql.el (sql-connect): Reorder code which sets
723         param-var.  (Bug#19452)
725 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
727         * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
729 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
731         Improve indexing of 'man'
733         * doc/emacs/programs.texi (Man Page): Index 'man', not
734         'manual-entry', as the latter is an alias for the former.
735         Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
737 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
739         Port to Sun C 5.14
741         Backport from master.  Sun C 5.14 supports C11 but not GCC
742         extensions, and so refuses to compile Emacs without this patch.
743         * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
744         size_t, as in general this macro is restricted to signed types.
746 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
748         Fix type typo on Solaris
750         * src/sysdep.c (system_process_attributes) [SOLARIS2 && HAVE_PROCFS]:
751         Fix type mismatch, caught by --enable-check-lisp-object-type.
753 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
755         Merge from gnulib
757         This incorporates:
758         2016-11-27 md4,md5,sha*: tune for recent glibc _STRING_INLINE_unaligned
759         2016-11-21 snippet/c++defs: Simplify _GL_CXXALIAS_* macros.
760         * build-aux/snippet/c++defs.h:
761         * lib/md5.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
762         Copy from gnulib.
764 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
766         Make struct font_drivers read-only
768         This simplifies the code a bit, and makes the structs more
769         shareable and less likely to become corrupt.
770         * src/alloc.c (cleanup_vector):
771         * src/font.c (valid_font_driver, font_prepare_cache)
772         (font_finish_cache, font_get_cache, font_clear_cache)
773         (register_font_driver, font_update_drivers):
774         * src/font.h (struct font, struct font_driver_list)
775         (valid_font_driver):
776         struct font_drivers are now const.
777         * src/font.c, src/ftcrfont.c, src/ftfont.c, src/nsfont.m, src/xfont.c:
778         Omit no-longer-necessary decls.
779         * src/ftcrfont.c (syms_of_ftcrfont):
780         * src/ftxfont.c (syms_of_ftxfont):
781         * src/xftfont.c (syms_of_xftfont):
782         Omit no-longer-necessary initialization code.
783         * src/ftcrfont.c (ftcrfont_driver):
784         * src/ftfont.c (ftfont_driver):
785         * src/ftxfont.c (ftxfont_driver):
786         * src/macfont.m (macfont_driver):
787         * src/nsfont.m (nsfont_driver):
788         * src/xfont.c (xfont_driver):
789         * src/xftfont.c (xftfont_driver):
790         Use C99-style initializer for ease of maintenance, and make it const.
791         * src/ftcrfont.c, src/ftxfont.c, src/xftfont.c:
792         Refer to functions like ftfont_text_extents directly.
793         * src/ftfont.c (ftfont_get_cache, ftfont_list, ftfont_list_family)
794         (ftfont_has_char, ftfont_encode_char, ftfont_text_extents)
795         (ftfont_get_bitmap, ftfont_anchor_point, ftfont_otf_capability)
796         (ftfont_variation_glyphs, ftfont_filter_properties)
797         (ftfont_combining_capability):
798         * src/xfont.c (xfont_get_cache):
799         Now extern, so that other modules’ struct font_drivers can use
800         them directly.
801         * src/macfont.m (macfont_descriptor_entity):
802         * src/nsfont.m (nsfont_open):
803         Use constant directly; this is clearer.
805 2016-12-01  Richard Stallman  <rms@gnu.org>
807         Fix mail-combine-fields
809         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
810         avoid losing our place in the search loop.
812         (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
814 2016-12-01  Helmut Eller  <eller.helmut@gmail.com>
816         Forth related improvements for etags
818         Generate correct tags names for things like "(foo)".
819         Previously "(foo" created.
821         Fix a bug where a tag for "-bar" was created when encountering things
822         like "create-bar".
824         Recognize more words from the Forth-2012 Standard.
826         * lib-src/etags.c (Forth_words): Check for whitespace after defining
827         words.  Create tag with make_tag instead of get_tag to avoid notiname
828         which isn't appropriate for Forth.
830         * test/manual/etags/forth-src/test-forth.fth: Add some test cases.
831         * test/manual/etags/ETAGS.good_1:
832         * test/manual/etags/ETAGS.good_2:
833         * test/manual/etags/ETAGS.good_3:
834         * test/manual/etags/ETAGS.good_4:
835         * test/manual/etags/ETAGS.good_5:
836         * test/manual/etags/ETAGS.good_6:
837         * test/manual/etags/CTAGS.good: Adapt to the changes in etags.c and
838         new test cases.
840 2016-12-01  Eli Zaretskii  <eliz@gnu.org>
842         Fix bugs with buffer-local tags tables
844         * lisp/progmodes/etags.el (visit-tags-table): After
845         'visit-tags-table-buffer' returns, retrieve the value of
846         'tags-file-name' from the buffer we started in.  Force
847         recomputation of 'tags-completion-table' next time it is used,
848         since the list of tags table has changed.
849         (visit-tags-table-buffer): Accept an additional optional argument
850         CBUF, the buffer in which to start processing, and switch to that
851         buffer if CBUF is non-nil.  All callers changed to supply a
852         non-nil CBUF when they call 'visit-tags-table-buffer' in a loop.
853         Doc fix.
854         (tags-completion-table): Accept an optional argument, the buffer
855         for which to build 'tags-completion-table', and build that
856         buffer's completion table.
857         (tags-lazy-completion-table): Pass the current buffer to
858         'tags-completion-table'.
859         (tags-file-name): Don't say in the doc string that setting this
860         variable directly is enough; say that 'visit-tags-table' should be
861         used for that.  (Bug#158)  (Bug#17326)  (Bug#23164)
863         * doc/emacs/maintaining.texi (Select Tags Table): Delete the
864         advice to set 'tags-file-name' directly.
866         * test/lisp/progmodes/etags-tests.el: New tests.
868 2016-12-01  Martin Rudalics  <rudalics@gmx.at>
870         Fix documentation of `window-combination-resize'
872         * src/window.c (Vwindow_combination_resize): Fix doc-string.
873         * doc/lispref/windows.texi (Recombining Windows): Fix
874         documentation of `window-combination-resize'.
876 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
878         * src/lisp.h (LISP_INITIALLY_ZERO): Remove.
880         All uses replaced by LISPSYM_INITIALLY.
882 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
884         Make Cairo safer for --enable-gcc-warnings
886         * src/image.c (xcolor_to_argb32, pbm_load, jpeg_load_body, gif_load):
887         Avoid overflow warnings about ‘0xff << 24’.
888         (xpm_load, gif_load): Avoid unnecessary casts.
889         (gif_load): Fewer ifdefs.
891 2016-11-30  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
893         Fix Condition in kbd_buffer_store_buffered_event (bug#19547).
895         * src/keyboard.c (kbd_buffer_store_buffered_event): Should be NILP and not
896         !NILP.
898 2016-11-29  Noam Postavsky  <npostavs@gmail.com>
900         Fix previous commit
902         * lisp/vc/diff-mode.el (diff-refine-hunk): Make sure to go to beginning
903         of hunk before calling `diff-hunk-style'.
905 2016-11-29  Noam Postavsky  <npostavs@gmail.com>
907         * lisp/vc/diff-mode.el (diff-refine-hunk): Remove redundant variable.
909 2016-11-29  Glenn Morris  <rgm@gnu.org>
911         Use archive-mode for .cbr files
913         * lisp/files.el (auto-mode-alist): Add cbr.  (Bug#24994)
915 2016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
917         Pacify Sun C 5.14
919         * src/lisp.h (enum Lisp_Save_Type): Put SAVE_UNUSED,
920         SAVED_INTEGER, SAVE_FUNCPOINTER, SAVE_POINTER, and SAVE_OBJECT
921         into this enum rather than into an anonymous enum.  This avoids
922         diagnostics from Sun C 5.14 and is a bit clearer anyway.
924 2016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
926         Adjust lwlib to recent config.h change
928         * lwlib/lwlib-Xaw.c: Include <stdlib.h> for 'abort' (Bug#24506).
930 2016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
932         * src/eval.c (clobbered_eassert): Check E's syntax.
934 2016-11-29  Michael Albinus  <michael.albinus@gmx.de>
936         Improve user retrieval from auth-source in Tramp
938         * lisp/net/tramp.el (tramp-read-passwd, tramp-clear-passwd):
939         Use user for auth-source request only in case it exists.
941 2016-11-29  Katsumi Yamaoka  <yamaoka@jpl.org>
943         shr.el: Don't render a normal table twice
945         * lisp/net/shr.el (shr-collect-extra-strings-in-table):
946         Don't render a table if it is called for the first time,
947         IOW, recognize it to never be invalid (bug#25051).
949 2016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
951         Typo fixes in elisp manual
953         * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
954         * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
955         definitions of 'string-prefix-p' and 'string-suffix-p'.
956         * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
958 2016-11-28  Dima Kogan  <Dmitriy.Kogan@jpl.nasa.gov>
960         Improve diff-mode navigation/manipulation
962         This is Bug #17544.
964         Navigation and use of diff buffers had several annoying corner cases
965         that this patch fixes.  These corner cases were largely due to
966         inconsistent treatment of file headers.  Say you have a diff such as
967         this:
969          --- aaa
970          +++ bbb
971          @@ -52,7 +52,7 @@
972          hunk1
973          @@ -74,7 +74,7 @@
974          hunk2
975          --- ccc
976          +++ ddd
977          @@ -608,6 +608,6 @@
978          hunk3
979          @@ -654,7 +654,7 @@
980          hunk4
982         The file headers here are the '---' and '+++' lines.  With the point on
983         such a line, hunk operations would sometimes refer to the next hunk and
984         sometimes to the previous hunk.  Most of the time it would be the
985         previous hunk, which is not what the user would expect.  This patch
986         consistently treats such headers as the next hunk.  So with this patch,
987         if the point is on the '--- ccc' line, the point is seen as referring to
988         hunk3.
990         Specific behaviors this fixes are:
992         1. It should be possible to place the point in the middle of a diff
993         buffer, and press M-k repeatedly to kill hunks in the order they appear
994         in the buffer.  With the point on hunk1, M-k M-k would kill hunk1 then
995         hunk2.  With the point on hunk3, it would kill hunk3 then hunk4; this is
996         fine.  However, with the point on hunk2, it'd kill hunk2 then hunk1.
997         This is fixed by this patch.
999         2. Similarly, it should be possible to apply hunks in order.  Previously
1000         with the point at the start, C-c C-a would apply the hunk1, then move
1001         the point to the first @@ header, and thus C-c C-a would try to apply
1002         the same hunk again.
1004         * lisp/vc/diff-mode.el (diff--wrap-navigation): New function to add better
1005         navigation logic to diff-{hunk,file}-{next,prev}.
1006         (diff-hunk-next, diff-hunk-prev):
1007         (diff-file-next, diff-file-prev): Better navigation logic if
1008         skip-hunk-start is true, which happens when called interactively.
1009         (diff-bounds-of-hunk, diff-find-source-location):
1010         (diff-apply-hunk, diff-current-defun, diff-refine-hunk): Small tweaks to
1011         improve hunk navigation.
1013 2016-11-28  Noam Postavsky  <npostavs@gmail.com>
1015         Upcase Path and ComSpec in process-environment
1017         Since 2016-07-18 "Keep w32 environment settings internal only", the
1018         upcasing of environment variables "Path" and "ComSpec" occured after
1019         initializing process-environment.  This meant that Lisp code trying to
1020         override "PATH" environment had no effect (Bug #24956).
1022         * src/w32.c (init_environment): Upcase the "Path" and "ComSpec" entries
1023         in Vprocess_environment.
1025 2016-11-28  Philipp Stephani  <phst@google.com>
1027         Guard terminal parameter in XTerm mouse mode
1029         It has been observed (in the HTerm terminal emulator) that the
1030         event stored in the 'xterm-mouse-last-down' terminal parameter gets
1031         overwritten during a mouse drag operation, causing Emacs to attempt to
1032         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
1033         the terminal parameter to protect against such modifications.
1035         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
1036         of input event list.
1038 2016-11-28  Paul Eggert  <eggert@cs.ucla.edu>
1040         Fix template for module functions
1042         Reported by Syohei YOSHIDA (Bug#24932).
1043         * modules/modhelp.py (TEMPLATES):
1044         c_func’s 2nd arg is ptrdiff_t, not int.
1046 2016-11-27  Paul Eggert  <eggert@cs.ucla.edu>
1048         Pacify gcc -Wswitch.
1050         * src/keyboard.c (kbd_buffer_store_buffered_event):
1051         Move initialization into default case.
1053 2016-11-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
1055         Reuse already existing lisp symbols for ignore_event (bug#19547).
1057         * lisp/subr.el (while-no-input-ignore-events): Use them instead.
1058         * src/keyboard.c (kbd_buffer_store_buffered_event):
1059         Use help-echo for HELP_EVENT, iconify-frame for ICONIFY_EVENT,
1060         and make-frame-visible for DEICONIFY_EVENT.
1061         (syms_of_keyboard): Remove unneeded symbols.
1063 2016-11-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
1065         Allow configuring which event throw-on-input should ignore (bug#19547).
1067         * src/keyboard.c (kbd_buffer_store_buffered_event):
1068         Translate event to corresponding symbol from `while-no-input-ignore-events`
1069         and check them with Fmemq.
1070         (syms_of_keyboard): Declare new lisp variable `while-no-input-ignore-events`
1071         and its symbols.
1073         * lisp/subr.el (while-no-input-ignore-events): Add default values.
1075         * doc/lispref/commands.texi (Event Input Misc):
1076         Document while-no-input-ignore-events.
1077         * etc/NEWS: Same.
1079 2016-11-26  Tino Calancha  <tino.calancha@gmail.com>
1081         ash, lsh avoid code duplication
1083         See discussion in:
1084         https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00469.html
1085         * src/data.c (ash_lsh_impl): New function.
1086         (ash, lsh): Use it.
1088 2016-11-26  Simen Heggestøyl  <simenheg@gmail.com>
1090         Add will change module to CSS property list
1092         * lisp/textmodes/css-mode.el (css-property-alist)
1093         (css-value-class-alist): Add new property and value class from CSS
1094         Will Change Module.
1096 2016-11-26  Paul Eggert  <eggert@cs.ucla.edu>
1098         Don't access pointers to freed storage in regex.c
1100         Remove __BOUNDED_POINTERS__ code, which does not work with
1101         -fcheck-pointer-bound and which has undefined behavior anyway.
1102         Problem found when trying to port to gcc -fcheck-pointer-bounds.
1103         (This code was removed from glibc and gnulib regex.c many years ago.)
1104         * src/regex.c (ELSE_EXTEND_BUFFER_HIGH_BOUND): Remove.
1105         (EXTEND_BUFFER): Use a more-portable approach that avoids
1106         undefined behavior due to inspecting pointers to freed storage.
1108 2016-11-25  Paul Eggert  <eggert@cs.ucla.edu>
1110         Port build to gcc -fcheck-pointer-bounds
1112         This does not let Emacs run, just build.
1113         * lib-src/etags.c (main):
1114         * lib-src/profile.c (main):
1115         Use return, not exit.
1116         * src/bytecode.c (BYTE_CODE_THREADED) [__CHKP__]:
1117         Do not define, as -fcheck-pointer-bounds is incompatible with taking
1118         addresses of labels.
1119         * src/menu.c (Fx_popup_dialog): Use eassume, not eassert,
1120         to pacify gcc -fcheck-pointer-bounds -Wnull-dereference.
1122 2016-11-25  Tino Calancha  <tino.calancha@gmail.com>
1124         * lisp/emacs-lisp/subr-x.el (hash-table-keys, hash-table-values): Use cl-loop.
1126 2016-11-25  Simen Heggestøyl  <simenheg@gmail.com>
1128         * lisp/rot13.el: Use lexical-binding
1130 2016-11-25  Mark Oteiza  <mvoteiza@udel.edu>
1132         Add "using" to cl-loop debug spec (Bug#24750)
1134         * lisp/emacs-lisp/cl-macs.el (cl-loop): Add element to account for
1135         "using" hash table clause.
1137 2016-11-25  Hong Xu  <hong@topbug.net>  (tiny change)
1139         Allow user control of progress messages in cpp.el
1141         * progmodes/cpp.el (cpp-message-min-time-interval): New defcustom.
1142         (cpp-progress-time): Use 'cpp-message-min-time-interval'.  Improve
1143         the doc string.
1144         (cpp-highlight-buffer): Use 'cpp-progress-message' instead of
1145         'message' to print messages.  (Bug#24861)
1147 2016-11-25  Wojciech Gac  <wojciech.s.gac@gmail.com>  (tiny change)
1149         New input method 'polish-prefix'
1151         * lisp/leim/quail/latin-pre.el ("polish-prefix"): New input
1152         method.  (Bug#24967)
1154         * etc/NEWS: Mention the new input method.
1156 2016-11-25  Damien Cassou  <damien@cassou.me>
1158         * lisp/isearch.el: Add 'provide'.  (Bug#25026)
1160 2016-11-25  Philippe Vaucher  <philippe.vaucher@gmail.com>
1162         Add missing 'provide's in preloaded packages
1164         * lisp/composite.el:
1165         * lisp/replace.el:
1166         * lisp/textmodes/text-mode.el: Add provide statement.  (Bug#24985)
1168 2016-11-24  Alan Mackenzie  <acm@muc.de>
1170         Handle correctly an (undocumented) bare mode in hack-local-variables.
1172         lisp/files.el (hack-local-variables-prop-line): When a file's first line
1173         contains only a mode specification without the string "mode:", return the mode
1174         symbol only when `handle-mode' is t.
1176 2016-11-23  Dima Kogan  <dima@secretsauce.net>
1178         Clarify ediff-directories prompt
1180         * lisp/vc/ediff-mult.el (ediff-filegroup-action):
1181         * lisp/vc/ediff.el (ediff-directories,ediff-directory-revisions,
1182         ediff-directories3, ediff-merge-directories,
1183         ediff-merge-directories-with-ancestor, ediff-merge-directory-revisions,
1184         ediff-merge-directory-revisions-with-ancestor): Clarify prompt message for
1185         filename filter in interactive ediff. The new message makes it clear what is
1186         being filtered
1188 2016-11-23  Tino Calancha  <tino.calancha@gmail.com>
1190         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997): Add test for Bug#24997.
1192 2016-11-23  Ulf Jasper  <ulf.jasper@web.de>
1194         Fix Bug#24199.
1196         * lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm): Quote
1197           bracket in doc string (make checkdoc happy).
1198           (icalendar-import-buffer),
1199           (icalendar-import-buffer),
1200           (icalendar--convert-ical-to-diary),
1201           (icalendar--add-diary-entry): Rename argument diary-file to
1202           diary-filename (make checkdoc happy).
1203           (icalendar--convert-recurring-to-diary): Take care of byday-clause
1204           in monthly recurring events.  Actually fix Bug#24199.
1206         * test/lisp/calendar/icalendar-tests.el (icalendar-import-bug-24199): New.
1208 2016-11-23  Tino Calancha  <tino.calancha@gmail.com>
1210         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000): Add test for Bug25000.
1212 2016-11-22  Philipp Stephani  <phst@google.com>
1214         Comint: new user option for C-c M-r and C-c M-s
1216         This option allows the user to specify where to place point after these
1217         commands.
1219         * comint.el (comint-move-point-for-matching-input): New user option.
1220         (comint-previous-matching-input-from-input): Use user option.
1222 2016-11-22  Michael Albinus  <michael.albinus@gmx.de>
1224         Add tramp-eshell-directory-change to eshell-first-time-mode-hook
1226         * lisp/net/tramp.el (tramp-eshell-directory-change): Add it also to
1227         `eshell-first-time-mode-hook'.
1229 2016-11-22  Michael Albinus  <michael.albinus@gmx.de>
1231         Dump also connection local variables in Tramp bug reports
1233         * lisp/net/tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers):
1234         Dump also connection local variables.
1236 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1238         Make sure elided long buffer names have ellipses added (Bug#24972)
1240         * lisp/ibuffer.el (ibuffer-compile-make-eliding-form): Restore the
1241         string concat, and chop "strvar" less the width of the ellipsis.
1242         (ibuffer-compile-make-substring-form): Add space as padding, to fix
1243         off-by-one in alignment.
1245 2016-11-21  Tino Calancha  <tino.calancha@gmail.com>
1247         Buffer-menu-no-header: Detect a fake header
1249         * lisp/buff-menu.el (Buffer-menu-no-header): Use
1250         'tabulated-list-header-overlay-p' (Bug#24855).
1252 2016-11-21  Tino Calancha  <tino.calancha@gmail.com>
1254         buff-menu: Add command to unmark all buffers
1256         Bind 'U' in buff-menu, bs and electric-buff-menu to commands
1257         to unmark all buffers (Bug#24880).
1258         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p):
1259         New predicate; return non-nil if tabulated-list has a fake header.
1260         * lisp/buff-menu.el (Buffer-menu-unmark-all-buffers):
1261         New command; remove all flags that use a particular mark from all the lines.
1262         Bind it to 'M-DEL'.
1263         (Buffer-menu-unmark-all):
1264         New command; remove all flags from all the lines.  Bind it to 'U'.
1265         (Buffer-menu-marker-char, Buffer-menu-del-char): New variables.
1266         (Buffer-menu-delete, Buffer-menu-mark): Use them.
1267         (Buffer-menu-mode-map): Update menus.
1268         (Buffer-menu-mode): Update mode doc.
1269         * lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands.
1270         (bs-mode-map): Bind them to 'U' and '<backspace>' respectively.
1271         (bs-mode): Update mode doc.
1272         * lisp/ebuff-menu.el (electric-buffer-menu-mode-map):
1273         Bind Buffer-menu-unmark-all to 'U' and Buffer-menu-unmark-all-buffers
1274         to 'M-DEL'.
1275         (bs--down, bs-down, bs--up, bs-up, bs-unmark-current, bs-mark-current):
1276         Use point instead of cursor in doc string.
1277         (electric-buffer-list): Update mode doc.
1278         * doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all
1279         and Buffer-menu-unmark-all-buffers.
1281 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1283         Revert "* lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure."
1285         This reverts commit 10efaf718c5258af0ba62077cf4e2aaf9fb90227.
1287 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1289         Port htmlfontify to cl-lib
1291         * lisp/htmlfontify.el: (hfy-box-to-border-assoc, hfy-box-to-style):
1292         (hfy-decor, hfy-face-to-style-i, hfy-face-at, hfy-merge-adjacent-spans):
1293         (hfy-fontify-buffer, htmlfontify-string, hfy-mark-tag-names): Replace
1294         instances of cl aliases with their cl-lib counterparts.
1296 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1298         * lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure.
1300 2016-11-21  Paul Eggert  <eggert@cs.ucla.edu>
1302         Fix another CANNOT_DUMP problem
1304         Reported by Robert Pluim in:
1305         http://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00468.html
1306         * src/emacs.c (might_dump) [CANNOT_DUMP]: Move enum decl from here ...
1307         * src/lisp.h: ... to here.
1309 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1311         Add further consideration to string-width (Bug#24972)
1313         * lisp/ibuffer.el (ibuffer-compile-make-eliding-form):
1314         (ibuffer-compile-make-substring-form): Use truncate-string-to-width.
1316 2016-11-21  Katsumi Yamaoka  <yamaoka@jpl.org>
1318         Don't collect strings existing out of <tr>...</tr>
1320         * lisp/net/shr.el (shr-collect-extra-strings-in-table):
1321         Don't collect strings existing out of <tr>...</tr> to avoid
1322         duplication with what `shr-tag-table' renders.
1324 2016-11-20  Katsumi Yamaoka  <yamaoka@jpl.org>
1326         * lisp/gnus/gnus-mh.el (gnus-summary-save-in-folder): Slightly change
1327         the last commit.
1329 2016-11-20  Mike Kupfer  <m.kupfer@acm.org>
1331         Add a variable to pass additional options to rcvstore
1333         * lisp/gnus/gnus-mh.el (gnus-rcvstore-options): New variable.
1334         (gnus-summary-save-in-folder): Include gnus-rcvstore-options in
1335         the arguments that are passed to rcvstore.
1337         cf. <nntp://news.gmane.org/gmane.emacs.gnus.general/87263>
1338         and followups, i.e., ding mailing list.
1340 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1342         Fix undefined refs on some GNU/Linux hosts
1344         Problem reported by Ken Raeburn in:
1345         http://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00463.html
1346         * src/emacs.c (heap_bss_diff) [CANNOT_DUMP]: Remove, as this is
1347         not needed in the CANNOT_UNDUMP case.  All uses removed.  This
1348         removes unwanted references to my_endbss and my_endbss_static,
1349         which are not optimized away on some platforms.
1351 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1353         Make CANNOT_DUMP work better on GNU/Linux
1355         Clean up some of the bitrot affecting the CANNOT_DUMP code.  This
1356         lets the build succeed again, and fixes the testing framework so
1357         that most test cases now pass.  About twenty test cases still
1358         fail, though, and we still have Bug#24974.
1359         * configure.ac (CANNOT_DUMP): Now empty if CANNOT_DUMP.
1360         (SYSTEM_MALLOC): Now true if CANNOT_DUMP.  There should no longer
1361         be any point to messing with a private memory allocator unless
1362         Emacs is dumping.
1363         * src/alloc.c (alloc_unexec_pre, alloc_unexec_post, check_pure_size):
1364         * src/image.c (reset_image_types):
1365         * src/lastfile.c (my_endbss, _my_endbss, my_endbss_static):
1366         Do not define if CANNOT_DUMP.
1367         * src/emacs.c (might_dump) [CANNOT_DUMP]: Now always false and local.
1368         (daemon_pipe) [!WINDOWSNT]: Now static.
1369         * test/Makefile.in (mostlyclean): Remove *.tmp files.
1370         (make-test-deps.mk): Elide CANNOT_DUMP chatter.
1372 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1374         * src/xdisp.c (block_buffer_flips, unblock_buffer_flips): Now static.
1376 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1378         Pacify --enable-gcc-warnings CANNOT_DUMP=yes
1380         * src/editfns.c (dump_tz_string) [CANNOT_DUMP || !HAVE_TZSET]:
1381         Do not define.  If defining, do it in a smaller scope.
1383 2016-11-20  Mark Oteiza  <mvoteiza@udel.edu>
1385         * lisp/ibuffer.el (ibuffer-compile-format): Use string-width instead of length
1387 2016-11-20  Eli Zaretskii  <eliz@gnu.org>
1389         Fix redrawing non-selected frame after resize on MS-Windows
1391         * src/xdisp.c (redisplay_internal): If all the frames were
1392         successfully updated, reset the "garbaged" flag of each frame, to
1393         make sure it doesn't stay set.
1395         * src/w32term.c (w32_read_socket): Don't clear the frame if it's
1396         "garbaged", since expose_frame won't redraw the foreground then.
1397         (Bug#24642)
1399 2016-11-20  Michael Albinus  <michael.albinus@gmx.de>
1401         Add file-local-name
1403         * doc/lispref/files.texi (Magic File Names): Add `file-local-name'.
1404         (Unique File Names): Use it.
1406         * etc/NEWS: Mention `file-local-name'.
1408         * lisp/files.el (file-local-name): New defun.
1409         (file-expand-wildcards):
1410         * lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
1411         * lisp/eshell/esh-ext.el (eshell-remote-command):
1412         * lisp/eshell/esh-proc.el (eshell-gather-process-output):
1413         * lisp/org/ob-core.el (org-babel-local-file-name):
1414         * lisp/progmodes/gud.el (gud-common-init, gud-format-command):
1415         * lisp/progmodes/python.el (python-shell-send-file):
1416         * lisp/shell.el (shell):
1417         * lisp/vc/ediff-diff.el (ediff-same-file-contents):
1418         * lisp/vc/vc-git.el (vc-git-checkin): Use it.
1420 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
1422         * lisp/ibuffer.el (ibuffer-formats): Mention locked column in doc string.
1424 2016-11-19  Tino Calancha  <tino.calancha@gmail.com>
1426         * src/editfns.c (format-time-string): Mention %q in doc string.
1428 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1430         Document format-time-string %q
1432         * doc/lispref/os.texi (Time Parsing):
1433         * etc/NEWS: Document new %q functionality taken from gnulib.
1435 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1437         Merge from gnulib
1439         This incorporates:
1440         2016-11-15 sys_time: add gnulib::timeval for C++
1441         2016-11-14 snippet/c++defs: fix real-floating arg functions in C++ mode
1442         2016-11-13 strftime: don't use __THROW
1443         2016-11-12 strftime: tune %q
1444         2016-11-12 Merge strftime.c changes from glibc
1445         2016-11-09 manywarnings: fix -Wno-missing-field-initializers detection
1446         2016-11-05 strftime,strptime: support %q to represent the quarter
1448         The glibc changes in turn incorporate the following strftime.c changes:
1449         2015-10-20 Convert misc function definitions to prototype style
1450         2015-09-26 [BZ #18985] out of range data to strftime() causes segfault
1451         2010-01-09 Add support for XPG7 testing
1452         2009-10-30 Implement Burmese language locale for Myanmar
1453         2008-06-13 [BZ #6612] pass reference to tzset_called around
1454         2007-10-16 [BZ #5184] Add tzset_called argument
1456         * build-aux/snippet/c++defs.h, lib/strftime.c, lib/sys_time.in.h:
1457         * m4/manywarnings.m4: Copy from gnulib.
1459 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1461         Merge from origin/emacs-25
1463         07f45d7 ; Spelling fix
1464         1a210f0 * admin/release-process: Update versions and blocking bug num...
1465         36bafc9 Improve documentation of functions that accept time values
1467         # Conflicts:
1468         #       admin/release-process
1469         #       src/editfns.c
1471 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1473         Merge from origin/emacs-25
1475         4af5981 Add a comment in generated refcards about the source
1476         ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
1477         4887e7c js-mode: Fix indent problem after a regexp
1478         e992ac0 Fix sluggish display of symbols in UTF-8 language environment
1479         1fc101b Don't confuse how Texinfo outputs @var with the input
1480         91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
1481         f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
1482         5b0cddd More fixes in copyright notices in etc/refcards/
1483         f994c20 Update copyright text in refcards
1484         9ad2ae7 Fix Outline command names
1485         26c3554 Send text received by bracketed paste to process
1486         db0b58d Correct the statement about programming modes always running ...
1487         78aece4 Improve documentation of 'occur'
1488         eb364fd Do call debugger on failed cl-assert
1489         3ef4ee8 Avoid infloop in python
1490         8da810f Don't refer to obsolete FEATURE-unload-hook
1491         4f478ca Improve documentation of dabbrevs
1492         7272e5d * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
1493         89b7482 * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
1494         3b199f7 Improve documentation of some Help commands
1495         93d3a0e Fix documentation of yes-or-no prompts
1496         af04919 Fix documentation of partial completion style
1497         ed80184 Fix documentation of the mode line on emacsclient frames
1498         e6be855 Fix description of 'C-z' in User manual
1499         16f7007 Improve and clarify documentation of Outline Mode
1500         31d93aa Add Emacs version number to nt/README.W32
1501         0b6b815 Fix python-mode hideshow regexp
1502         dc152c5 Modernize usage of 'macOS' in doc and comments
1503         84c5343 Prefer comments /* like this */ in C code
1504         bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
1505         3ef86fd Clarify documentation of face attribute functions
1506         de51d59 ; * nt/README.W32: Minor copyedits.
1507         db436e9 Don't call debug on failed cl-assert
1509         # Conflicts:
1510         #       doc/emacs/cmdargs.texi
1511         #       etc/NEWS
1512         #       etc/PROBLEMS
1513         #       lisp/auth-source.el
1514         #       lisp/net/tramp-sh.el
1516 2016-11-19  Mark Oteiza  <mvoteiza@udel.edu>
1518         Port RefTeX to cl-lib
1520         * lisp/textmodes/reftex-auc.el:
1521         * lisp/textmodes/reftex-cite.el: Use cl-lib.
1522         (reftex-do-citation, reftex-create-bibtex-file): Substitute cl-lib
1523         macros.
1524         * lisp/textmodes/reftex-dcr.el: Use cl-lib.
1525         (reftex-view-regexp-match): Substitute cl-lib macro.
1526         * lisp/textmodes/reftex-global.el: Use cl-lib.
1527         (reftex-find-duplicate-labels, reftex-renumber-simple-labels):
1528         (reftex-translate): Substitute cl-lib macros.
1529         * lisp/textmodes/reftex-index.el: Use cl-lib.
1530         (reftex-index, reftex-index-select-tag, reftex-index-mode-map):
1531         (reftex-index-next-phrase, reftex-index-phrases-info):
1532         (reftex-query-index-phrase): Substitute cl-lib macros.
1533         * lisp/textmodes/reftex-parse.el: Use cl-lib.
1534         (reftex-parse-from-file, reftex-where-am-I, reftex-what-macro):
1535         (reftex-nth-arg, reftex-init-section-numbers, reftex-section-number):
1536         Substitute cl-lib macros.
1537         * lisp/textmodes/reftex-ref.el: Use cl-lib.
1538         (reftex-uniquify-label, reftex-offer-label-menu): Substitute cl-lib
1539         macros.
1540         * lisp/textmodes/reftex-sel.el: Use cl-lib.
1541         (reftex-select-shared-map): Set keymap parent to special-mode-map.
1542         Flatten loop and remove digits and hyphen definitions from the map.
1543         (reftex-select-label-mode-map):
1544         (reftex-select-bib-mode-map): Use cl-lib macro, and flatten other loop.
1545         (reftex-insert-docstruct, reftex-select-unmark): Use cl-lib macros.
1546         * lisp/textmodes/reftex-vars.el (reftex-vref-is-default): Use
1547         cl-pushnew.
1548         * lisp/textmodes/reftex.el: Use cl-lib.
1549         (reftex-docstruct-symbol): Use cl-incf.
1550         (reftex-ref-style-toggle): Replace add-to-list with append.
1551         (reftex-compile-variables): Use cl-lib macros, and functions with
1552         compiler macros. cl-first is just an alias.
1553         (reftex-parse-args, reftex-scanning-info-available-p):
1554         (reftex-select-external-document, reftex-get-file-buffer-force): Use
1555         cl-lib macros.
1556         (reftex-isearch-minor-mode): Replace add-to-list with append.
1558 2016-11-19  Tino Calancha  <tino.calancha@gmail.com>
1560         ibuffer-exchange-filters: Simplify code
1562         * lisp/ibuf-ext.el (ibuffer-exchange-filters): Use cl-rotatef.
1564 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
1566         Implement getrlimit and setrlimit for MS-Windows
1568         * src/w32heap.c (getrlimit, setrlimit): New functions.
1569         Include w32.h.
1570         * src/emacs.c (main): Use 'rlim_t', not 'long', for values that
1571         should be compatible with 'struct rlimit' members.
1573         * nt/inc/sys/resource.h: New header file.
1575         * nt/mingw-cfg.site (ac_cv_func_getrlimit, ac_cv_func_setrlimit):
1576         Set to "yes".
1578 2016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1580         Move key mappings into reftex-mode-map defvar
1582         * lisp/textmodes/reftex.el (reftex-mode-map): Assimilate top-level
1583         key mappings.
1584         (reftex-reset-mode): Just use dolist.
1586 2016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1588         Derive reftex-index-mode from special-mode
1590         * lisp/textmodes/reftex-index.el (reftex-index-mode-map): Flatten
1591         loop.  Remove digit keys and hyphen, as reftex-index-mode is derived
1592         from special-mode now.
1593         (reftex-index-mode): Derive from special-mode.
1594         (reftex-index-phrases-mode-map): Flatten loop. Fix erroneous docstring.
1596 2016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1598         Clean up reftex-toc-mode-map
1600         * lisp/textmodes/reftex-toc.el: Remove cl.
1601         (reftex-toc-mode-map): Flatten loop.  Remove mapping digit keys and
1602         hyphen, as reftex-toc-mode is derived from special-mode nowadays.
1604 2016-11-18  Philipp Stephani  <phst@google.com>
1606         Prevent dubious argument lists
1608         See Bug#24912 and Bug#24913.
1610         * src/eval.c (funcall_lambda): Detect more dubious argument lists.
1611         * lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list): Detect
1612         more dubious argument lists.
1613         * test/src/eval-tests.el (eval-tests--bugs-24912-and-24913): Add unit
1614         test.
1616 2016-11-18  Tino Calancha  <tino.calancha@gmail.com>
1618         Add test suite for buff-menu.el
1620         * test/lisp/buff-menu-tests.el: New file.
1621         (buff-menu-24962): Add test for Bug#24962.
1623 2016-11-18  Wojciech Gac  <wojciech.s.gac@gmail.com>  (tiny change)
1625         Add cyrillic-tuvan input method
1627         * lisp/leim/quail/cyrillic.el ("cyrillic-tuvan"): New input
1628         method.  (Bug#24942)
1630         * etc/NEWS: Mention addition of 'cyrillic-tuvan' input method.
1632 2016-11-18  Alex  <agrambot@gmail.com>
1634         Extend 'indent-relative' when its arg is non-nil
1636         * lisp/indent.el (indent-relative-maybe): New obsolete alias.
1637         (indent-relative-first-indent-point): Renamed from
1638         'indent-relative-maybe'.
1639         (indent-relative): Now accepts an additional optional argument.
1640         The first argument was renamed to FIRST-ONLY.  Doc fix.  Support
1641         the additional arg.  (Bug#24766)
1643 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
1645         Add example for bug#24854
1647         * test/manual/indent/js.js: Add example for bug#24854.
1649 2016-11-17  Mark Oteiza  <mvoteiza@udel.edu>
1651         Port registry.el the rest of the way to cl-lib
1653         This file already is using cl-lib functions at runtime; eieio ultimately
1654         loads cl-lib, which explains why doing so wasn't an issue.
1655         * lisp/registry.el: Require cl-lib.
1656         (registry-db, registry--match, registry-search, registry-delete):
1657         (registry-insert, registry-reindex): Replace cl macros with cl-lib ones.
1658         (registry-collect-prune-candidates): Replace cl function with cl-lib one.
1660 2016-11-17  Mark Oteiza  <mvoteiza@udel.edu>
1662         Fix arglist in python.el (Bug#24762)
1664         * lisp/progmodes/python.el: Remove unneeded second args.
1665         (python-define-auxiliary-skeleton): DOC arg should be &optional.
1667 2016-11-17  Simen Heggestøyl  <simenheg@gmail.com>
1669         Add tests for rot13.el
1671         * lisp/rot13.el (rot13): Docstring correction.
1673         * test/lisp/rot13-tests.el: New file with tests for rot13.el.
1675 2016-11-17  Michael Albinus  <michael.albinus@gmx.de>
1677         Fix Bug#24947 (Tramp + ido)
1679         * lisp/ido.el (ido-read-internal): Prevent eager Tramp connection.
1681         * lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
1682         Run remote tests only if a connection is established only.  (Bug#24947)
1684 2016-11-16  Ken Brown  <kbrown@cornell.edu>
1686         Unbreak the build on Darwin (Bug#24957)
1688         * src/fileio.c (file_name_case_insensitive_p) [DARWIN_OS]: Fix
1689         mistakes in recent commit.
1691 2016-11-16  Nicolas Petton  <nicolas@petton.fr>
1693         Do not use map.el in seq-tests.el
1695         * test/lisp/emacs-lisp/seq-tests.el: Do not use map.el.  map.el was
1696         introduced in Emacs 25.1, but seq.el is also available in GNU ELPA for
1697         Emacs 24.5.
1699 2016-11-16  Tino Calancha  <tino.calancha@gmail.com>
1701         Update parameter :version to 26.1 in several defcustom
1703         Following defcustom where added or modified for 25.2 release.
1704         In fact all these changes belong to 26.1 release.
1705         * lisp/battery.el (battery-linux-sysfs-regexp)
1706         * lisp/comint.el (comint-password-prompt-regexp)
1707         * lisp/dired.el (dired-always-read-filesystem)
1708         * lisp/image.el (image-scaling-factor)
1709         * lisp/ibuf-ext.el (ibuffer-never-search-content-name)
1710         (ibuffer-never-search-content-mode)
1711         * lisp/mouse.el (mouse-select-region-move-to-beginning)
1712         * lisp/net/net-utils.el (iwconfig-program, iwconfig-program-options)
1713         (netstat-program, route-program, route-program-options)
1714         * lisp/net/sieve-manage.el (sieve-manage-default-stream)
1715         * lisp/progmodes/grep.el (grep-save-buffers)
1716         * lisp/vc/add-log.el (change-log-directory-files)
1717         * lisp/url/url-vars.el (url-user-agent)
1718         * lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles)
1719         (vc-hg-use-file-version-for-mode-line-version)
1720         (vc-hg-parse-hg-data-structures)
1721         * lisp/wdired.el (wdired-create-parent-directories)
1722         * lisp/faces.el (homoglyph, nobreak-hyphen, read-multiple-choice-face)
1723         * lisp/gnus/gnus-art.el (gnus-article-encrypt-protocol)
1724         (gnus-button-url-regexp)
1725         * lisp/window.el (switch-to-buffer-preserve-window-point)
1726         * lisp/ibuffer.el (ibuffer-formats, ibuffer-locked-char)
1727         (ibuffer-locked-buffer)
1728         * lisp/textmodes/flyspell.el (flyspell-sort-corrections-function)
1729         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break)
1730         * lisp/gnus/message.el (message-user-fqdn)
1731         * lisp/simple.el (shell-command-dont-erase-buffer)
1732         (extended-command-suggest-shorter)
1733         * lisp/net/shr.el (shr-use-fonts)
1734         * lisp/files.el (mounted-file-systems, kill-emacs-query-functions)
1736 2016-11-15  Glenn Morris  <rgm@gnu.org>
1738         Add --new-daemon, which runs in the foreground and does not fork
1740         This is intended for modern init systems such as systemd,
1741         which manage many of the traditional aspects of daemon behavior
1742         themselves.  (Bug#2677)
1743         * src/emacs.c (daemon_type): New integer.
1744         (usage, standard_args): Add --old-daemon and --new-daemon.
1745         (main): Handle --old-daemon and --new-daemon arguments.
1746         Restrict all the forking and complicated daemon stuff to old-daemon.
1747         (Fdaemon_initialized): Handle new-style daemon.
1748         * src/lisp.h (IS_DAEMON, DAEMON_RUNNING) [!WINDOWNT]:
1749         Replace daemon_pipe with daemon_type.
1750         * doc/emacs/cmdargs.texi (Initial Options):
1751         * doc/emacs/glossary.texi (Glossary):
1752         * doc/emacs/misc.texi (Emacs Server):
1753         * doc/lispref/display.texi (Window Systems):
1754         * doc/lispref/os.texi (Startup Summary): Related doc updates.
1755         * etc/NEWS: Mention this.
1756         * etc/emacs.service: Use Type=simple and --new-daemon.
1758 2016-11-15  Glenn Morris  <rgm@gnu.org>
1760         * src/emacs.c (usage_message): Mention named daemon.  (Bug#24949)
1761         * doc/man/emacs.1.in: Likewise.
1763 2016-11-15  Ken Brown  <kbrown@cornell.edu>
1765         Simplify case-insensitivity checks on Mac OS X
1767         * src/fileio.c (file_name_case_insensitive_p): Try skipping the
1768         Darwin code and instead using pathconf with _PC_CASE_SENSITIVE.
1769         Leave in two alternatives conditionally compiled based on
1770         DARWIN_OS_CASE_SENSITIVE_FIXME in case pathconf doesn't work.
1772         * etc/PROBLEMS: Mention the possible problem with pathconf on
1773         Mac OS X.
1775 2016-11-15  Glenn Morris  <rgm@gnu.org>
1777         * src/emacs.c (sort_args): Warn about multiple matches.
1779 2016-11-15  Michael Albinus  <michael.albinus@gmx.de>
1781         Implement file name handler for `file-name-case-insensitive-p'
1783         * doc/lispref/files.texi (Truenames): `file-name-case-insensitive-p'
1784         is also applicable for remote hosts.
1786         * lisp/net/tramp.el (tramp-methods): Improve docstring.
1787         (tramp-file-name-for-operation): Add `file-name-case-insensitive-p'.
1788         (tramp-handle-file-name-case-insensitive-p): New defun.
1790         * lisp/net/tramp-smb.el (tramp-methods) <smb>:
1791         Add `tramp-case-insensitive' entry.
1793         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
1794         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
1795         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
1796         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
1797         <file-name-case-insensitive-p>: Add handler.  (Bug#22300, Bug#24441)
1799 2016-11-15  Mark Oteiza  <mvoteiza@udel.edu>
1801         Nix more uses of default-FOO variables (Bug#24946)
1803         * lisp/cedet/semantic/util-modes.el (semantic-stickyfunc-mode):
1804         Check for header-line-format instead.
1805         * lisp/emulation/viper.el (viper-load-custom-file): Reference
1806         major-mode instead.
1807         * lisp-mail-feedmail.el (feedmail-fill-to-cc-fill-column): Use
1808         fill-column instead.
1810 2016-11-15  Simen Heggestøyl  <simenheg@gmail.com>
1812         Complete the name of PostgreSQL databases
1814         * lisp/progmodes/sql.el (sql-postgres-login-params): Complete database
1815         name.
1816         (sql-postgres-list-databases): New function returning a list of
1817         available PostgreSQL databases.
1819         * test/lisp/progmodes/sql-tests.el: New file with tests for sql.el.
1821 2016-11-14  Sam Steingold  <sds@gnu.org>
1823         add `vc-git-print-log-follow' and use it in `vc-git-print-log'
1825         When `vc-git-print-log-follow' is true and all files are
1826         non-directory, pass "--follow" to "git log".
1827         This works around bug#8756 and bug#16422.
1829 2016-11-14  Sam Steingold  <sds@gnu.org>
1831         `toggle-truncate-lines' obsoletes `gnus-summary-toggle-truncation'
1833         vc-git-print-log: pass "--follow" to "log" to handle renamed files
1835 2016-11-14  Eli Zaretskii  <eliz@gnu.org>
1837         Revert "Improve case-insensitive checks (Bug#24441)"
1839         This reverts commit 2f5e0b1bf7b0ac4f450847db34d599a072020600.
1840         I see no reason for removing code, documentation, and comments
1841         in the original commit.
1843 2016-11-14  Wilson Snyder  <wsnyder@wsnyder.org>
1845         Update verilog-mode.el
1847         * verilog-mode.el (verilog-read-decls, verilog-calc-1): Fix
1848         "default clocking" indentation and preventing AUTOs from working,
1849         bug1084.  Reported by Alan Morgan.
1850         (verilog-diff-report): Fix `verilog-diff-report'
1851         not returning bad status on differences, bug1087.  Reported by
1852         Eric Jackowski.
1853         (verilog-auto-inst-param-value)
1854         (verilog-auto-inst-param-value-type, verilog-read-sub-decls)
1855         (verilog-read-sub-decls-expr, verilog-read-sub-decls-gate)
1856         (verilog-read-sub-decls-line, verilog-read-sub-decls-sig)
1857         (verilog-read-sub-decls-type): When
1858         `verilog-auto-inst-param-value-type' is set, which is now the
1859         default, AUTOINPUT etc will now substitute parameter types from
1860         submodules, bug1061.  Reported by Brad Dobbie.
1861         (verilog-auto-reset, verilog-backward-case-item)
1862         (verilog-extended-case-re, verilog-read-always-signals-recurse):
1863         Fix indentation of randcase, bug1072. Reported by David Rogoff.
1864         (verilog-read-sub-decls-expr)
1865         (verilog-sig-multidim-string): Fix AUTOINST ordering of dimensions
1866         in generated comments, bug1057. Reported by Kaushal Modi.
1867         (verilog-auto-wire-comment, verilog-insert-definition):
1868         Add `verilog-auto-wire-comment' to suppress wire comments. Reported by
1869         Eric Jackowski.
1870         (verilog-extended-complete-re): Fix indentation
1871         of class static functions, bug1053. Reported by Gregory
1872         Czajkowski.
1873         (verilog-module-filenames): Support tramp for
1874         finding verilog modules. Reported by Nevada Sanchez.
1876 2016-11-14  Paul Eggert  <eggert@cs.ucla.edu>
1878         Improve case-insensitive checks (Bug#24441)
1880         * doc/lispref/files.texi (Truenames): Simplify documentation,
1881         to avoid giving too much platform-specific information that
1882         may not be accurate anyway.
1883         * src/fileio.c (file_name_case_insensitive_p): Use pathconf with
1884         _PC_CASE_SENSITIVE if _PC_CASE_INSENSITIVE is not available.
1885         Otherwise if one approach fails (e.g., with errno == EINVAL), fall
1886         back on an alternative rather than returning false.  Try skipping
1887         the Darwin code, as it (1) no longer seems to be needed and (2)
1888         does not seem to match the Apple documentation.  Leave in two
1889         alternatives conditionally compiled based on
1890         DARWIN_OS_CASE_SENSITIVE_FIXME in case (1) or (2) is incorrect.
1892 2016-11-14  Eli Zaretskii  <eliz@gnu.org>
1894         Fix documentation changes of connection-local variables
1896         * etc/NEWS: Fix last change.
1897         * doc/lispref/variables.texi (Connection Local Variables): Minor fixes.
1898         * doc/lispref/elisp.texi (Top): Update the master menu.
1900 2016-11-14  Michael Albinus  <michael.albinus@gmx.de>
1902         Implement connection-local variables
1904         * doc/lispref/variables.texi (Connection Local Variables): New section.
1906         * etc/NEWS: Mention connection-local variables.
1908         * lisp/files-x.el (enable-connection-local-variables)
1909         (connection-local-variables-alist, connection-local-class-alist)
1910         (connection-local-criteria-alist): New defvars.
1911         (connection-local-get-classes)
1912         (connection-local-get-class-variables): New defsubst.
1913         (connection-local-set-classes)
1914         (connection-local-set-class-variables)
1915         (hack-connection-local-variables)
1916         (hack-connection-local-variables-apply): New defuns.
1917         (with-connection-local-classes): New defmacro.
1919         * lisp/net/tramp.el (tramp-set-connection-local-variables): New defun.
1921         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
1922         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
1923         * lisp/net/lisp/net/tramp-sh.el (tramp-maybe-open-connection):
1924         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use it.
1926         * test/lisp/files-x-tests.el: New file.
1928 2016-11-14  Tino Calancha  <tino.calancha@gmail.com>
1930         tabulated-list: extend truncation into next align-right column
1932         See discussion on:
1933         https://lists.gnu.org/archive/html/emacs-devel/2016-10/msg01101.html
1934         * lisp/emacs-lisp/tabulated-list.el
1935         (tabulated-list--near-rows): New variable.
1936         (tabulated-list-print, tabulated-list-set-col): Use it.
1937         (tabulated-list--col-local-max-widths): New defsubst.
1938         (tabulated-list-print-col): Use it.  If the next column is
1939         align-right, and has some space left then don't truncate to width,
1940         use some of the available space from the next column.
1942 2016-11-13  Katsumi Yamaoka  <yamaoka@jpl.org>
1944         * lisp/net/shr.el (shr-collect-extra-strings-in-table): Fix indentation.
1946         * lisp/net/shr.el (shr-tag-table): Avoid duplication of images.
1947         (shr-collect-extra-strings-in-table): Render images as well.
1949 2016-11-13  Ken Brown  <kbrown@cornell.edu>
1951         Use the new 'file-name-case-insensitive-p' function
1953         * lisp/international/mule.el (auto-coding-alist-lookup):
1954         * lisp/files.el (file-truename):
1955         (abbreviate-file-name, set-auto-mode, file-relative-name):
1956         * package.el (package-untar-buffer): Use
1957         'file-name-case-insensitive-p' instead of 'system-type' to test
1958         case-insensitivity.
1960 2016-11-13  Glenn Morris  <rgm@gnu.org>
1962         Include a systemd user unit file.  (Bug#16507)
1964         * etc/emacs.service: New file.
1965         * doc/emacs/misc.texi (Emacs Server): Mention systemcl --user.
1966         * Makefile.in (libdir): New, set by configure.
1967         (systemdunitdir): New variable.
1968         (install-etc, uninstall): Handle the emacs.service file.
1970 2016-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1972         Port --enable-gcc-warnings to Ubuntu 16.10
1974         * src/gmalloc.c: Include <stdlib.h>, so it declares
1975         hybrid_aligned_alloc (the definiens of the aligned_alloc macro),
1976         so that GCC doesn't complain that hybrid_aligned_alloc is
1977         defined without being declared.
1979 2016-11-13  Ken Brown  <kbrown@cornell.edu>
1981         Silence tramp warning
1983         * lisp/net/tramp.el (tramp-file-name-for-operation): Add
1984         'file-name-case-insensitive-p' as a known file primitive.
1985         (Bug#24936)
1987 2016-11-12  Ken Brown  <kbrown@cornell.edu>
1989         Check case-sensitivity when renaming files
1991         * src/fileio.c (file_name_case_insensitive_p)
1992         (Ffile_name_case_insensitive_p):  New functions.
1993         (Frename_file): Allow renames that simply change case when the
1994         FILE argument is on a case-insensitive filesystem.  (Bug#24441)
1996         * lisp/dired-aux.el (dired-do-create-files): Use
1997         'file-name-case-insensitive-p' instead of 'system-type' to check
1998         for case-insensitivity.  (Bug#24441)
2000         * doc/lispref/files.texi (Truenames): Document
2001         'file-name-case-insensitive-p'.
2003 2016-11-12  Ken Brown  <kbrown@cornell.edu>
2005         Unbreak the build on Cygwin
2007         * configure.ac (system_malloc) [CYGWIN]: Unset.
2009 2016-11-11  Mark Oteiza  <mvoteiza@udel.edu>
2011         Update chart.el
2013         * lisp/emacs-lisp/chart.el (chart-mode): Derive from special-mode.
2014         (chart-draw): Wrap in with-silent-modifications.  Instead of inserting a
2015         fixed number of newlines, use window-height.
2016         (chart-bar):
2017         (chart-trim): Use dolist.
2018         (chart-file-count): The previous implementation was buggy and missed
2019         extensions.  Use file-name-extension instead to detect file extensions.
2020         Also use dolist and cl-incf to reduce verbosity.
2022 2016-11-11  Katsumi Yamaoka  <yamaoka@jpl.org>
2024         * lisp/net/shr.el (shr--preferred-image): Add CR to whitespace regexps.
2025         (shr-collect-extra-strings-in-table):
2026         Render extra tables in an invalid html as well.
2028 2016-11-10  Katsumi Yamaoka  <yamaoka@jpl.org>
2030         * lisp/net/shr.el (shr--preferred-image): Ignore whitespace (bug#24893).
2032 2016-11-09  Eli Zaretskii  <eliz@gnu.org>
2034         Resurrect 'memory-limit' on MS-Windows
2036         * nt/mingw-cfg.site (ac_cv_func_sbrk): Set to "yes", otherwise
2037         'memory-limit' will produce a trivial and useless result on Windows.
2039 2016-11-09  Mark Oteiza  <mvoteiza@udel.edu>
2041         Update quickurl.el
2043         * lisp/net/quickurl.el (quickurl-format-function):
2044         (quickurl-sort-function): Use named function.
2045         (quickurl-list-mode-map): Remove lines that are extraneous now that the
2046         parent mode is special-mode.
2047         (quickurl-format-url, quickurl-sort-urls): New functions.
2048         (quickurl-read, quickurl): Use defun, as no cl-defun feature appears to
2049         be used.
2050         (quickurl-list-mode): Derive from special-mode.  Nix setting
2051         buffer-read-only: special-mode does that.
2052         (quickurl-list-populate-buffer): Use dolist instead.
2053         (quickurl-list-quit): Use quit-window.  It looks like this was written
2054         before the quit-window rewrite.  quit-window is very useful now.
2056 2016-11-09  Michael Albinus  <michael.albinus@gmx.de>
2058         Refine multi-hop specs in Tramp
2060         * lisp/net/tramp.el (tramp-tramp-file-p): Suppress "/:" and "/c:".
2062         * test/lisp/net/tramp-tests.el
2063         (tramp-test01-file-name-syntax): Multi-hop specs don't need a
2064         method.  "/h:" is allowed on non MS Windows.
2066 2016-11-08  Daniel Colascione  <dancol@dancol.org>
2068         Avoid infloop in python
2070         Fix bug#24905
2072         * lisp/progmodes/python.el (python-info-docstring-p): Improve
2073         infloop avoidance: replace (bobp) with generic test for
2074         forward progress.
2075         * test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid): Add
2076         test for bug#24905
2078 2016-11-08  Daniel Colascione  <dancol@dancol.org>
2080         Make gnus/message.el work correctly under lexical binding
2082         * lisp/gnus/message.el (message-send-mail): Rename `arg' to
2083         `_' to shut up the byte compiler.
2084         (sha1-maximum-internal-length, smtpmail-smtp-server)
2085         (smtpmail-smtp-service): add missing defvars
2087 2016-11-08  Michael Albinus  <michael.albinus@gmx.de>
2089         Fix Bug#24889
2091         * lisp/net/tramp.el (tramp-file-name-regexp): Make it a
2092         defvar.  Fix docstring.
2093         (tramp-completion-file-name-handler-alist): Fix docstring.
2094         (tramp-register-file-name-handlers): Reassign
2095         `tramp-file-name-regexp' to the car of
2096         `tramp-file-name-structure'.  (Bug#24889)
2098 2016-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2100         Port to FreeBSD 11 AMD
2102         Problem reported by Ashish Shukla (Bug#24892).  I tested
2103         this on FreeBSD 11 x86-64 with HAVE_SBRK manually undefined.
2104         * configure.ac (system_malloc): Set to 'yes' if there is no sbrk.
2105         (sbrk): Check whether it exists.
2106         * src/alloc.c (my_heap_start) [!GNU_LINUX]:
2107         Do not define, since this function is now used only on GNU/Linux,
2108         and sbrk might not exist on other platforms.
2109         (malloc_initialize_hook) [!GNU_LINUX]:
2110         Do not call my_heap_start, since its side effect will never be used.
2111         (Fmemory_limit) [!HAVE_SBRK]: Do not call sbrk.
2112         * src/unexelf.c (unexec) [!HAVE_SBRK]: Assume that nothing like
2113         sbrk exists.
2115 2016-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2117         Port emacsclient to FreeBSD 11 etc.
2119         * lib-src/emacsclient.c: Include <string.h>.  This is needed on
2120         platforms like FreeBSD 11 that use code involving strlen etc., and
2121         because <config.h> no longer includes string.h.
2123 2016-11-07  Mark Oteiza  <mvoteiza@udel.edu>
2125         Prescribe history for read-regexp in query-replace
2127         In the fix for bug#24580, the history argument for read-regexp was
2128         removed erroneously; read-regexp's history argument defaults to
2129         regexp-history, not minibuffer-history.
2130         * lisp/replace.el (query-replace-read-from): Tell read-regexp to use
2131         minibuffer-history.  Fixes bug#24873.
2133 2016-11-07  Mark Oteiza  <mvoteiza@udel.edu>
2135         Remove obsolete default-FOO variables
2137         * etc/NEWS: Indicate the removed variables.
2138         * lisp/emacs-lisp/edebug.el (edebug-outside-mark): Fix comment.
2139         * lisp/subr.el (default-mode-line-format, default-header-line-format):
2140         (default-line-spacing, default-abbrev-mode, default-ctl-arrow):
2141         (default-truncate-lines, default-left-margin, default-tab-width):
2142         (default-case-fold-search, default-left-margin-width):
2143         (default-right-margin-width, default-left-fringe-width):
2144         (default-right-fringe-width, default-fringes-outside-margins):
2145         (default-scroll-bar-width, default-vertical-scroll-bar):
2146         (default-indicate-empty-lines, default-indicate-buffer-boundaries):
2147         (default-fringe-indicator-alist, default-fringe-cursor-alist):
2148         (default-scroll-up-aggressively, default-scroll-down-aggressively):
2149         (default-fill-column, default-cursor-type):
2150         (default-cursor-in-non-selected-windows):
2151         (default-buffer-file-coding-system, default-major-mode):
2152         (default-enable-multibyte-characters): Remove obsolete declarations.
2153         * src/buffer.c (default-mode-line-format, default-header-line-format):
2154         (default-line-spacing, default-abbrev-mode, default-ctl-arrow):
2155         (default-truncate-lines, default-left-margin, default-tab-width):
2156         (default-case-fold-search, default-left-margin-width):
2157         (default-right-margin-width, default-left-fringe-width):
2158         (default-right-fringe-width, default-fringes-outside-margins):
2159         (default-scroll-bar-width, default-vertical-scroll-bar):
2160         (default-indicate-empty-lines, default-indicate-buffer-boundaries):
2161         (default-fringe-indicator-alist, default-fringe-cursor-alist):
2162         (default-scroll-up-aggressively, default-scroll-down-aggressively):
2163         (default-fill-column, default-cursor-type):
2164         (default-cursor-in-non-selected-windows):
2165         (default-buffer-file-coding-system, default-major-mode):
2166         (default-enable-multibyte-characters): Remove.
2167         * src/fileio.c (choose_write_coding_system): Fix comment.
2168         * src/lisp.h (DEFVAR_BUFFER_DEFAULTS): Remove.
2170 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
2172         Improve the tutorial
2174         * etc/tutorials/TUTORIAL: Minor copyedits.  (Bug#24890)
2175         * etc/tutorials/TUTORIAL.he: Follow suit.
2177 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
2179         Restore file descriptor limit in subprocesses
2181         Problem reported by Philipp Stephani (Bug#24869).
2182         * src/callproc.c (child_setup) [!DOS_NT]:
2183         Call restore_nofile_limit in the child.
2184         * src/process.c (nofile_limit) [HAVE_SETRLIMIT]: New static var.
2185         (restore_nofile_limit): New function.
2186         (init_process_emacs) [HAVE_SETRLIMIT]: Set the new var.
2188 2016-11-06  Mark Oteiza  <mvoteiza@udel.edu>
2190         Remove some subr.el functions obsoleted in 22.1
2192         * etc/NEWS: Document removed functions.  Also mention the "face"
2193         variables that have been removed recently.
2194         * lisp/subr.el (window-dot, set-window-dot, read-input, show-buffer):
2195         (eval-current-buffer, string-to-int, insert-string, makehash): Remove.
2197 2016-11-05  Paul Eggert  <eggert@cs.ucla.edu>
2199         Prefer comments /* like this */ in C code
2201 2016-11-05  Johan Bockgård  <bojohan@gnu.org>
2203         * lisp/subr.el (copy-tree): Handle vector in cdr. (Bug#24876)
2205 2016-11-05  Nick Terrell  <nickrterrell@gmail.com>  (tiny change)
2207         Support zstd compressed files
2209         * lisp/jka-cmpr-hook.el (jka-compr-compression-info-list): Add
2210         zstd compression info: <http://facebook.github.io/zstd/>.
2211         (jka-compr-mode-alist-additions): Handle .tzst suffix for zstd
2212         compressed tar archives.  (Bug#24853)
2214 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
2216         Enlarge DUMPED_HEAP_SIZE
2218         * src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64 || WIDE_EMACS_INT]:
2219         Enlarge to 21MB.  Reported by Richard Copley <rcopley@gmail.com>.
2221 2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
2223         Update from gnulib
2225         This incorporates:
2226         2016-11-03 intprops: port to older XL C
2227         * lib/intprops.h: Copy from gnulib.
2229 2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
2231         Merge from origin/emacs-25
2233         acae275 ; Spelling fixes
2234         d8fac73 Update README for precompiled windows Emacs.
2235         23570fd Clarify documentation of 'vc-responsible-backend' wrt symlinks
2236         f708cb2 Clarify doc string of 'transpose-sexps'
2237         cd05b1d Fix docstring of 'browse-url-firefox-new-window-is-tab'
2238         bdc89eb Improve documentation of 'font-lock-remove-keywords'
2239         4a0c590 Fix documentation of the command summary key
2240         0221b7a Mark relocation workarounds with REL_ALLOC
2242 2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
2244         Merge from origin/emacs-25
2246         dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
2247         91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
2248         9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
2249         9c247d2 Update category-table for Chinese characters
2250         43986d1 Inhibit buffer relocation during regex searches
2251         fee4cef Revert fixes to allocation of regex matching
2253 2016-11-04  Mark Oteiza  <mvoteiza@udel.edu>
2255         Fix references to long obsoleted functions/aliases
2257         * doc/lispintro/emacs-list-intro.texi (Miscellaneous):
2258         * doc/misc/cl.texi (Conditionals):
2259         * doc/misc/speedbar.texi (Major Display Modes): Use string-to-number,
2260         not string-to-int.
2261         * lisp/emulation/viper.el (viper-go-away): Use major-mode, not
2262         default-major-mode.
2263         * lisp/textmodes/reftex-toc.el (reftex-toc-visit-location): show-window
2264         here is not a function call, but shorten the binding names anyways.
2265         Also, use pop-to-buffer-same-window instead of switch-to-buffer cf
2266         Bug#22244.
2267         * lisp/textmodes/sgml-mode.el (html-tag-alist): Use read-string, not
2268         read-input.
2270 2016-11-04  Mark Oteiza  <mvoteiza@udel.edu>
2272         * lisp/emacs-lisp/pcase.el (pcase-dolist): Add a docstring.
2274 2016-11-04  Katsumi Yamaoka  <yamaoka@jpl.org>
2276         * lisp/net/shr.el (shr-collect-extra-strings-in-table) New function
2277         that gathers extra strings in an invalid html.  (bug#24831)
2278         (shr-tag-table): Use it.
2280 2016-11-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>
2282         Add 'x-ctrl-keysym' support on X window system
2284         * src/xterm.c (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers):
2285         Support 'x-ctrl-keysym'.
2286         (syms_of_xterm): DEFSYM "ctrl" and put a proper modifier-value
2287         property on it.
2288         <x-ctrl-keysym>: New DEFVAR_LISP.
2289         <x-alt-keysym, x-hyper-keysym, x-meta-keysym, x-super-keysym>: Doc
2290         fix.  (Bug#24822)
2292         * etc/NEWS: Mention the addition of 'x-ctrl-keysym'.
2294         * doc/lispref/os.texi (X11 Keysyms): Document 'x-ctrl-keysym'.
2296 2016-11-04  Alexander Gramiak  <agrambot@gmail.com>
2298         Improve autoload error reporting
2300         * src/eval.c (Fautoload_do_load): Include the absolute file name
2301         in the error message.
2303 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2305         Stop force parameter of whitespace-report-region having global effect
2307         * lisp/whitespace.el (whitespace-report-region): Force parameter
2308         previously changed whitespace-style globally.  Fix this, and use
2309         whitespace-active-style, to take account of any changes the user may
2310         have made.  Simplify the documentation: the force parameter simply
2311         forces all classes of whitespace problem to be considered.
2312         (Bug#24745)
2314 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2316         Document use of `tab-width'
2318         * lisp/whitespace.el: When talking about `8 or more spaces', mention
2319         `tab-width' instead of 8.  (Bug#24745)
2321 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2323         Make whitespace-report-region respect current settings
2325         * lisp/whitespace.el (whitespace-report-region): Make it respect
2326         whitespace-style, including any additions made by the force parameter.
2327         This means that the function does not return t unless a whitespace
2328         problem that the user cares about is reported.  (Bug#24745)
2330 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2332         Fix whitespace-space-after-tab-regexp
2334         * lisp/whitespace.el (whitespace-space-after-tab-regexp)
2335         (whitespace-regexp): Match all the spaces after tabs for highlighting,
2336         not just the first tab-width.  Fix whitespace-space-after-tab::space
2337         version so that it requires at least tab-width spaces, not just 1.
2338         (Bug#24745)
2340 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2342         Remove duplicate documentation
2344         * lisp/whitespace.el: Remove duplicate documentation from the Commentary
2345           section which duplicate and in some places contradict (due to being
2346           out of date) the docstrings (Bug#24745).
2348 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2350         Fix bob/eob checks
2352         * lisp/whitespace.el (whitespace-empty-at-bob-regexp)
2353         (whitespace-empty-at-eob-regexp, whitespace-cleanup): Make `empty' checks
2354         work at beginning & end of buffer in whitespace-report-region, and only
2355         there (i.e. they will never match in regions that don't include the
2356         start or end of the buffer).  (Bug#24745)
2358 2016-11-03  Tino Calancha  <tino.calancha@gmail.com>
2360         (thing-at-point 'list) return nil if no list at point
2362         * lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point):
2363         Check first if we are at the beginning of a top-level sexp (Bug#24627).
2364         If point is inside a comment or string, look for a list out of the
2365         comment/string.
2366         Escape '[' in doc string.
2367         * test/lisp/thingatpt-tests.el (thing-at-point-bug24627): Update
2368         expected test result as pass.
2370 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2372         Remove antlr face aliases obsoleted in 22.1
2374         * lisp/progmodes/antlr-mode.el: Remove obsolete aliases
2375         (antlr-default-face, antlr-keyword-face, antlr-syntax-face):
2376         (antlr-ruledef-face, antlr-tokendef-face, antlr-ruleref-face):
2377         (antlr-tokenref-face, antlr-literal-face):
2378         (antlr-literal-face): Remove.
2379         (antlr-font-lock-additional-keywords): Use face symbols instead.
2381 2016-11-02  Daniel Colascione  <dancol@dancol.org>
2383         Revert "Disable bracketed paste in a terminal in char mode"
2385         This change causes regressions, and besides, disabling BPM frame-wide
2386         for the sake of one buffer is the wrong solution.
2388         This reverts commit cf566b46a6cf85c6d54d0b0db80e32ed6ae8d1ca.
2390 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2392         Revert change to eww-suggest-uris
2394         The introduced append is ugly and can yield '(nil); doing delq on it
2395         would be hacks on hacks.
2396         * lisp/net/eww.el: Require cl-lib at run time.
2397         (eww-suggest-uris): Restore eww-current-url, reverting previous change.
2398         (eww): Remove erroneous append.
2399         (eww-open-in-new-buffer): Check if the return from eww-suggested-uris is
2400         equal to eww-current-url, which is nil anyways if we are not in an EWW
2401         buffer.
2403 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2405         Add eww-open-in-new-buffer to EWW
2407         * doc/misc/eww.texi (Basic): Document new command and key.
2408         * etc/NEWS: Mention new key and its purpose.
2409         * lisp/net/eww.el (eww-suggest-uris): Remove eww-current-url.
2410         (eww): Append (eww-current-url) to the prompt defaults.
2411         (eww-open-in-new-buffer): New command.
2412         (eww-mode-map): Bind it and add a menu item.
2414 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2416         Migrate auth-source to cl-lib
2418         * lisp/auth-source.el: Use cl-lib.
2419         (auth-source-read-char-choice, auth-source-backend-parse-parameters):
2420         (auth-source-search): Replace cl calls with cl-lib ones.
2421         (auth-source-netrc-cache):
2422         (auth-source-forget+): Use cl-do-symbols instead.
2423         (auth-source-specmatchp, auth-source-netrc-parse):
2424         (auth-source-netrc-search, auth-source-netrc-create):
2425         (auth-source-netrc-saver, auth-source-secrets-listify-pattern):
2426         (auth-source-secrets-search, auth-source-secrets-create):
2427         (auth-source-macos-keychain-search, auth-source--decode-octal-string):
2428         (auth-source-macos-keychain-search-items, auth-source-plstore-search):
2429         (auth-source-plstore-create): Replace cl calls with cl-lib ones.
2431 2016-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
2433         Don't segfault on timed-out TLS connections
2435         * src/process.c (finish_after_tls_connection): Check that the
2436         file descriptor is still alive before proceeding (bug#24811).
2437         Also clean up the code slightly.
2439 2016-11-01  Eli Zaretskii  <eliz@gnu.org>
2441         Support 'TARGETS' in clipboard selections on MS-Windows
2443         * src/w32select.c (Fw32_selection_targets): New function.
2445         * lisp/term/w32-win.el (w32--get-selection): Call
2446         'w32-selection-targets' to obtain the list of data formats
2447         available in the clipboard.
2449 2016-11-01  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2451         Fix documentation for 'eudc-options-file'
2453         * doc/misc/eudc.texi (The Server Hotlist): Update the default
2454         value of 'eudc-options-file'.
2456 2016-11-01  Tibor Csögör  <tibi@tiborius.net>
2458         Fix documentation of 'eudc-inline-expansion-format'
2460         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
2461         'eudc-inline-expansion-format'. (Bug#24840)
2463 2016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
2465         Turn on lexical-binding in some more libs
2467         * lisp/calendar/icalendar.el:
2468         * lisp/emacs-lisp/regexp-opt.el:
2469         * lisp/emacs-lisp/timer.el:
2470         * lisp/gnus/message.el:
2471         * lisp/hex-util.el: Turn on lexical-binding.
2473 2016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
2475         Turn on lexical-binding in some net libs
2477         * lisp/net/dbus.el: Turn on lexical-binding.
2478         (dbus-list-hash-table, dbus-list-known-names):
2479         (dbus-introspect-get-node-names, dbus-introspect-get-interface-names):
2480         (dbus-introspect-get-method-names, dbus-introspect-get-signal-names):
2481         (dbus-introspect-get-property-names):
2482         (dbus-introspect-get-argument-names, dbus-get-all-properties):
2483         (dbus-property-handler, dbus-get-all-managed-objects):
2484         (dbus-managed-object-handler): Replace add-to-list with push. Add
2485         nreverse in some places where the APPEND argument of add-to-list was
2486         used.
2487         * lisp/net/network-stream.el: Turn on lexical-binding.
2488         * lisp/net/newsticker.el: Turn on lexical-binding.
2489         * lisp/net/shr.el: Turn on lexical-binding.
2490         (shr-make-placeholder-image): Remove unused variable binding.
2491         (shr-inspect-table): Replace ignored bindings with underscore.
2493 2016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
2495         Turn on lexical-binding in some url libs
2497         * lisp/url/url-auth.el:
2498         * lisp/url/url-expand.el:
2499         * lisp/url/url-future.el:
2500         * lisp/url/url-parse.el:
2501         * lisp/url/url-util.el: Turn on lexical-binding.
2503 2016-10-31  Johan Bockgård  <bojohan@gnu.org>
2505         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet): Fix debug spec
2507         (Bug#24733)
2509 2016-10-30  Alan Mackenzie  <acm@muc.de>
2511         Handle chars of syntax word which are also flagged as comment delimiters
2513         src/syntax.c (scan_sexps_forward): When chars of syntax word are also flagged
2514         as the start/end of two char comment delimiters, recognize a comment delimiter
2515         in preference to a portion of a word.  This fixes bug #24767.
2517 2016-10-29  Daniel Colascione  <dancol@dancol.org>
2519         Speed up initialization by preferring /dev/urandom to GnuTLS
2521         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
2523 2016-10-29  José L. Doménech  <domenechjosel@gmail.com>
2525         Quote file names in dired compression commands
2527         * lisp/dired-aux.el (dired-do-compress-to): Change the string
2528         used as shell command for compression by quoting the filenames
2529         used for input and output (Bug #24620).
2531 2016-10-29  Eli Zaretskii  <eliz@gnu.org>
2533         Avoid errors in posn-at-point for large images
2535         * src/keyboard.c (Fposn_at_point): If pos-visible-in-window-p
2536         returns a 6-member list for a partially visible glyph, pass the
2537         sum of Y and RTOP to posn-at-x-y, since that's where the visible
2538         portion of that glyph begins on display.  (Bug#24804)  (Bug#21832)
2539         (Bug#23809)
2541 2016-10-29  Eli Zaretskii  <eliz@gnu.org>
2543         Unbreak MS-Windows build
2545         * src/w32term.c (XCreateGC): Second argument is now HWND, and its
2546         name is "wignore".
2547         (x_set_cursor_gc, x_set_mouse_face_gc)
2548         (x_draw_glyph_string_background, x_draw_glyph_string_bg_rect)
2549         (x_draw_image_glyph_string, x_draw_stretch_glyph_string): Don't
2550         use s->window, which doesn't exist anymore.
2552         * src/w32term.h (XCreateGC): Adjust prototype.
2554 2016-10-28  Daniel Colascione  <dancol@dancol.org>
2556         Add double-buffering support to reduce flicker
2558         * src/dispextern.h (struct glyph_string): Remove window member
2559         (block_buffer_flips, unblock_buffer_flips)
2560         (buffer_flipping_blocked_p): Declare.
2562         * src/xterm.h (struct x_display_info): New member supports_xdbe.
2563         (struct x_output): New members draw_desc and need_buffer_flip.
2564         (FRAME_X_DRAWABLE, FRAME_X_RAW_DRAWABLE)
2565         (FRAME_X_DOUBLE_BUFFERED_P)
2566         (FRAME_X_NEED_BUFFER_FLIP): New macros.
2567         (set_up_x_back_buffer, tear_down_x_back_buffer)
2568         (initial_set_up_x_back_buffer): Declare.
2570         * src/xterm.c: Include Xdbe.h.
2571         (x_begin_cr_clip, x_fill_rectangle, x_draw_rectangle)
2572         (x_draw_vertical_window_border, x_update_end)
2573         (x_setup_relief_color, x_draw_relief_rect)
2574         (x_draw_fringe_bitmap, x_shift_glyphs_for_insert)
2575         (x_scroll_run, x_draw_hollow_cursor, x_draw_bar_cursor): Use
2576         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
2577         variables appropriately; substitute calls to XClearArea with
2578         x_clear_area, which DTRT for double buffering.
2579         (x_clear_window, x_clear_area): In double-buffering mode, use
2580         rect-drawing X functions instead of XClearWindow and
2581         XClearArea, which always operate on the front buffer.
2582         (show_back_buffer): New function.
2583         (XTframe_up_to_date): Call show_back_buffer when done.
2584         (x_clear_frame, x_clear_frame_area): Remove obsolete calls to
2585         gtk_widget_queue_draw to refresh scroll bars; scroll bars are
2586         now independent X windows.
2587         (handle_one_xevent): Call font_drop_xrender_surfaces when
2588         XftDraw might need regenerating; perform buffer flip when
2589         responding to Expose events; issue front-buffer clearing
2590         commands as stopgap while we wait for redisplay.
2591         Call flush_dirty_back_buffers.
2592         (x_make_frame_visible): Un-bitrot comment; move XSETFRAME
2593         earlier in function.
2594         (x_free_frame_resources): Call tear_down_x_back_buffer when
2595         destroying frame.
2596         (x_term_init): Attempt to initialize double buffer extension.
2597         (x_flip_and_flush): New function.
2598         (x_redisplay_interface): Point to x_flip_and_flush instead of
2599         x_flip directly.
2600         (flush_dirty_back_buffers): New function.
2601         (x_create_terminal): Register buffer_flipping_unblocked_hook.
2603         * src/xftfont.c (xftfont_drop_xrender_surfaces): Use
2604         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
2605         (xftfont_draw): Call x_mark_frame_dirty.
2606         (xftfont_drop_xrender_surfaces): New function.
2607         (syms_of_xftfont): Register it.
2609         * src/xfont.c (xfont_draw): Use FRAME_X_DRAWABLE instead of
2610         FRAME_X_WINDOW.
2612         * src/xfns.c: Include Xdbe.h.
2613         (x_set_inhibit_double_buffering, set_up_x_back_buffer)
2614         (Fx_double_buffered_p): New functions.
2615         (x_window): Call initial_set_up_x_back_buffer.
2616         (x_make_gc): Use FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
2617         (Fx_create_frame): Configure `inhibit-double-buffering'
2618         frame parameter.
2619         (x_create_tip_frame): Call initial_set_up_x_back_buffer.
2620         (x_frame_parm_handlers): Register
2621         x_set_inhibit_double_buffering.
2622         (syms_of_xfns): Register Sx_double_buffered_p.
2623         (x_mark_frame_dirty): Define.
2625         * src/xfaces.c (x_create_gc): Use FRAME_X_DRAWABLE instead of
2626         FRAME_X_WINDOW.
2628         * src/xdisp.c (remember_mouse_glyph, init_glyph_string): Use
2629         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
2630         (redisplay_internal): Restart redisplay if a frame is garbaged
2631         during updating; explain why. Block buffer flips
2632         during redisplay.
2633         (redisplay_preserve_echo_area): Block buffer flip during call
2634         to redisplay_internal.
2635         (buffer_flip_blocked_depth): New variable.
2636         (block_buffer_flips, unblock_buffer_flips)
2637         (buffer_flipping_blocked_p): New functions.
2638         (init_glyph_string): Stop setting window member of struct
2639         glyph_string.
2641         * src/w32fns.c (w32_frame_parm_handlers): Add placeholder for
2642         x_set_inhibit_double_buffering.
2644         * src/termhooks.h (struct terminal): Add
2645         buffer_flipping_unblocked_hook.
2647         * src/nsfns.m (ns_frame_parm_handlers): Add placeholder for
2648         x_set_inhibit_double_buffering.
2650         * src/image.c (x_create_bitmap_from_data)
2651         (x_create_bitmap_from_file, x_create_x_image_and_pixmap)
2652         (Create_Pixmap_From_Bitmap_Data)
2653         (x_create_bitmap_from_xpm_data, xpm_load, gs_load): Use
2654         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
2655         variables appropriately.
2657         * src/gtkutil.c: Include Xdbe.h.
2658         (xg_get_widget_from_map): Forward declare.
2659         (xg_clear_under_internal_border): Remove obsolete calls to
2660         refresh scroll bars.
2661         (xg_create_frame_widgets): Call initial_set_up_x_back_buffer.
2662         (xg_free_frame_widgets): Call tear_down_x_back_buffer; reset
2663         FRAME_X_DRAWABLE as well as FRAME_X_WINDOW and for the
2664         same reason.
2665         (xg_set_background_color): Set scroll bar background colors.
2666         (xg_finish_scroll_bar_creation): New function with common
2667         logic of xg_create_scroll_bar, xg_create_horizontal_scroll_bar. Force
2668         scroll bars to be real X11 windows.
2669         (xg_create_scroll_bar, xg_create_horizontal_scroll_bar): Call
2670         xg_finish_scroll_bar_creation.
2671         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
2672         Remove obsolete calls to refresh scroll bars; fix comments.
2674         * src/ftxfont.c (ftxfont_get_gcs, ftxfont_draw_bitmap,
2675         (ftxfont_draw_background): Use FRAME_X_DRAWABLE instead of
2676         FRAME_X_WINDOW.
2678         * src/frame.c (frame_parms): Add table entry for new
2679         `inhibit-double-buffering' frame parameter
2680         (syms_of_frame): Register Qinhibit_double_buffering.
2682         * src/font.h (struct font_driver): Add new `flush_frame_caches' hook.
2683         (font_drop_xrender_surfaces): Declare.
2685         * src/font.c (font_drop_xrender_surfaces): New function.
2687         * src/Makefile.in (XDBE_LIBS, XDBE_CFLAGS): Substitute.
2689         * etc/NEWS: Mention use of double buffering
2691         * doc/lispref/frames.texi (Management Parameters): Document
2692         `inhibit-double-buffering' frame parameters.
2693         (Visibility of Frames): Document `x-double-buffered-p'.
2695         * configure.ac: Check for the X double buffer extension
2697 2016-10-28  Michael Albinus  <michael.albinus@gmx.de>
2699         Improve result of `auth-source-search' in Tramp
2701         * lisp/net/tramp.el (tramp-read-passwd): Require :secret and
2702         :user in result of `auth-source-search'.
2704 2016-10-27  Mark Oteiza  <mvoteiza@udel.edu>
2706         Fix avl-tree alias docstrings
2708         * lisp/emacs-lisp/avl-tree.el (avl-tree--node-branch):
2709         (avl-tree-stack-p, avl-tree-create):
2710         (avl-tree-compare-function): Add calling convention to docstrings.
2712 2016-10-27  Paul Eggert  <eggert@cs.ucla.edu>
2714         Update from gnulib
2716         This incorporates:
2717         2016-10-16 qsort_r: Fix macrology for platforms that lack the function.
2718         2016-10-13 stdint: port SIZE_MAX to glibc s390
2719         2016-10-11 maint: remove stray space after "." in AC_DEFINE comment.
2720         * lib/gnulib.mk: Regenerate.
2721         * lib/stdlib.in.h, m4/st_dm_mode.m4, m4/stdint.m4, m4/stdlib_h.m4:
2722         * m4/utimes.m4: Copy from gnulib.
2724 2016-10-27  Paul Eggert  <eggert@cs.ucla.edu>
2726         electric-quote-chars fixups
2728         * lisp/electric.el (electric-quote-chars): Check types and safety
2729         more carefully.
2730         (electric-quote-post-self-insert-function): Use more-mnemonic locals.
2731         Omit no-longer-necessary runtime error diagnostic.
2733 2016-10-27  Göktuğ Kayaalp  <self@gkayaalp.com>
2735         New user variable 'electric-quote-chars'
2737         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
2738         * lisp/electric.el (electric-quote-chars): New defcustom.
2739         (electric-quote-post-self-insert-function): Use it.
2741 2016-10-27  Tino Calancha  <tino.calancha@gmail.com>
2743         Add more tests for Bug#24627
2745         * test/lisp/thingatpt-tests.el (thing-at-point-bug24627):
2746         Add tests for 'list-at-point'.
2748 2016-10-26  Filipp Gunbin  <fgunbin@fastmail.fm>
2750         * lisp/shell.el (shell--unquote&requote-argument): Match data misuse
2752         * lisp/shell.el (shell--unquote&requote-argument): Fix
2753         off-by-one thinko.  Don't use match data after a failed string-match.
2755 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2757         * src/xwidget.c (webkit_js_to_lisp): Now static.
2759 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2761         xwidget: Map "previous-line" and "next-line" to scroll
2763         * lisp/xwidget.el: Map "previous-line" and "next-line" to scrolling
2764         procedures.
2766 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2768         xwidget: Bind "beginning-of-buffer" and "end-of-buffer"
2770         * lisp/xwidget.el: Rebind "beginning-of-buffer" and "end-of-buffer" to
2771         "xwidget-webkit-scroll-top" and "xwidget-webkit-scroll-bottom",
2772         respectively.
2773         (xwidget-webkit-scroll-top,
2774         xwidget-webkit-scroll-bottom): New procedures.
2776 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2778         Implement zoom for WebKit widget.
2780         * src/xwidget.c (xwidget-webkit-zoom): New procedure.
2781         * lisp/xwidget.el: Bind "+" and "-" to zoom in and out, respectively.
2782         (xwidget-webkit-zoom): Declare procedure.
2783         (xwidget-webkit-zoom-in, xwidget-webkit-zoom-out): New procedures.
2785 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2787         Dynamically resize WebKit widget.
2789         * lisp/xwidget.el (xwidget-webkit-auto-adjust-size,
2790         xwidget-webkit-adjust-size-in-frame): New procedures.
2791         (xwidget-webkit-new-session): Remove hint to resize widget with `a'.
2792         (xwidget-webkit-adjust-size-dispatch): Resize current webkit widget.
2793         (xwidget-webkit-adjust-size-to-window): Make non-interactive,
2794         add widget and window as arguments.
2795         (xwidget-webkit-callback): Use xwidget-webkit-adjust-size-to-window.
2797 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2799         Let initial WebKit view fill window
2801         * lisp/xwidget.el (xwidget-webkit-new-session): Change default size of
2802         WebKit widget to window size.
2804 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2806         xwidget: Remove title hack.
2808         * src/xwidget.c (xwidget-webkit-get-title): Remove procedure.
2809         * lisp/xwidget.el (xwidget-webkit-get-title,
2810         xwidget-webkit-execute-script-rv): Remove procedures.
2812 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2814         xwidget: Get URL asynchronously.
2816         * lisp/xwidget.el (xwidget-webkit-current-url): Kill URL in callback.
2818 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2820         xwidget: Get selection with asynchronous JavaScript
2822         * lisp/xwidget.el (xwidget-webkit-get-selection): Add PROC argument to
2823         process selection.
2824         (xwidget-webkit-copy-selection-as-kill): Kill selection in callback.
2826 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2828         xwidget: Add function to find element by CSS selector
2830         * lisp/xwidget.el (xwidget-webkit-show-element): New procedure.
2832 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2834         xwidget: Simplify functions to scroll to elements
2836         * lisp/xwidget.el (xwidget-webkit-show-named-element,
2837         xwidget-webkit-show-id-element,
2838         xwidget-webkit-show-id-or-named-element): Simplify functions by
2839         scrolling exclusively with JavaScript.
2841 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2843         xwidget: Get title via asynchronous JavaScript.
2845         * lisp/xwidget.el (xwidget-webkit-callback): Get document title
2846         asynchronously.
2848 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2850         xwidget: Do not use `xwidget-execute-script-rv' to insert string
2852         * lisp/xwidget.el (xwidget-webkit-insert-string): Obtain JavaScript
2853         return value via callback instead of using
2854         `xwidget-webkit-execute-script-rv'.
2856 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2858         Remove scrolled window container around WebKit widget
2860         The WebKit widget can scroll on its own and does not need to wrapped
2861         with a scrolled window container.
2863         * src/xwidget.h: Remove struct member widgetscrolledwindow_osr.
2864         * src/xwidget.c: Remove widgetscrolledwindow_osr.
2865         (xwidget-set-adjustment): Remove.
2866         (xwidget-resize): Resize Webkit widget last.
2867         * lisp/xwidget.el (xwidget-set-adjustment): Remove.
2868         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down,
2869         xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward):
2870         Implement scrolling via JavaScript.
2872 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2874         xwidget: Pass JavaScript return value to optional callback procedure
2876         * lisp/xwidget.el (xwidget-webkit-execute-script): Accept optional
2877         callback argument.
2878         (xwidget-webkit-callback): Handle "javascript-callback" event type.
2879         * src/xwidget.c (xwidget-webkit-execute-script): Accept optional
2880         argument FUN, a Lisp procedure to execute on the JavaScript return
2881         value.
2882         (store_xwidget_js_callback_event, webkit_javascript_finished_cb,
2883         webkit_js_to_lisp): New procedures.
2885 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2887         xwidget: Use WebKit2 API
2889         * configure.ac: Check for webkit2gtk-4.0.
2890         * src/xwidget.c: Adjust to use WebKit2 API.
2891         * lisp/xwidget.el (xwidget-webkit-callback): Adjust matches for
2892         `xwidget-event-type'.
2894 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2896         Merge from origin/emacs-25
2898         4c3f738 Comment for bug#24793
2900 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2902         Merge from origin/emacs-25
2904         96ac0c3 Yet another fix for using pointers into buffer text
2905         1047496 Another fix for using pointer to buffer text
2906         3121992 Fix Bug#24478
2908 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2910         Merge from origin/emacs-25
2912         ee04aed Fix handling of buffer relocation in regex.c functions
2913         71ca4f6 Avoid relocating buffers while libxml2 reads its text
2914         1b3fc8a ; Remove redundant code in gmalloc.c
2915         9afea93 Attempt to catch reads from a buffer that is relocated
2917 2016-10-25  Nicolas Petton  <nicolas@petton.fr>
2919         Minor fix in the documentation of seq-random-elt
2921         * doc/lispref/sequences.texi (Sequence Functions): Remove false
2922           sentence.
2924 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
2926         Minor copyedits in documentation of 'seq-random-elt'
2928         * doc/lispref/sequences.texi (Sequence Functions): Fix markup in
2929         last change.  Use 2 spaces between sentences.
2931 2016-10-25  Nicolas Petton  <nicolas@petton.fr>
2933         * lisp/emacs-lisp/seq.el (seq-random-elt): Fix docstring.
2935 2016-10-25  Damien Cassou  <damien@cassou.me>
2937         Add seq-random-elt to seq.el
2939         * lisp/emacs-lisp/seq.el (seq-random-elt): Add function to return a
2940           random element from it's sequence parameter.
2942         * test/lisp/emacs-lisp/seq-tests.el (test-seq-random-elt-take-all
2943           test-seq-random-elt-return-nil): Test the new function
2945         * doc/lispref/sequences.texi: Document the new function
2947 2016-10-24  Ken Brown  <kbrown@cornell.edu>
2949         * configure.ac: Stop using mmap for buffers on Cygwin.
2951 2016-10-24  Nicolas Petton  <nicolas@petton.fr>
2953         * lisp/emacs-lisp/seq.el (seq-let): Fix debug spec (Bug#24738)
2955 2016-10-24  Karl Chen  <Karl.Chen@quarl.org>
2957         Don't prompt user when killing Flymake processes
2959         * lisp/progmodes/flymake.el (flymake-start-syntax-check-process):
2960         Don’t prompt the user when killing Flymake processes.
2962         * doc/misc/flymake.texi (Starting the syntax check process):
2963         Document new behavior.
2965 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
2967         * src/regex.c (re_search_2): Use UNINIT, not IF_LINT.
2969         This finishes the merge of the recent emacs-25 regex changes into
2970         master.
2972 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
2974         Merge from origin/emacs-25
2976         50fa7d6 ;* src/w32heap.c: Fix typo and wording of the comments.
2977         6f1325e electric-quote mode no longer worries about coding
2978         c2a1792 * src/regex.c (re_search_2): Make new code safe for -Wjump-mi...
2979         f6134bb Port to GCC 6.2.1 + --enable-gcc-warnings
2980         b2ba630 Explain how to debug emacsclient lisp errors
2981         9da53e2 Let describe-function work for lambda again
2982         5c2da93 Fix kill-line's docstring
2983         ad66b3f Fix handling of allocation in regex matching
2984         5a26c9b * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24...
2985         3877c91 vc-region-history: Search just on lines intersecting the region
2986         8988327 Fix documentation of 'alist-get'
2987         b6998ea * src/regex.h (re_match_object): Improve commentary.
2989         # Conflicts:
2990         #       etc/NEWS
2991         #       lisp/help-fns.el
2993 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
2995         Merge from origin/emacs-25
2997         8ad0d7d ; Fix quoting in etc/NEWS
2998         6b9dee1 Change Tramp version to "2.2.13.25.2"
2999         62f2684 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): F...
3000         b2f32e4 Don't scan compiled module files for autoloads
3001         9a758b4 Fix Bug#24698
3002         baa8ba4 * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
3003         e535ca4 Fix display of vc-dir CVS file statuses in subdirectories
3004         12da149 Update URL of MS-Windows optional DLLs
3005         2331056 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
3006         a4285bc * lisp/simple.el (process-menu-mode, list-processes--refresh)...
3007         b0c447e * lisp/ibuf-ext.el (ibuffer-do-shell-command-file): Fix non-f...
3008         cf3c19b * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (B...
3010         # Conflicts:
3011         #       doc/misc/trampver.texi
3012         #       etc/NEWS
3013         #       lisp/net/tramp-sh.el
3014         #       lisp/net/trampver.el
3016 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
3018         Merge from origin/emacs-25
3020         b73f466 * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#2...
3021         55ebb70 Catch the imenu-unavailable error in sh-mode completion table
3022         993acb5 ; Minor fix for last change in characters.el
3023         30c4bb5 More char-width fixes
3024         4eb4463 Fix char-width-table values for some Emoji
3025         528997d Keep point when switching from and to *terminal* buffer
3026         2130005 * INSTALL: Use correct Emacs release number 25.
3027         10835b1 Avoid crashes due to objects read with the #n=object form
3028         4de671d Improve doc string of 'completion-at-point-functions'
3029         ceb46f0 Fix crash in evaluating functions
3030         d8374c4 * src/filelock.c (current_lock_owner): Update comment.
3032 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
3034         Merge from origin/emacs-25
3036         2deb20c Port last_marked change to full-program optimizers
3037         27eb668 Adapt GDB scripts to '--enable-check-lisp-object-type' builds
3038         dac64e3 Avoid optimizing out the last_marked[] array
3040 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
3042         Avoid infinite hscrolling in redisplay
3044         * src/xdisp.c (redisplay_internal): Add a counter to avoid horizontal
3045         scrolling (e.g., caused by pre-redisplay-functions) triggering infinite
3046         redisplay (Bug #24633).
3048 2016-10-22  Michael Albinus  <michael.albinus@gmx.de>
3050         Fix error codes in Tramp
3052         * lisp/net/tramp-compat.el (tramp-compat-user-error): New defsubst,
3053         taken from tramp.el.
3054         (tramp-file-missing): New defconst.
3056         * lisp/net/tramp.el (tramp-user-error): Remove it.
3057         (tramp-check-proper-method-and-host)
3058         (tramp-dissect-file-name, tramp-debug-message)
3059         (tramp-handle-shell-command):
3060         * lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
3061         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler):
3062         Use `tramp-compat-user-error'.
3064         * lisp/net/tramp.el (tramp-handle-insert-file-contents)
3065         (tramp-handle-load):
3066         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
3067         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-local-copy)
3068         * lisp/net/tramp-sh.el (tramp-sh-handle-file-local-copy):
3069         * lisp/net/tramp-smb.el (tramp-smb-handle-file-local-copy):
3070         Use `tramp-file-missing'.  (Bug#24714)
3072         * lisp/net/tramp-sh.el (tramp-sh-handle-add-name-to-file):
3073         * lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
3074         Use `file-already-exists'.
3076 2016-10-22  Jorgen Schaefer  <contact@jorgenschaefer.de>
3078         Autoload all commands from misc.el
3080         Only two of the commands there were autoloaded, one of which is an
3081         easter egg.
3082         * lisp/miscl.el (copy-from-above-command):
3083         * lisp/miscl.el (zap-up-to-char):
3084         * lisp/miscl.el (mark-beginning-of-buffer):
3085         * lisp/miscl.el (mark-end-of-buffer):
3086         * lisp/miscl.el (upcase-char):
3087         * lisp/miscl.el (forward-to-word):
3088         * lisp/miscl.el (backward-to-word):
3089         Add autoload cookie.
3091 2016-10-22  Martin Rudalics  <rudalics@gmx.at>
3093         On terminal frames ignore minibuffer frame parameter (Bug#24758)
3095         * src/frame.c (Fmake_terminal_frame): Don't complain when the
3096         caller asks for a deviant minibuffer setting (Bug#24758).
3098 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3100         New error file-missing
3102         This fixes a recently-introduced bug in delete-directory,
3103         where the code assumes the C locale when determining
3104         whether a file-error corresponds to a missing file (Bug#24714).
3105         * doc/lispref/errors.texi (Standard Errors):
3106         * doc/lispref/files.texi (Changing Files):
3107         * etc/NEWS:
3108         Document this.
3109         * doc/lispref/loading.texi (How Programs Do Loading):
3110         Say "a file-error" rather than "the error file-error" since
3111         it might be a file-missing now.
3112         * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
3113         * lisp/epa-file.el (epa-file--find-file-not-found-function):
3114         (epa-file-insert-file-contents, epa-file-write-region):
3115         * lisp/ffap.el (find-file-at-point, dired-at-point):
3116         * lisp/jka-compr.el (jka-compr-insert-file-contents)
3117         (jka-compr-insert-file-contents):
3118         * lisp/net/ange-ftp.el (ange-ftp-barf-if-not-directory)
3119         (ange-ftp-insert-file-contents, ange-ftp-copy-file-internal):
3120         * lisp/progmodes/etags.el (visit-tags-table):
3121         * lisp/url/url-handlers.el (url-copy-file):
3122         * src/fileio.c (report_file_errno):
3123         Signal file-missing if appropriate.
3124         * lisp/epa-file.el (epa-file-insert-file-contents):
3125         * lisp/jka-compr.el (jka-compr-insert-file-contents):
3126         Don't assume file-error is a leaf in the error hierarchy.
3127         * lisp/files.el (files--force):
3128         * lisp/gnus/nnmaildir.el (nnmaildir--enoent-p):
3129         * lisp/jka-compr.el (jka-compr-insert-file-contents):
3130         Use file-missing to detect whether the file is missing.
3131         * lisp/url/url-handlers.el (url-copy-file):
3132         Signal file-already-exists if appropriate.
3133         * src/fileio.c (syms_of_fileio): Define file-missing.
3135         2016-10-18  Paul Eggert  <eggert@cs.ucla.edu>
3137 2016-10-21  Mark Oteiza  <mvoteiza@udel.edu>
3139         Teach browse-url to open man page urls
3141         * lisp/net/browse-url.el (browse-url-man-function): New custom option.
3142         (browse-url): Add a condition to catch links matching "^man:".
3143         (browse-url-man): New function.
3145 2016-10-21  Eli Zaretskii  <eliz@gnu.org>
3147         Improve fontification of footnote references in Info buffers
3149         * lisp/info.el (Info-fontify-node): Don't fontify random numbers
3150         in parentheses as if they were footnote references.  See
3151         https://lists.gnu.org/archive/html/bug-texinfo/2016-10/msg00007.html
3152         for the details.
3154 2016-10-20  Philipp Stephani  <phst@google.com>
3156         Minor fixes to cc-mode-tests.el
3158         See Bug#24747.
3160         * progmodes/cc-mode-tests.el: Rename from cc-mode.el; fix typo in
3161         file-local variable; add comments to make checkdoc happy.
3163 2016-10-20  Michael Albinus  <michael.albinus@gmx.de>
3165         * etc/NEWS: Fix typos.  Remove entries backported to Emacs 25.2.
3167 2016-10-20  Michael Albinus  <michael.albinus@gmx.de>
3169         Document, how to suppress iTerm2 shell integration in Tramp
3171         * doc/misc/tramp.texi (Frequently Asked Questions):
3172         Suppress iTerm2 shell integration.
3174 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
3176         cl-seq: Remove max limit on input sequence length
3178         * lisp/emacs-lisp/cl-seq.el (cl-fill, cl-replace, cl-delete)
3179         (cl--position, cl-nsubstitute, cl-substitute, cl-remove):
3180         Remove limit on maximum length for the input sequence
3181         (#Bug24264).
3182         * test/lisp/emacs-lisp/cl-seq-tests.el: Update test expected result as passed.
3184 2016-10-19  Mark Oteiza  <mvoteiza@udel.edu>
3186         Derive dig-mode from special-mode
3188         * lisp/net/dig.el: Remove unused cl dependency.  Remove top level
3189         mode-class assignment.
3190         (dig-mode-map): Unmap g, as dig has no notion of reverting the buffer.
3191         (dig-mode): Derive from special-mode.
3192         (dig-exit): Use quit-window instead.
3193         (dig): Use pop-to-buffer-same-window.  Remove redundant assignments.
3194         (query-dig): Use pop-to-buffer-same-window.
3196 2016-10-18  Johan Bockgård  <bojohan@gnu.org>
3198         cl-defstruct: Fix debug spec and check of slot options
3200         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Improve checking of slot
3201         option syntax.  Fix debug spec.  (Bug#24700)
3203 2016-10-18  Johan Bockgård  <bojohan@gnu.org>
3205         isearch: Fix bug in defstruct syntax
3207         * lisp/isearch.el (isearch--state): Use correct form of defstruct slot
3208         options.  (Bug#24685)
3210 2016-10-18  Mark Oteiza  <mvoteiza@udel.edu>
3212         Add an option for eshell-input-filter
3214         * etc/NEWS: Document changes.
3215         * lisp/eshell/em-hist.el (eshell-input-filter): Set value to function
3216         symbol.  Change type to a radio for choosing functions.  Refer to both
3217         new functions.
3218         (eshell-input-filter-default): New function.  Same body as the previous
3219         value of eshell-input-filter.
3220         (eshell-input-filter-initial-space): New function.
3222 2016-10-18  Paul Eggert  <eggert@cs.ucla.edu>
3224         delete-directory no longer errors when racing
3226         Problem reported by Glenn Morris for package-test.el (Bug#24714).
3227         * doc/lispref/files.texi (Create/Delete Dirs), etc/NEWS: Document this.
3228         * lisp/files.el (files--force): New function.
3229         (delete-directory): Use it to avoid error in this case.
3231 2016-10-17  Yuri Khan  <yuri.v.khan@gmail.com>  (tiny change)
3233         Support Shift selection in nxml-mode commands
3235         * lisp/nxml/nxml-mode.el (nxml-forward-balanced-item)
3236         (nxml-up-element, nxml-backward-up-element, nxml-down-element)
3237         (nxml-backward-down-element, nxml-forward-element)
3238         (nxml-backward-element, nxml-forward-paragraph)
3239         (nxml-backward-paragraph): Use "^p" as the interactive spec, to
3240         support shift-selection.
3242 2016-10-17  Mark Oteiza  <mvoteiza@udel.edu>
3244         Simplify some loops and cons
3246         * lisp/net/mailcap.el: Replace cl with cl-lib.
3247         (mailcap--get-user-mime-data, mailcap--set-user-mime-data):
3248         (mailcap-parse-mailcaps, mailcap-parse-mailcap-extras):
3249         (mailcap-possible-viewers): Use push and dolist where possible.
3250         (mailcap-viewer-passes-test): Remove unused binding.
3251         (mailcap-add-mailcap-entry): Use push.
3252         (mailcap-mime-info): Remove unused binding.  Use push.
3253         (mailcap-parse-mimetypes): Use dolist.
3255 2016-10-17  Mark Oteiza  <mvoteiza@udel.edu>
3257         Turn on lexical-binding in auth-source
3259         * lisp/auth-source.el: Turn on lexical-binding.
3260         (auth-source-netrc-parse, auth-source-netrc-normalize):
3261         (auth-source-token-passphrase-callback-function):
3262         (auth-source-netrc-create, auth-source-secrets-search):
3263         (auth-source-macos-keychain-search-items):
3264         (auth-source-plstore-search): Use let instead of lexical-let.
3266 2016-10-17  Martin Rudalics  <rudalics@gmx.at>
3268         Fix frame focus redirection with shared minibuffer windows (Bug#24500)
3270         * src/frame.c (do_switch_frame): Redirect frame focus also when
3271         the frame switched to has its minibuffer window on the selected
3272         frame.
3273         * src/window.c (candidate_window_p): To qualify as candidate
3274         it's not sufficient for the window's frame to just share the
3275         minibuffer window - it must be active as well.
3277 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
3279         Fix time-related data types in 2 editfns.c functions
3281         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
3282         pointer to 'time_t' value to 'emacs_localtime_rz' and 'gmtime_r',
3283         instead of relying on struct timespec's 'tv_sec' member to be of
3284         compatible type.
3286 2016-10-16  Martin Rudalics  <rudalics@gmx.at>
3288         Document atomic windows in Elisp manual (Bug#18170)
3290         * lisp/window.el (display-buffer-in-atom-window): If no `side'
3291         alist entry was specified, use `below' as the doc tells.
3292         * doc/lispref/elisp.texi (Atomic Windows): Add menu entry.
3293         * doc/lispref/windows.texi (Atomic Windows): New section.
3294         (Window Parameters): Update reference.
3296 2016-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3298         New face homoglyph
3300         Suggested by Eli Zaretskii, from a feature request by
3301         Alan Mackenzie (Bug#24468).
3302         * doc/emacs/display.texi (Standard Faces, Text Display):
3303         * etc/NEWS: Document this.
3304         * etc/themes/dichromacy-theme.el, etc/themes/leuven-theme.el:
3305         * etc/themes/light-blue-theme.el, etc/themes/manoj-dark-theme.el:
3306         * etc/themes/tango-dark-theme.el, etc/themes/tango-theme.el:
3307         * etc/themes/wombat-theme.el:
3308         Customize homoglyph to be the same as escape-glyph.
3309         * lisp/cus-theme.el (custom-theme--listed-faces):
3310         Add homoglyph.
3311         * lisp/faces.el (homoglyph): New face.
3312         * lisp/startup.el (startup--setup-quote-display): Use it.
3314 2016-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3316         Port to Ubuntu 16.10, which needs gcc -nopie
3318         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
3319         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
3320         preference to -nopie (Bug#24682).
3322 2016-10-16  Michael Albinus  <michael.albinus@gmx.de>
3324         Fix bug#24665 in Tramp
3326         * doc/misc/tramp.texi (External methods): Do not confuse
3327         method names.  (Bug#24665)
3329 2016-10-15  Sam Steingold  <sds@gnu.org>
3331         use full time objects (lists) instead of floats when possible
3333         * midnight.el (midnight-buffer-display-time): Remove
3334         (clean-buffer-list): Use float time only for time comparison
3336 2016-10-15  Sam Steingold  <sds@gnu.org>
3338         Save and restore buffer-display-time
3340         * desktop.el (desktop-locals-to-save): Add `buffer-display-time'
3341         (desktop-read): Set `desktop-file-modtime' before loading the desktop file
3342         (desktop-create-buffer): Adjust `buffer-display-time' for the downtime
3344 2016-10-15  Philipp Stephani  <phst@google.com>
3346         Disable bracketed paste in a terminal in char mode
3348         In char mode, a terminal doesn't accept bracketed paste events,
3349         therefore we should disable them; see Bug#24639.  To decouple the XTerm
3350         management from term.el, introduce a per-buffer setting to disable
3351         bracketed paste for that buffer.  If bracketed paste is inhiited for at
3352         least one buffer in a terminal, it is disabled for the whole terminal.
3354         * term/xterm.el (xterm-inhibit-bracketed-paste-mode): New mode to
3355         inhibit XTerm bracketed paste per buffer.
3356         (xterm--buffer-terminals, xterm--update-bracketed-paste)
3357         (xterm--bracketed-paste-possible, xterm--is-xterm): New helper
3358         functions.
3359         (xterm--init-bracketed-paste-mode): Remove unused helper
3360         function.
3361         (terminal-init-xterm): Update bracketed paste status when
3362         initializing an XTerm and on window configuration change.
3364         * term.el (term-char-mode, term-line-mode): Inhibit XTerm
3365         bracketed paste in char mode.
3367 2016-10-15  Dima Kogan  <dima@secretsauce.net>
3369         Undo the effect of CapsLock when other modifiers are present
3371         * src/keyboard.c (make_lispy_event): Effectively undo the effect
3372         of CapsLock if any modifiers other than Shift are present in a key.
3373         (Bug#24456)
3375 2016-10-15  Simen Heggestøyl  <simenheg@gmail.com>
3377         Add tests for foreign completions in CSS mode
3379         * test/lisp/textmodes/css-mode-tests.el
3380         (css-test-foreign-completions): New test for
3381         `css--foreign-completions'.
3382         (css-test-complete-selector-tag): Rename test.
3383         (css-test-complete-selector-class): New test testing completion of
3384         class names in selectors.
3385         (css-test-complete-selector-id): New test testing completion of IDs in
3386         selectors.
3388 2016-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
3390         Cosmetic change to last mm-url change
3392         * lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
3393         Tweak last change slightly for more readability.
3395 2016-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
3397         Fix problem with submitting binary data via HTTP forms
3399         * lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
3400         Document the parameters, clean up the code, and make uploading
3401         binary data really work (which it didn't if the binary bits
3402         were in the last part of the data).
3404 2016-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3406         * lisp/time.el (display-time-string-forms): Fix custom type.
3408 2016-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3410         Derive Man and WoMan modes from special-mode
3412         * lisp/man.el (Man-mode-map): Set parent to map composed from both
3413         button-buffer-map and special-mode-map.  Remove redundant bindings.
3414         Fix menu to refer to the quit-window command.
3415         (Man-mode): Derive from special-mode.  Fix docstring.  Remove redundant
3416         buffer-read-only binding.
3417         (Man-quit): Remove.
3418         * lisp/woman.el (woman-really-find-file): Use setq-local.
3419         (woman-mode-map): Refer to woman-mode in docstring.
3420         (woman-mode): Derive from special-mode.  Document woman-mode-map in
3421         docstring.  Use setq-local where possible; imenu-generic-expression is
3422         already buffer-local.
3423         (woman-negative-vertical-space): Replace unused binding with _.
3425 2016-10-13  Philipp Stephani  <phst@google.com>
3427         Fix crash in evaluating functions
3429         See Bug#24673
3431         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
3432         as (closure).
3434         * test/src/eval-tests.el (eval-tests--bug24673): Add test.
3436 2016-10-13  Tino Calancha  <tino.calancha@gmail.com>
3438         Add test for Bug#24627
3440         * /test/lisp/thingatpt-tests.el (thing-at-point-bug24627): New test.
3442 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
3444         * lib-src/etags.c (invalidate_nodes): Remove a redundant nullp test.
3446 2016-10-11  Paul Eggert  <eggert@cs.ucla.edu>
3448         Work around Samba bug with ':' in symlink contents
3450         * src/filelock.c (current_lock_owner): When reading the contents
3451         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
3453 2016-10-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3455         If autoloads buffer is unchanged, mark it as such (bug#23692)
3457         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
3458         If autoloads buffer is unchanged, mark it as such (bug#23692).
3460 2016-10-11  Michael Albinus  <michael.albinus@gmx.de>
3462         Use "26.1" version string in Tramp, fix some comments
3464         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods):
3465         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3466         Use "26.1" version string.
3468 2016-10-10  Tino Calancha  <tino.calancha@gmail.com>
3470         form-at-point work for all kind of THINGS
3472         * lisp/thingatpt.el (form-at-point):
3473         Use thing-at-point--read-from-whole-string only if thing-at-point
3474         returns a string (Bug#24605).
3476 2016-10-10  Eli Zaretskii  <eliz@gnu.org>
3478         Fix compilation warnings on MS-Windows
3480         * src/w32.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Remove
3481         definitions of these macros, which seem to be unneeded and cause
3482         compiler warnings.
3483         * src/fileio.c (NOMINMAX): Avoid compiler warnings about unused
3484         macros.
3485         * src/firstfile.c (dummy_main_reference): Rename from 'dummy' and
3486         make it external, to avoid compiler warning.
3488 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3490         Spelling and clarity fixes
3492 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3494         Merge from origin/emacs-25
3496         4f406e9 CC Mode manual: remove reference to former Emacs variable las...
3497         44e402e Allow to disable compaction of font caches
3498         4ff4b66 Allow selection of font for symbols as in Emacs 24.x
3499         c03d44b ; Fix last commit
3500         d4be4f3 ; Fix indexing in lispref manual
3501         ed399f2 ; Minor improvement in documentation of generators
3502         197a6bc Fix horizontal scrolling during Isearch
3503         3566644 Fix infloop in redisplay due to truncated lines and invisible...
3505         # Conflicts:
3506         #       etc/NEWS
3508 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3510         Merge from origin/emacs-25
3512         c4a5e7e Improve documentation of 'menu-bar-open'
3514 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3516         Merge from origin/emacs-25
3518         4b347fe Clarify that doc fixes are okay in feature freeze
3519         01669ad Avoid crashes when setting the cursor
3520         f2144ee Restore 'command-debug-status' functionality
3521         ec6e4b9 ; Minor addition to CONTRIBUTE
3523 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3525         Merge from origin/emacs-25
3527         74b4f13 Document nil args of compare-buffer-substrings
3528         9fc81bc * doc/misc/message.texi (Bcc Warning): Fix markup.
3529         95baa25 * doc/misc/message.texi (Bcc Warning): Document mml-secure-sa...
3531 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3533         Merge from origin/emacs-25
3535         f1247f0 * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
3536         ace7f14 * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
3537         bbf1ffd Regexp Functions doc minor fixes
3539 2016-10-08  Philipp Stephani  <phst@google.com>
3541         Don’t consider nested let-alist forms
3543         See Bug#24641.
3545         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Don’t
3546         consider symbols in nested ‘let-alist’ forms.
3548         * test/lisp/emacs-lisp/let-alist-tests.el
3549         (let-alist--deep-dot-search--nested): Add a unit test.
3551 2016-10-08  Alain Schneble  <a.s@realize.ch>
3553         Support SIGTRAP in kill emulation on Windows
3555         * src/w32proc.c (sys_kill): Translate SIGTRAP signal into a call to
3556         'DebugBreakProcess' to cause a breakpoint exception to occur in the
3557         specified process.  On Windows versions prior to Windows XP that do
3558         not support 'DebugBreakProcess' return -1 and set errno to ENOTSUP
3559         (as opposed to EINVAL before this change).
3560         * src/w32proc.c: Add typedef for 'DebugBreakProcess' function pointer
3561         and global variable to track state of run-time dynamic linking of this
3562         function.
3564         * etc/NEWS: Add entry to document that 'signal-process' now supports
3565         SIGTRAP.
3567 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
3569         Deprecate 'wp' group and introduce a new group 'text'
3571         * lisp/textmodes/tildify.el (tildify):
3572         * lisp/textmodes/text-mode.el (text-mode-hook):
3573         * lisp/textmodes/table.el (table):
3574         * lisp/textmodes/rst.el (rst):
3575         * lisp/textmodes/refer.el (refer):
3576         * lisp/textmodes/refbib.el (refbib):
3577         * lisp/textmodes/picture.el (picture):
3578         * lisp/textmodes/nroff-mode.el (nroff):
3579         * lisp/textmodes/enriched.el (enriched):
3580         * lisp/textmodes/bib-mode.el (bib):
3581         * lisp/progmodes/ebnf2ps.el (ebnf2ps):
3582         * lisp/nxml/rng-valid.el (relax-ng):
3583         * lisp/view.el (view):
3584         * lisp/ps-print.el (ps-print):
3585         * lisp/printing.el (printing):
3586         * lisp/outline.el (outlines):
3587         * lisp/lpr.el (lpr):
3588         * lisp/delim-col.el (columns): Use 'text' group instead of 'wp'.
3589         * lisp/cus-edit.el (wp): Remove the "text" tag.
3590         (text): New defgroup, inherits from the deprecated 'wp'.
3591         (outlines): Remove, in favor of the definition in outline.el.
3592         (tex): Inherit from 'text'.
3593         Suggested by Drew Adams <drew.adams@oracle.com>.  (Bug#24549)
3595 2016-10-08  Laimonas Vėbra  <laimonas.vebra@yahoo.com>  (tiny change)
3597         Extend dictionary and library-directory handling for Ispell
3599         * lisp/textmodes/ispell.el (ispell-check-version): Allow
3600         overriding LIBDIR via the variable defined by LIBRARYVAR (usually
3601         ISPELL_DICTDIR).
3602         (ispell-valid-dictionary-list): If the -d option to Ispell
3603         specifies an absolute file name, use that regardless of
3604         ispell-library-directory.  (Bug#24439)
3606 2016-10-07  Tassilo Horn  <tsdh@gnu.org>
3608         Fix unescaped \begin{...} in docstring
3610         * lisp/textmodes/reftex-cite.el (reftex-bib-or-thebib): Fix unescaped
3611         \begin{...} in docstring.
3613 2016-10-06  Noah Friedman  <friedman@splode.com>
3615         Update comment.
3617 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
3619         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
3621         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
3622         defining to avoid redefinition warnings.
3624         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
3625         inclusion of sys/stat.h from the system headers, which could then
3626         lead to compilation errors due to redefinition of 'struct stat'
3627         etc.  This is needed because latest versions of MinGW runtime
3628         include sys/stat.h from wchar.h.
3630         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
3631         redefine to 4 to avoid conflict between 2 definitions of
3632         MemoryBarrier.  (Bug#24613)
3634 2016-10-05  Mark Oteiza  <mvoteiza@udel.edu>
3636         * lisp/url-url-parse.el (url-generic-parse-url): Unquote macro URL argument.
3638 2016-10-05  Mark Oteiza  <mvoteiza@udel.edu>
3640         Autoload entry point testcover-start
3642         * lisp/emacs-lisp/testcover.el: Add autoload cookie for
3643         testcover-start.
3645 2016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3647         Bump version of ntlm.el to 2.1.0
3649         * lisp/net/ntlm.el: Bump version to 2.1.0.
3651 2016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3653         lisp/net/ntlm.el: Fix comment and docstring formatting
3655 2016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3657         lisp/net/ntlm.el: Match Mozilla Type 1 and 3 message behavior
3659         * lisp/net/ntlm.el (ntlm-build-auth-request): Only set
3660         "negotiate domain supplied" bit when a domain is supplied.  Do
3661         not set "negotiate workstation supplied" bit.
3662         (ntlm-build-auth-response): Set domain to empty string by
3663         default.  Set workstation name to "WORKSTATION".  Set flags to
3664         logical and of Type 1 and Type 2 message flags.  Remove four
3665         trailing 0 bytes.  Always set LM response.  Hard-code domain
3666         offset.  Reorder buffer fields.
3668 2016-10-05  Martin Rudalics  <rudalics@gmx.at>
3670         Document return value of `display-buffer-in-side-window'
3672         * doc/lispref/windows.texi (Displaying Buffers in Side Windows):
3673         * lisp/window.el (display-buffer-in-side-window): Describe
3674         return value of `display-buffer-in-side-window'.
3676 2016-10-05  Eli Zaretskii  <eliz@gnu.org>
3678         Improve wording in side windows documentation
3680         * doc/lispref/windows.texi (Displaying Buffers in Side Windows)
3681         (Side Window Options and Functions)
3682         (Frame Layouts with Side Windows): Minor wording improvements.
3684 2016-10-05  Martin Rudalics  <rudalics@gmx.at>
3686         Document and fix some bugs with side windows
3688         Add a documentation for side windows and fix some bugs
3689         found when testing their behavior.  Also add a new window
3690         parameter `no-delete-other-window', a new `display-buffer'
3691         alist member called `window-parameters', and functions to
3692         toggle and reverse side windows on a frame.  Add new function
3693         `window-swap-states' to exchange states of two live windows.
3695         * lisp/window.el (display-buffer-in-atom-window): Use
3696         `split-window-no-error'.
3697         (window-sides-vertical): Maybe change layouts when setting this
3698         variable.
3699         (window-sides-reversed): New option.
3700         (window-sides-slots): Rewrite doc-string and help echoes.
3701         (window-sides-shown): New buffer-local variable set when showing
3702         a buffer in a side window.
3703         (window--sides-inhibit-check): New variable.
3704         (window--sides-reverse-on-frame-p, window-toggle-side-windows)
3705         (window--sides-reverse-all, window--sides-reverse-frame)
3706         (window--sides-reverse-side, window--sides-reverse)
3707         (window--sides-verticalize-frame, window--sides-verticalize)
3708         (window--sides-check-failed): New functions.
3709         (window--side-window-p): Remove function.
3710         (window--major-non-side-window): Rename to `window-main-window',
3711         adjust callers, rewrite doc-string.
3712         (window--major-side-window): Rename to
3713         `window--make-major-side-window-next-to', adjust caller, fix
3714         doc-string.
3715         (display-buffer-in-major-side-window): Rename to
3716         `window--make-major-side-window', adjust
3717         caller, rewrite doc-string.  Make `window-side' and
3718         `window-slot' parameters persistent (Bug#23858).  Don't set
3719         `delete-window' parameter.  Add `preserve-size' entry to ALIST.
3720         (delete-side-window): Remove function.
3721         (display-buffer-in-side-window): Fix doc-string.  Don't set
3722         `delete-window' parameter.  Add `preserve-size' entry to ALIST.
3723         (window--side-check): Rename to window--sides-check.  Rewrite
3724         completely.  Adjust caller.
3725         (window-resize-no-error): Don't describe PIXELWISE argument.
3726         (adjust-window-trailing-edge): Fix bug that disallowed
3727         re-enlarging windows that were too small.
3728         (window-deletable-p): Don't tell that a minibuffer window on a
3729         non-minibuffer-only frame can be deleted.  Fix doc-string.
3730         (delete-window): Handle deleting a side window here (the
3731         `delete-window' parameter is no more set for side windows).
3732         (delete-other-windows): Handle ‘no-delete-other-window'
3733         parameter. Don't treat side windows separately (see discussion
3734         of Bug#24368) but keep optimization that makes the main window
3735         the root window of its frame.
3736         (switch-to-prev-buffer, switch-to-next-buffer): Handle side
3737         windows and buffers shown in side windows separately.
3738         (split-window-no-error): New function.
3739         (window--state-get-1): Use right buffer when storing window
3740         point and start positions and WRITABLE is nil (Bug#24368).
3741         (window--state-put-1): Fix handling of `window-combination-limit'.
3742         Use `split-window-no-error'.
3743         (window--state-put-2): Try to restore windows with preserved
3744         size to their original size.  Fix bug where a fixed window's width
3745         was not preserved.
3746         (window-state-put): When reducing an internal window to a live
3747         one, don't choose a side window.
3748         (window-swap-states): New function.
3749         (window-splittable-p): Don't call `window--side-window-p'.
3750         (window--display-buffer): Handle `window-parameters' ALIST entry.
3751         Minor rewrite.
3752         (display-buffer): Mention `window-parameters' entry in
3753         doc-string.
3754         (display-buffer-at-bottom): Call `split-window-no-error'.
3756         * doc/lispref/elisp.texi (Top): New section "Side Windows".
3757         * doc/lispref/windows.texi (Deleting Windows): Fix descriptions
3758         of `delete-window' and `delete-other-windows' wrt window
3759         parameters and side windows.
3760         (Display Action Functions): Mention `window-parameters' ALIST
3761         entry.
3762         (Side Windows): New section (Bug#18170).
3763         (Window Configurations): Describe new function `window-swap-states'.
3764         (Window Parameters): Say that functions may behave specially when
3765         their homonymous window parameter has been set.  Mention new
3766         parameter `no-delete-other-window'.  Add cross reference for
3767         `window-side' and `window-slot' parameters.
3769 2016-10-04  John Wiegley  <johnw@newartisans.com>
3771         Add documentation note from Alex
3773 2016-10-04  Mark Oteiza  <mvoteiza@udel.edu>
3775         Avoid dynamic binding on a symbol
3777         Instead, bind history in the default minibuffer-history.
3778         Fixes bug#24580.
3779         * lisp/replace.el (query-replace-read-from): Let-bind
3780         minibuffer-history.  Change read-regexp and read-from-minibuffer's
3781         HISTORY arguments to nil so that they use minibuffer-history.
3783 2016-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
3785         * src/fileio.c (Finsert_file_contents): Fix hook handling (bug#24340)
3787         * src/fileio.c (Finsert_file_contents): Run before-change-hooks before
3788         deleting the old buffer content.
3789         * src/lisp.h (del_range_byte):
3790         * src/insdel.c (del_range_byte): Drop the last argument.
3791         * src/fns.c (Fbase64_encode_region): Adjust accordingly.
3793 2016-10-03  Tino Calancha  <tino.calancha@gmail.com>
3795         Ibuffer: 'w' and 'B' default to buffer at current line
3797         See discussion in:
3798         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00384.html
3799         * lisp/ibuffer.el (ibuffer--near-buffers): New defun;
3800         return buffers near current line.
3801         * lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): Use it.
3802         Add argument ARG; if a non-zero integer, return next ARG buffers.
3803         Otherwise return the marked buffers.
3804         If there are not marked buffers, return buffer at current line
3805         without prompting the user.
3806         Use ibuffer-get-marked-buffers instead of ibuffer-map-marked-lines.
3807         Append to kill ring when last command was a kill-region.
3808         (ibuffer-copy-filename-as-kill): Idem.
3809         Simplify the code.
3810         Use ibuffer-buffer-file-name instead of buffer-file-name to
3811         include buffers in Dired mode.
3813 2016-10-03  Tino Calancha  <tino.calancha@gmail.com>
3815         dired-mark-extension: Unmark if called with C-u prefix
3817         See discussion in #Bug2518 and:
3818         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00711.html
3819         * lisp/dired-x.el (dired-mark-extension):
3820         Update interactive calls: a prefix arg C-u unmark files;
3821         a prefix C-u C-u prompt for MARKER-CHAR and mark files with it.
3822         (dired-mark-sexp):
3823         Show in the prompt that we are unmarking if called with a prefix argument.
3824         * doc/misc/dired-x.texi (Advanced Mark Commands):
3825         Update documentation for 'dired-mark-extension'.
3827 2016-10-02  Karl Fogel  <kfogel@red-bean.com>
3829         Document yank behavior in the right place
3831         * lisp/simple.el (yank): Document the handling of the
3832         `yank-handled-properties' and `yank-excluded-properties' variables,
3833         and the `yank-handler' text property.
3834         (yank-pop): Refer to `yank' now (bug#286)
3836         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
3837         (insert-for-yank-1): Refer to `insert-for-yank' now.
3839         See this thread for discussion:
3841           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
3842           From: Karl Fogel
3843           To: Emacs Devel
3844           Subject: Question about intended behavior of 'insert-for-yank-1'.
3845           Date: Mon, 12 Sep 2016 00:17:14 -0500
3846           Message-ID: <874m5lr92d.fsf@red-bean.com>
3848 2016-10-02  Philipp Stephani  <phst@google.com>
3850         Restart blink cursor timers on interval changes
3852         This prevents surprising behavior when timer interval customizations are
3853         only applied whenever the timers happen to be restarted (see Bug#24372).
3855         * lisp/frame.el (blink-cursor--start-idle-timer)
3856         (blink-cursor--start-timer): New functions.
3857         (blink-cursor-start, blink-cursor-check, blink-cursor-mode): Use
3858         the new helper functions.
3859         (blink-cursor-delay, blink-cursor-interval): Restart timers when
3860         the value is changed.
3862 2016-10-01  Philipp Stephani  <phst@google.com>
3864         Use a simple keyword for a non-nil argument
3866         The second argument of `run-with-idle-timer' is Boolean, i.e. only nil
3867         and non-nil values are distinguished.  Passing a number here is
3868         confusing.  Pass a descriptive symbol instead.
3870         * lisp/frame.el (blink-cursor-mode, blink-cursor-check): Use
3871         :repeat symbol instead of number for second argument of
3872         `run-with-idle-timer'
3874 2016-10-01  Philipp Stephani  <phst@google.com>
3876         Make querying to kill processes customizable
3878         Introduce a new customization option, `confirm-kill-processes', that
3879         users can set to nil if they don't want Emacs to nag them about killing
3880         processes.
3882         * lisp/files.el (confirm-kill-processes): New customization option.
3883         (save-buffers-kill-emacs): Use customization option.
3885         * test/lisp/files-tests.el
3886         (files-test--save-buffers-kill-emacs--confirm-kill-processes): Add
3887         test for new customization option.
3889         * doc/emacs/entering.texi (Exiting): Document new user option.
3891         * doc/lispref/processes.texi (Query Before Exit): Document new
3892         user option.
3894         * etc/NEWS: Document new user option.
3896 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
3898         Set :version of 'debugger-stack-frame-as-list'
3900         * lisp/cus-start.el (debugger-stack-frame-as-list): Give value to
3901         the ':version' attribute.
3903 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
3905         Bump Emacs version to 26.0.50
3907         * README:
3908         * configure.ac:
3909         * etc/NEWS:
3910         * etc/refcards/ru-refcard.tex:
3911         * msdos/sed2v2.inp:
3912         * src/msdos.c: Increment Emacs version to 26.0.50.
3913         * etc/NEWS.25: New file, copied from etc/NEWS with post-25.1 stuff
3914         moved to etc/NEWS.
3916 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
3918         Avoid compilation warning on MinGW
3920         * src/w32.c: Include string.h, needed for the prototype of
3921         'strerror', shadowed by 'sys_strerror'.  This avoids a compiler
3922         warning about "no previous prototype".  The string.h header
3923         must be included after ms-w32.h, but before "#undef strerror".
3925 2016-09-30  Alan Third  <alan@idiocy.org>
3927         Fix compatibility with macOS 10.12 pmset (bug#24537)
3929         * lisp/battery.el (battery-pmset): Recognise and ignore battery id if
3930         present in output.
3932 2016-09-30  Paul Eggert  <eggert@cs.ucla.edu>
3934         Limit <config.h>’s includes
3936         This follows up on recent problems with the fact that config.h
3937         includes stdlib.h etc.; some files need to include stdlib.h later.
3938         config.h generally should limit itself to includes that are
3939         universally safe; outside of MS-Windows, only stdbool.h makes
3940         the cut among the files currently included.  So, move the
3941         other includes to just the files that need them (Bug#24506).
3942         * configure.ac (config_opsysfile): Remove, as this generic hook
3943         is no longer needed.
3944         * lib-src/etags.c, src/unexmacosx.c, src/w32.c, src/w32notify.c:
3945         * src/w32proc.c (_GNU_SOURCE):
3946         Remove, as it’s OK for config.h to do this now.
3947         * src/conf_post.h: Include <ms-w32.h>, instead of the generic
3948         config_opsysfile, for simplicity as this old way of configuring is
3949         now done only for the MS-Windows port.  Do not include <ms-w32.h>
3950         if DEFER_MS_W32_H, for the benefit of the few files that want its
3951         effects later.  Do not include <alloca.h>, <string.h>, or
3952         <stdlib.h>.  Other files modified to include these headers as
3953         needed, or to not include headers that are no longer needed.
3954         * src/lisp.h: Include <alloca.h> and <string.h> here, since
3955         some of the inline functions need them.
3956         * src/regex.c: Include <alloca.h> if not emacs.  (If emacs,
3957         we can rely on SAFE_ALLOCA.)  There is no longer any need to
3958         worry about HAVE_ALLOCA_H.
3959         * src/unexmacosx.c: Rely on config.h not including stdlib.h.
3960         * src/w32.c, src/w32notify.c, src/w32proc.c (DEFER_MS_W32_H):
3961         Define before including <config.h> first, and include <ms-w32.h>
3962         after the troublesome headers.
3964 2016-09-30  Vasilij Schneidermann  <v.schneidermann@gmail.com>
3966         New user option 'debugger-stack-frame-as-list'
3968         * src/eval.c (syms_of_eval) <debugger-stack-frame-as-list>: New
3969         variable.
3970         * lisp/cus-start.el (standard): Add debugger-stack-frame-as-list.
3971         * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Adjust
3972         backtrace processing for the value of debugger-stack-frame-as-list.
3973         * lisp/emacs-lisp/edebug.el (edebug-backtrace): Adjust backtrace
3974         processing for the value of debugger-stack-frame-as-list.
3975         * doc/lispref/debugging.texi (Internals of Debugger): Document
3976         debugger-stack-frame-as-list.
3977         * etc/NEWS: Mention 'debugger-stack-frame-as-list'.
3979 2016-09-30  Aurelien Aptel  <aaptel@suse.com>
3981         * src/alloc.c: call only non-null finalizers
3983 2016-09-30  Eli Zaretskii  <eliz@gnu.org>
3985         Avoid compiler warnings in image.c on MS-Windows
3987         * src/image.c (DrawText, g_type_init) [WINDOWSNT]: Avoid compiler
3988         warning about unused macros.
3990 2016-09-30  Paul Rankin  <hello@paulwrankin.com>
3992         outline-invisible-p): Only return `t' for the 'outline property
3994         * lisp/outline.el (outline-invisible-p): Only return `t' for
3995         the 'outline property.
3997 2016-09-29  Paul Eggert  <eggert@cs.ucla.edu>
3999         Fix problems found by static checking --with-ns
4001         This is for Fedora 24 when configured with --enable-gcc-warnings.
4002         Although it does not fix all the problems, it fixes many of them.
4003         * src/frame.c (XParseGeometry):
4004         * src/nsterm.m (mouseDown:):
4005         Mark locals with UNINIT to pacify --enable-gcc-warnings.
4006         * src/image.c (PIX_MASK_DRAW, DefaultDepthOfScreen):
4007         Remove unused macros.
4008         (slurp_file xbm_scan, xbm_read_bitmap_data, xbm_load_image)
4009         (xbm_file_p, xbm_load, xpm_scan, xpm_make_color_table_v)
4010         (xpm_put_color_table_v, xpm_get_color_table_v)
4011         (xpm_make_color_table_h, xpm_put_color_table_h)
4012         (xpm_get_color_table_h, xpm_load_image, xpm_load)
4013         (pbm_next_char, pbm_scan_number, pbm_load, svg_load)
4014         (svg_load_image):
4015         * src/nsfns.m (x_get_string_resource):
4016         * src/nsimage.m (ns_image_from_XBM):
4017         Fix pointer signedness problems.
4018         * src/image.c (xpm_load_image, x_build_heuristic_mask, pbm_load)
4019         (imagemagick_load_image): Omit unused locals.
4020         * src/nsfns.m (ns_send_types, ns_return_types, ns_drag_types)
4021         (Fx_open_connection):
4022         * src/nsfont.m (ns_antialias_threshold):
4023         Move extern decl to nsterm.h so it can be checked.
4024         * src/nsmenu.m (svcsMenu, dockMenu):
4025         Move to the only file that uses them, so they can be static.
4026         * src/nsterm.h (find_and_call_menu_selection):
4027         * src/nsterm.m (x_set_frame_alpha):
4028         Omit duplicate decls.
4029         * src/nsterm.h (ns_dump_glyphstring): Mark as EXTERNALLY_VISIBLE.
4030         * src/nsfns.m (ns_tooltip, ns_display_info_for_name)
4031         (ns_set_name_as_filename, x_set_menu_bar_lines)
4032         (x_set_tool_bar_lines, x_set_internal_border_width):
4033         * src/nsterm.m (ns_drag_types, ns_draw_text_decoration):
4034         Now static.
4035         * src/nsfns.m (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp):
4036         * src/nsterm.m (ns_free_indexed_color, ns_color_to_lisp):
4037         Remove; unused.
4038         * src/nsfont.m (ns_dump_glyphstring):
4039         * src/nsterm.m (hide_bell, ns_get_color, ns_color_to_lisp)
4040         (ns_clear_frame, keyDown:):
4041         Fix signedness problem with printf arg.
4042         * src/nsterm.h (ns_input_events, ns_finish_events):
4043         * src/nsterm.m (ns_finish_events, hide_bell):
4044         Prototype the decls.
4045         * src/nsterm.m (NSMenuDidBeginTrackingNotification):
4046         Omit unnecessary decl.
4047         (dockMenu):
4048         (mainMenu) [NS_IMPL_COCOA]: Now static, and in this file.
4049         (ns_dumpglyphs_box_or_relief, changeFont:, initFrameFromEmacs:)
4050         (toggleFullScreen:): Use FACE_FROM_ID instead of
4051         FACE_FROM_ID_OR_NULL in contexts where the caller expects the
4052         result to be non-null.
4053         (applicationShouldTerminate:): Fix misleading indentation.
4055 2016-09-28  Mark Oteiza  <mvoteiza@udel.edu>
4057         Turn on more lexical-binding
4059         * lisp/dom.el:
4060         * lisp/faces.el:
4061         * lisp/htmlfontify.el: Turn on lexical-binding.
4062         (htmlfontify-string): Use pushnew instead of add-to-list.
4063         * lisp/info-xref.el:
4064         * lisp/isearch.el:
4065         * lisp/man.el:
4066         * lisp/ps-def.el:
4067         * lisp/ps-print.el:
4068         * lisp/replace.el: Turn on lexical-binding.  Require cl-lib at compile
4069         time.
4070         (multi-occur): Use cl-pushnew instead of add-to-list.
4071         (replace-match-string-symbols): Remove unused lexical variable.
4072         (replace-search, replace-highlight): Fix argument shadowing.
4073         * lisp/sort.el:
4074         * lisp/xml.el: Turn on lexical-binding.
4075         (xml--parse-buffer): Use push instead of add-to-list.
4076         * lisp/xt-mouse.el: Turn on lexical-binding.
4078 2016-09-27  Michael Albinus  <michael.albinus@gmx.de>
4080         * admin/notes/bug-triage: Do not mention closed bugs
4082         * admin/notes/bug-triage: Do not mention closed bugs, they are
4083         suppressed by default in debbugs-{gnu,org}.
4085 2016-09-27  Michael Albinus  <michael.albinus@gmx.de>
4087         * etc/PROBLEMS: Remove problem Bug#22814, again.
4089 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4091         Stick with debbugs-supported tags in triage
4093         * admin/notes/bug-triage: Stick to the tag "unreproducible", which
4094         debbugs supports, rather than suggesting "doneunreproducible" or
4095         "unreproducable".
4097 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4099         Merge from origin/emacs-25
4101         9fc9988 Improve documentation of 'expand-abbrev' and wrapper hooks
4102         c14a1d4 Minor copyedits of MS-Windows installation instructions
4103         f281924 Fix display of cursor when 'blink-cursor-delay' has small value
4105         # Conflicts:
4106         #       lisp/minibuffer.el
4108 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4110         Merge from origin/emacs-25
4112         0ae9a81 Document 'timerp'
4113         2c72c46 Improve documentation of overlay priorities
4114         f6fa160 Fix 'dired-compress-files'
4115         2b8c5f0 Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
4117         # Conflicts:
4118         #       lisp/dired.el
4119         #       src/buffer.h
4120         #       src/character.h
4122 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4124         Merge from origin/emacs-25
4126         cf9e174 Document the optional zlib library in MS-Windows builds
4127         84eb144 ; * admin/notes/unicode: Mention BidiCharacterTest.txt.
4128         73c67dd Fix tagging of DEFUN by etags
4129         ea1960b Avoid resetting track-mouse by mouse clicks
4130         505fef3 Improve nt/README.W32 instructions
4131         1229cc4 Document that desktop file overrides frame parameters
4132         f0eb70d ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 release
4134         # Conflicts:
4135         #       ChangeLog.2
4136         #       admin/notes/unicode
4137         #       lisp/ldefs-boot.el
4139 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4141         Merge from origin/emacs-25
4143         0ffc9ce Update admin/authors.el
4144         0ad7410 Update Antinews in ELisp manual
4145         ea0f750 Fix comments on window height macros
4146         0bbdeed Fix 'url-http-create-request' when cookies are used
4147         0045998 Fix cross reference in frames.texi
4148         1392894 ; * etc/DEBUG: Minor copyedits.
4149         304a5c8 ; * etc/DEBUG: Improve documentation of getting control to GDB.
4150         56bf7d7 Fix regexp-opt documentation (bug #17862)
4151         803ad6f ; Fix documentation of seq-subseq
4152         ed4530d * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in doc...
4153         88ea396 ; Spelling fixes
4154         17197d0 Fix tags-query-replace docstring
4155         80a7f8b Clarify documentation of precision in format specs
4156         88a5052 Improve and clarify documentation of subprocesses
4157         89eb09f * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
4159         # Conflicts:
4160         #       etc/PROBLEMS
4161         #       src/process.c
4163 2016-09-26  Michael Albinus  <michael.albinus@gmx.de>
4165         * lisp/net/tramp-compat.el (tramp-compat-funcall): Don't use `subrp'.
4167 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4169         Fix 'dired-mark-extension' with prefix argument
4171         * lisp/dired-x.el (dired-mark-extension): Allow to specify
4172         MARKER-CHAR interactively as a string, not as a character's
4173         codepoint.  (Bug#24518)
4175         * doc/misc/dired-x.texi (Advanced Mark Commands): Document the
4176         behavior when invoked with a prefix arg.
4178 2016-09-24  Simen Heggestøyl  <simenheg@gmail.com>
4180         Support completion of classes and IDs in CSS mode
4182         * lisp/textmodes/css-mode.el (css-class-list-function): New variable
4183         holding the function to call for retrieving completions of class
4184         names.
4185         (css-id-list-function): New variable holding the function to call for
4186         retrieving completions of IDs.
4187         (css--foreign-completions): New function for retrieving completions
4188         from other buffers.
4189         (css--complete-selector): Support completing HTML class names and IDs
4190         from other buffers in addition to completing HTML tags.
4192         * lisp/textmodes/sgml-mode.el (html--buffer-classes-cache): New
4193         variable holding a cache for `html-current-buffer-classes'.
4194         (html--buffer-ids-cache): New variable holding a cache for
4195         `html-current-buffer-ids'.
4196         (html-current-buffer-classes): New function returning a list of class
4197         names used in the current buffer.
4198         (html-current-buffer-ids): New function returning a list of IDs used
4199         in the current buffer.
4200         (html-mode): Set `css-class-list-function' and `css-id-list-function'
4201         to `html-current-buffer-classes' and `html-current-buffer-ids'
4202         respectively.
4204 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4206         Update test suite files due to removal of test/lisp/legacy
4208         * test/README: Reference file-organization.org.
4209         * test/file-organization.org: Remove the description of files in
4210         the lisp/legacy/ directory.
4212 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4214         Incorporate syntax-tests in lisp-tests.
4216         * test/lisp/emacs-lisp/lisp-tests.el: Add tests from
4217         test/lisp/legacy/syntax-tests.el.
4218         * test/lisp/legacy/syntax-tests.el: File deleted.
4220 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4222         Incorporate occur-tests in replace-tests
4224         * test/lisp/replace-tests.el: Add tests from
4225         test/lisp/legacy/occur-tests.el.
4226         * test/lisp/legacy/occur-tests.el: File deleted.
4228 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4230         Incorporate lexbind-tests.el in bytecomp-test.el
4232         * test/lisp/emacs-lisp/bytecomp-tests.el: Added tests from
4233         test/lisp/legacy/lexbind-tests.el.
4234         * test/lisp/legacy/lexbind-tests.el: File deleted.
4236 2016-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4238         Improve integer overflow handling a bit
4240         * src/charset.c (read_hex): Use INT_LEFT_SHIFT_OVERFLOW for clarity.
4241         The machine code is the same on my platform.
4242         * src/doprnt.c (doprnt):
4243         * src/emacs-module.c (module_funcall):
4244         * src/font.c (font_intern_prop):
4245         * src/keyboard.c (Frecursion_depth):
4246         * src/lread.c (read1):
4247         Use WRAPV macros instead of checking overflow by hand.
4248         * src/editfns.c (hi_time, time_arith, decode_time_components):
4249         * src/emacs-module.c (Fmodule_load):
4250         Simplify by using FIXNUM_OVERFLOW_P.
4251         * src/emacs-module.c: Include intprops.h.
4252         * src/xdisp.c (percent99): New function.
4253         (decode_mode_spec): Use it to simplify overflow avoidance and
4254         formatting of %p and %P.
4256 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4258         Incorporate core-elisp-tests in lisp-tests
4260         * test/lisp/emacs-lisp/lisp-tests.el: Added tests from
4261         test/lisp/legacy/core-elisp-tests.el.
4262         * test/lisp/legacy/core-elisp-tests.el: File removed.
4264 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4266         Move coding-tests.el and decoder-test.el to their places
4268         * test/src/coding-tests.el: Added all the tests from
4269         test/lisp/legacy/decoder-tests.el.
4270         * test/lisp/legacy/decoder-tests.el: File deleted.
4272 2016-09-23  Vibhav Pant  <vibhavp@gmail.com>
4274         Use correct TYPE value for displaying error messages in (erc-display-message)
4276 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
4278         Bump the version to 25.2.50
4280         * README:
4281         * configure.ac:
4282         * etc/NEWS:
4283         * msdos/sed2v2.inp: Increment the Emacs version to 25.2.50.
4285 2016-09-22  Tino Calancha  <tino.calancha@gmail.com>
4287         ibuffer-do-view-other-frame: Display each buffer in a new frame
4289         * lisp/ibuffer.el (ibuffer-do-view-1):
4290         When TYPE equals 'other-frame, then display each buffer
4291         in a new frame (Bug#24086).
4293 2016-09-22  Paul Eggert  <eggert@cs.ucla.edu>
4295         Update from gnulib
4297         This incorporates:
4298         2016-09-22 stdint: port to GCC 7
4299         2016-09-22 limits-h, stdint: don't assume extensions
4300         * doc/misc/texinfo.tex, m4/limits-h.m4, m4/stdint.m4: Copy from gnulib.
4302 2016-09-22  Alan Mackenzie  <acm@muc.de>
4304         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Fix coding error
4306 2016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4308         Port recent flexmember changes to NetBSD
4310         The NetBSD library supports localtime_rz directly, and without
4311         this change 'configure' omitted the flexmember test that is marked
4312         as conditional on localtime_rz.  Emacs now needs to use
4313         flexmember.m4 even when localtime_rz works.
4314         Problem reported by Thomas Klausner.
4315         * admin/merge-gnulib (GNULIB_MODULES): Add flexmember.
4316         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4318 2016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4320         * doc/misc/texinfo.tex: Copy from gnulib.
4322 2016-09-21  Michael Albinus  <michael.albinus@gmx.de>
4324         * lisp/net/tramp.el (tramp-clear-passwd): Call also `auth-source-forget'.
4326 2016-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4328         Use flexmembers on IBM XL C for AIX
4330         This removes a workaround where Emacs did not use flexible
4331         array members when compiled with IBM XL C.  Instead, avoid
4332         the problem by making the aliasing issues more obvious to
4333         this compiler.
4334         * admin/merge-gnulib: Don’t remove m4/flexmember.m4.
4335         * m4/flexmember.m4: Copy from gnulib.
4336         * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Remove workaround.
4337         * src/alloc.c (allocate_string_data): Rephrase to avoid aliasing
4338         problem that would otherwise mess up code generated for flexible
4339         array members by IBM XL C for AIX, V12.1.
4340         * src/conf_post.h (FLEXIBLE_ARRAY_MEMBER): Remove; now done
4341         by gnulib code.
4343 2016-09-19  Michael Albinus  <michael.albinus@gmx.de>
4345         Fix a problem with Tramp when the temporary dir isn't C:/Temp on w32
4347         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name): Don't use
4348         `tramp-drop-volume-letter' any longer, it causes collateral
4349         damages.  Reported by Chris Zheng <chriszheng99@gmail.com>.
4351 2016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4353         Port January __morecore changes to AIX 7.1
4355         * src/vm-limit.c (__MALLOC_HOOK_VOLATILE, __morecore)
4356         (__after_morecore_hook):
4357         * src/ralloc.c (__morecore):
4358         Declare if DOUG_LEA_MALLOC is not defined, not if HAVE_MALLOC_H is
4359         not defined.  <malloc.h> does not declare these in AIX 7.1.
4361 2016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4363         Define _GNU_SOURCE in files delaying config.h
4365         Problem reported by Richard Copley in:
4366         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00440.html
4367         * src/w32.c, src/w32notify.c, src/w32proc.c (_GNU_SOURCE):
4368         Define early.
4370 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
4372         Update the bidi test code and data
4374         * test/manual/BidiCharacterTest.txt: Import the version from
4375         Unicode Standard 9.0.0.
4376         * test/manual/biditest.el (biditest-generate-testfile): Allow 'x'
4377         in the 4th field of the test data.
4379 2016-09-17  Tino Calancha  <tino.calancha@gmail.com>
4381         ibuffer-do-toggle-read-only: Fix unused argument
4383         * lisp/ibuffer.el (ibuffer-do-toggle-read-only): Call
4384         'read-only-mode' with ARG when its an integer.
4385         Clarify the meaning of ARG in doc string.
4387 2016-09-17  Alan Mackenzie  <acm@muc.de>
4389         Improve accuracy of line/column numbers in byte compiler's warning messages.
4391         * lisp/emacs-lisp/bytecomp.el (byte-compile-set-symbol-position): ensure new
4392         value of byte-compile-last-position is not lower than old value.
4393         (byte-compile-function-warn): call byte-compile-set-symbol-position.
4395 2016-09-17  Michael Albinus  <michael.albinus@gmx.de>
4397         Minor Tramp tweaks
4399         * lisp/net/tramp.el (tramp-get-buffer): Reuse connection
4400         property "process-buffer" if already existing.
4401         (tramp-connectable-p): Suppress debug messages.
4403 2016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4405         Define _GNU_SOURCE in unexmacosx.c
4407         Problem reported by Bob Halley in:
4408         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00427.html
4409         * src/unexmacosx.c (_GNU_SOURCE): Define if not already defined.
4411 2016-09-16  Alan Mackenzie  <acm@muc.de>
4413         C Mode: Fix mis-fontification of macro invocation as function declaration
4415         This happened with a macro invocation which was followed by a statement block
4416         in braces.
4418         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): CASE 11: distinguish
4419         between contexts nil and top, being less permissive in the former case.
4420         (c-just-after-func-arglist-p): call c-forward-decl-or-cast-1 with context top.
4422 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4424         Improve the doc string of 'format'
4426         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
4427         of a literal period.  (Bug#24407)
4429 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4431         Improve doc strings in whitespace.el
4433         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
4434         (global-whitespace-mode, global-whitespace-newline-mode): Improve
4435         the doc strings.  (Bug#24413)
4437 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4439         Improve detectability of 'next-logical-line' and 'previous-logical-line'
4441         * lisp/simple.el (next-line, previous-line): Mention
4442         'next-logical-line' and 'previous-logical-line' in the doc
4443         strings.  (Bug#24443)
4445 2016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4447         Update from gnulib
4449         This incorporates:
4450         2016-09-16 extensions: fix typo in comment
4451         2016-09-16 stdio: don't redefine __USE_MINGW_ANSI_STDIO
4452         * m4/extensions.m4, m4/stdio_h.m4: Copy from gnulib.
4454 2016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4456         Prefer now-standard int width macros
4458         * src/data.c (ULL_WIDTH):
4459         * src/lisp.h (EMACS_INT_WIDTH, BITS_PER_BITS_WORD):
4460         * src/lread.c (read_integer):
4461         * src/term.c (produce_glyphless_glyph):
4462         * src/xterm.c (x_send_scroll_bar_event):
4463         Use *_WIDTH macros instead of CHAR_BIT * sizeof.
4464         * src/data.c (ULL_WIDTH): Rename from BITS_PER_ULL for consistency
4465         with the *_WIDTH standard macros.  All uses changed.
4466         * src/gmalloc.c (INT_BIT): Remove.  All uses replaced with INT_WIDTH.
4467         * src/lisp.h (EMACS_INT_WIDTH): Rename from BITS_PER_EMACS_INT
4468         for consistency with the *_WIDTH standard macros.  All uses changed.
4469         (BITS_PER_CHAR): Remove; all uses replaced by CHAR_BIT.  This must
4470         be the same as CHAR_WIDTH and avoids confusion with Elisp
4471         char-width, which counts columns not bits.
4472         (BITS_PER_SHORT): Remove; all uses replaced by SHRT_WIDTH.
4473         (BITS_PER_LONG): Remove; all uses replaced by LONG_WIDTH.
4474         * src/lread.c: Do not include limits.h since CHAR_BIT is no longer
4475         used directly.
4477 2016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4479         Update from gnulib
4481         This incorporates:
4482         2016-09-15 stdint: support new _WIDTH macros
4483         2016-09-15 limits-h: new module
4484         2016-09-15 sys_types: avoid glibc 2.25 warnings about major()
4485         2016-09-15 extensions: port to more ISO C TSes
4486         2016-09-13 intprops: new macro TYPE_WIDTH
4487         2016-09-13 extensions: port to recent ISO C TRs
4488         * .gitignore: Add lib/limits.h.
4489         * doc/misc/texinfo.tex, lib/ftoastr.h, lib/intprops.h:
4490         * lib/stdint.in.h, m4/extensions.m4, m4/stdint.m4, m4/stdio_h.m4:
4491         * m4/sys_types_h.m4: Copy from gnulib.
4492         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4493         * lib/limits.in.h, m4/limits-h.m4: New files, copie from gnulib.
4494         * nt/gnulib.mk: Merge changes from lib/gnulib.mk.
4496 2016-09-15  Michael Albinus  <michael.albinus@gmx.de>
4498         Rework fixing Bug#24432
4500         * lisp/net/tramp.el (tramp-get-buffer): Set connection property
4501         "process-buffer" in order to mark connection as active.
4503         * lisp/net/tramp-cache.el (tramp-get-hash-table)
4504         (tramp-set-connection-property)
4505         (tramp-dump-connection-properties): Do not use "active" property.
4506         (tramp-list-connections): Use "process-buffer" property.
4508         * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Flush process
4509         properties prior deletion of process.
4511 2016-09-14  Johan Bockgård  <bojohan@gnu.org>
4513         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix debug spec (Bug#24430).
4515         * lisp/emacs-lisp/edebug.el (defun): Fix debug spec.
4517 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
4519         Avoid compiler warning on MS-Windows due to clone_file
4521         * src/fileio.c (clone_file): Condition on !WINDOWSNT, since the
4522         call to it is not compiled in that build, and having it defined
4523         causes compiler warnings.
4525 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
4527         Avoid aborts in GC due to abort_on_gc
4529         * src/lisp.h:
4530         * src/print.c (Fprin1_to_string):
4531         * src/eval.c (signal_or_quit):
4532         * src/alloc.c (garbage_collect_1): Remove declarations, setting,
4533         and testing the value of abort_on_gc.  It is no longer needed, and
4534         using it causes rare aborts in GC for no good reason.  (Bug#23912)
4536 2016-09-14  Michael Albinus  <michael.albinus@gmx.de>
4538         Fix Bug#24432
4540         * lisp/net/tramp-cache.el (tramp-get-hash-table): Initialize a
4541         connection as inactive.
4542         (tramp-set-connection-property): Make the connection active.
4543         (tramp-dump-connection-properties): Don't save "active" property.
4544         (tramp-list-connections): List only active connections.  (Bug#24432)
4546 2016-09-14  Lars Ingebrigtsen  <larsi@gnus.org>
4548         Don't bug out on all-whitespace URLs
4550         * lisp/net/shr.el (shr-expand-url): Don't bug out on
4551         degenerate all-whitespace URLs.
4553 2016-09-13  Katsumi Yamaoka  <yamaoka@jpl.org>
4555         sieve-manage.el: Rename sieve-manage-ignore-broken-tls
4557         * lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
4558         Rename from sieve-manage-ignore-broken-tls.  If it is set,
4559         sieve-manage will never use STARTTLS even if the server says
4560         it is capable (but may be broken).
4562 2016-09-13  Paul Eggert  <eggert@cs.ucla.edu>
4564         Port to ISO/IEC TS 18661-1:2014
4566         * src/character.h (CHARACTER_WIDTH): Rename from CHAR_WIDTH.
4567         All uses changed.
4569 2016-09-13  Tino Calancha  <tino.calancha@gmail.com>
4571         dired-jump: Expand file-name before dired-goto-file call
4573         Command dired-goto-file requires its argument to be an absolute
4574         file name.  Interactively FILE-NAME is read with read-file-name,
4575         which could return an abbreviated file name (Bug#24409).
4576         * lisp/dired-x.el (dired-jump): Use expand-file-name on FILE-NAME.
4577         Clarify in doc string the meaning of arg FILE-NAME.
4579 2016-09-13  Tino Calancha  <tino.calancha@gmail.com>
4581         Add test for Bug#21454
4583         * test/lisp/legacy/files-tests.el (files-test-bug-21454): New test.
4585 2016-09-12  Katsumi Yamaoka  <yamaoka@jpl.org>
4587         * lisp/net/sieve-manage.el (sieve-manage-ignore-broken-tls): Add :version.
4589 2016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
4591         sieve.el: Make the buffer to edit unmodified initially (bug#24423)
4593         * lisp/net/sieve.el (sieve-edit-script):
4594         Make the buffer to edit be not modified-p initially (bug#24423).
4596 2016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
4598         sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)
4600         * lisp/net/sieve-manage.el
4601         (sieve-manage-ignore-broken-tls): New user option.
4602         (sieve-manage-open-server):
4603         Don't test STARTTLS capability if the option is set (bug#24422).
4605 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4607         Fix compiler thinking width and height may be unitialised in frame.c
4609         This fixes the following warning:
4611                 frame.c: In function ‘x_set_frame_parameters’:
4612                 frame.c:3329:25: error: ‘width’ may be used uninitialized in
4613                         this function [-Werror=maybe-uninitialized]
4614                        adjust_frame_size (f, width_change ? width : -1,
4615                                  ^
4617         * src/frame.c (x_set_frame_parameters): Drop width_changed and
4618         height_changed variables in favour of storing that information in
4619         width and height variables.
4621 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4623         Fix compiler thinking tmpdir may be unitialised in emacsclient
4625         This fixes the following warning:
4627                 emacsclient.c: In function ‘set_local_socket’:
4628                 /usr/include/x86_64-linux-gnu/bits/string3.h:111:3: error:
4629                         ‘tmpdir’ may be used uninitialized in this function
4630                         [-Werror=maybe-uninitialized]
4631                    return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
4632                    ^
4633                 emacsclient.c:1197:17: note: ‘tmpdir’ was declared here
4634                      const char *tmpdir;
4636         * lib-src/emacsclient.c (set_local_socket): Get rid of use_tmpdir
4637         variable and instead use tmpdir being non-NULL as sign that it should
4638         be used.
4640 2016-09-12  Tino Calancha  <tino.calancha@gmail.com>
4642         image-dired: Signal an error before calling a missing executable
4644         Reverts commit ca473907
4645         Add a defun to check if an executable exists, and call it
4646         on each function using an external program: when the executable
4647         is not available signal an error.
4648         See discussion on:
4649         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00135.html
4650         * lisp/image-dired.el (image-dired--check-executable-exists): New defun.
4651         Throw and error when the executable arg is missing.
4652         (image-dired-display-image, image-dired-rotate-thumbnail)
4653         (image-dired-rotate-original, image-dired-set-exif-data)
4654         (image-dired-get-exif-data):
4655         Use it.
4657 2016-09-12  Eli Zaretskii  <eliz@gnu.org>
4659         Fix daemon shutdown when emacs-kill-hooks ask questions
4661         * lisp/server.el (server-start): Put the server's kill-emacs-hook
4662         last, to allow other hooks to have a frame to interact with the
4663         user.  (Bug#24326)
4665 2016-09-12  Paul Eggert  <eggert@cs.ucla.edu>
4667         * src/casefiddle.c (casify_word): Simplify.
4669         * src/casefiddle.c (casify_word): Return Qnil.
4671 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4673         Refactor common code in {upcase,downcase,capitalize}-word functions
4675         * src/casefiddle.c (operate_on_word): Removed in favour of…
4676         (casify_word) …new function which does what operate_on_word did plus
4677         what all of the common code from *-word functions.
4678         (upcase-word, downcase-word, capitalize-word): Move code common between
4679         those functions (pretty much the whole body of those functions) into
4680         casify_word and use that instead of now deleted operate_on_word.
4682 2016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
4684         * doc/lispref/files.texi: Remove @vindex.
4686 2016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
4688         Remove unnecessary ref to coreutils manual
4690         * doc/lispref/files.texi: Document write-region-inhibit-fsync.
4692 2016-09-11  Alan Mackenzie  <acm@muc.de>
4694         Correctly fontify C++ direct initializations with parens inside functions
4696         Or, more clearly, when something looks like a function declaration and it's
4697         inside a function, fontify it as a direct initialization.
4699         For this purpose, introduce a "brace stack" for each buffer, where an entry on
4700         the brace stack states how deeply nested a particular position is inside
4701         braces inside a "top level", which includes classes and namespaces.
4703         Also introduce a new "context", "top", with which c-font-lock-declarations
4704         signals to c-forward-decl-or-cast-1 that point is at the top level.
4706         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): add
4707         c-truncate-bs-cache.
4708         (c-flat-decl-block-kwds, c-brace-stack-thing-key, c-brace-stack-no-semi-key)
4709         (c-type-decl-operator-prefix-key): new language constants/variables.
4711         * lisp/progmodes/cc-engine.el (c-bs-interval, c-bs-cache, c-bs-cache-limit)
4712         (c-bs-prev-pos, c-bs-prev-stack): New mostly local variables for the brace
4713         stack cache.
4714         (c-init-bs-cache, c-truncate-bs-cache, c-truncate-bs-cache, c-brace-stack-at)
4715         (c-bs-at-toplevel-p): New functions which manipulate the brace stack (cache).
4716         (c-find-decl-prefix-search): Keep track of whether we're at top level.
4717         (c-find-decl-spots): New local variable cfd-top-level which records what it
4718         says.  On calling cfd-fun, pass cfd-top-level as an additional argument.
4719         (c-forward-declarator): Add new element DECORATED to the result list.  Set it
4720         to non-nil when a match for c-type-decl-operator-prefix-key is found.
4721         (c-forward-decl-or-cast-1): Handle the newly introduced context "top".
4722         Introduce "CASE 9.5", which recognizes direct initializations.
4724         * lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
4725         (c-font-lock-enum-tail, c-font-lock-cut-off-declarators)
4726         (c-font-lock-enclosing-decls, c-simple-decl-matchers, c-basic-matchers-after):
4727         Add appropriate `not-top' argument to calls to c-font-lock-declarators.
4728         (c-font-lock-declarators): Additional parameter `not-top'.  Use not-top to
4729         participate in the decision whether to fontify an identifier as a function or
4730         a variable.
4731         (c-font-lock-declarations): The internal lambda function takes an additional
4732         argument `toplev' from c-find-decl-spots, which it uses in determining the
4733         "context" of a declaration.  Add appropriate `not-top' argument to calls to
4734         c-font-lock-declarators.
4735         (c-font-lock-objc-methods): Add extra parameter to internal lambda function,
4736         like for c-font-lock-declarators.
4738         * lisp/progmodes/cc-mode.el (c-basic-common-init): Initialize the brace stack
4739         cache.
4741 2016-09-11  Eli Zaretskii  <eliz@gnu.org>
4743         Avoid signaling errors when computing "Stop" in GDB menu
4745         * lisp/progmodes/gdb-mi.el (gdb-show-stop-p): Don't assume
4746         'gdb-running-threads-count' must have a numeric value.
4747         (Bug#24414)
4749 2016-09-11  Philipp Stephani  <phst@google.com>
4751         Stop calling ‘byte-compile-log-warning’
4753         For errors, use ‘byte-compile-report-error’ instead so that the error
4754         is registered and causes compilation to fail (Bug#24359).
4756         For warnings, use ‘byte-compile-warn’ instead so that
4757         ‘byte-compile-error-on-warn’ is honored (Bug#24360).
4759         * lisp/emacs-lisp/macroexp.el (macroexp--funcall-if-compiled)
4760         (macroexp--warn-and-return): Use ‘byte-compile-warn’ instead of
4761         ‘byte-compile-log-warning’.
4763         * lisp/emacs-lisp/bytecomp.el (byte-compile-form, byte-compile-unfold-bcf)
4764         (byte-compile-setq, byte-compile-funcall): Use
4765         ‘byte-compile-report-error’ instead of ‘byte-compile-log-warning’.
4766         (byte-compile-log-warning): Convert comment to documentation
4767         string.  Explain that the function shouldn’t be called directly.
4768         (byte-compile-report-error): Add optional FILL argument.
4770         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
4771         (cconv--analyze-function, cconv-analyze-form): Use
4772         ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
4774         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Use
4775         ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
4777         * lisp/subr.el (add-to-list): Use ‘byte-compile-report-error’ instead
4778         of ‘byte-compile-log-warning’.
4779         (do-after-load-evaluation): Use ‘byte-compile-warn’ instead of
4780         ‘byte-compile-log-warning’.
4782 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4784         * etc/NEWS: Remove comment lost in emacs-25 merge.
4786 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4788         Document file synchronization issues
4790         * doc/lispref/files.texi (Files and Storage): New section.
4792 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4794         copy-file now uses GNU/Linux file cloning
4796         From a suggestion by Kieran Colford (see Bug#23904).
4797         * configure.ac: Check for linux/fs.h.
4798         * src/fileio.c [HAVE_LINUX_FS_H]: Include sys/ioctl.h and linux/fs.h.
4799         (clone_file): New function.
4800         (Fcopy_file): Use it.
4802 2016-09-10  Alan Third  <alan@idiocy.org>
4804         Invert y coord of NS image files (bug#7847)
4806         * src/nsterm.m (ns_dumpglyphs_image): Invert y co-ordinate of the image
4807         when compositing.
4809 2016-09-10  Noam Postavsky  <npostavs@gmail.com>
4811         Don't require isearch-update before isearch-done
4813         It is useful to be able to call `isearch-done' unconditionally to
4814         ensure a non-isearching state.
4816         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
4817         is a live buffer before using it (Bug #21091).
4818         * test/lisp/isearch-tests.el (isearch--test-done): Test it.
4820 2016-09-09  Simen Heggestøyl  <simenheg@gmail.com>
4822         * lisp/emacs-lisp/ring.el: Use lexical-binding
4824         * lisp/emacs-lisp/ring.el (ring-elements): Don't use the RESULT
4825         argument of `dotimes' when the iteration variable isn't referred by
4826         it.
4827         (ring-member): Don't pass nil as the RESULT argument of `dotimes'
4828         since it's the default.
4830 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4832         Split regex character class test into smaller chunks
4834         Having one test for all character classes it is not always trivial to
4835         determine which class is failing.  This happens when failure is caused
4836         by ‘(should (equal (point) (point-max)))’ not being met.
4838         With per-character class tests, it is immidiatelly obvious which test
4839         causes issues plus tests for all classes are run even if some of them
4840         fail.
4842         * test/src/regex-tests.el (regex-character-classes): Delete and split
4843         into…
4844         (regex-tests-alnum-character-class, regex-tests-alpha-character-class,
4845         regex-tests-ascii-character-class, regex-tests-blank-character-class,
4846         regex-tests-cntrl-character-class, regex-tests-digit-character-class,
4847         regex-tests-graph-character-class, regex-tests-lower-character-class,
4848         regex-tests-multibyte-character-class,
4849         regex-tests-nonascii-character-class,
4850         regex-tests-print-character-class, regex-tests-punct-character-class,
4851         regex-tests-space-character-class,
4852         regex-tests-unibyte-character-class,
4853         regex-tests-upper-character-class, regex-tests-word-character-class,
4854         regex-tests-xdigit-character-class): …new tests.
4856 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4858         Don’t allocate char-table’s extra slots in regexp-out-charset
4860         * lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Do not use
4861         'case-table as charmap char-table’s property.  The function has nothing
4862         to do with casing and in addition using 'case-table causes unnecessary
4863         extra slots to be allocated which ‘regexp-opt-charset’ does not use.
4865 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4867         Remove dead loop iterations in regex.c
4869         RE_CHAR_TO_MULTIBYTE(c) yields c for ASCII characters and a byte8
4870         character for c ≥ 0x80.  Furthermore, CHAR_BYTE8_P(c) is true only
4871         for byte8 characters.  This means that
4873                 c = RE_CHAR_TO_MULTIBYTE (ch);
4874                 if (! CHAR_BYTE8_P (c) && re_iswctype (c, cc))
4876         is equivalent to:
4878                 c = c;
4879                 if (! false && re_iswctype (c, cc))
4881         for 0 ⪬ c < 0x80, and
4883                 c = BYTE8_TO_CHAR (c);
4884                 if (! true && re_iswctype (c, cc))
4886         for 0x80 ⪬ c < 0x100.  In other words, the loop never executes for
4887         c ≥ 0x80 and RE_CHAR_TO_MULTIBYTE call is unnecessary for c < 0x80.
4889         * src/regex.c (regex_compile): Simplyfy a for loop by eliminating
4890         dead iterations and unnecessary macro calls.
4892 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4894         Replace decimalnump with alphanumericp
4896         decimalnump was used in regex.c only in ISALNUM macro which ored it with
4897         alphabeticp.  Because both of those functions require Unicode general
4898         category lookup, this resulted in unnecessary lookups (if alphabeticp
4899         return false decimalp had to perform another lookup).  Drop decimalnump
4900         in favour of alphanumericp which combines decimelnump with alphabeticp.
4902         * src/character.c (decimalnump): Remove in favour of…
4903         (alphanumericp): …new function.
4905         * src/regex.c (ISALNUM): Use alphanumericp.
4907 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4909         Remove inaccurate comment in regex.c
4911         * src/regex.c (regex_compile): Remove comment indicating that wctype of
4912         some character classes may be negative.  All wctypes are in fact
4913         non-negative.
4915 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4917         STRING_CHAR does not unify characters; update documentation
4919         * src/character.h (STRING_CHAR): Update doc.
4920         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update doc.  While at it, change
4921         the function to use BYTE_POS_ADDR instead of open-coding it.
4923 2016-09-08  Simen Heggestøyl  <simenheg@gmail.com>
4925         Add tests for ring.el
4927         * test/lisp/emacs-lisp/ring-tests.el: New file with tests for ring.el.
4929 2016-09-07  Martin Rudalics  <rudalics@gmx.at>
4931         New file test/src/marker-tests.el
4933 2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4935         Port flexible array members to GCC + valgrind
4937         These changes are needed to conform to the C standard's rule for
4938         allocating structs containing flexible array members.  C11 says
4939         that malloc (offsetof (struct s, m) + n) does not suffice to
4940         allocate a struct with an n-byte tail; instead, malloc’s arg
4941         should be rounded up to the nearest multiple of alignof (struct s).
4942         Although this is arguably a defect in C11, gcc -O2 + valgrind
4943         sometimes complains when this rule is violated, and when debugging
4944         it’s better to keep valgrind happy.
4945         For details please see the thread containing the message at:
4946         https://gcc.gnu.org/ml/gcc-patches/2016-09/msg00416.html
4947         * lib-src/ebrowse.c, src/alloc.c, src/image.c, src/process.c:
4948         Include flexmember.h.
4949         * lib-src/ebrowse.c (add_sym, add_member, make_namespace)
4950         (register_namespace_alias):
4951         * src/alloc.c (SDATA_SIZE, allocate_string_data):
4952         * src/image.c (xpm_cache_color, imagemagick_create_cache):
4953         * src/process.c (Fmake_network_process):
4954         Use FLEXSIZEOF instead of offsetof and addition.
4955         * src/alloc.c (SDATA_SIZE, vector_alignment):
4956         Use FLEXALIGNOF instead of sizeof (ptrdiff_t).
4957         * src/lisp.h (ALIGNOF_STRUCT_LISP_VECTOR):
4958         Remove, as alloc.c can now calculate this on its own.
4960 2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4962         Update from gnulib
4964         This incorporates:
4965         2016-09-07 flexmember: new macro FLEXALIGNOF
4966         2016-09-07 flexmember: port better to GCC + valgrind
4967         2016-08-18 Port modules to use getprogname explicitly
4968         2016-09-02 manywarnings: add -fno-common
4969         * admin/merge-gnulib (GNULIB_TOOL_FLAGS): Don’t avoid flexmember,
4970         since time_rz now uses part of it.  Instead, remove m4/flexmember.m4.
4971         * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Define away,
4972         since Emacs assumes C99 and therefore removes m4/flexmember.m4.
4973         * lib/euidaccess.c, lib/group-member.c, lib/time_rz.c:
4974         * m4/manywarnings.m4: Copy from gnulib.
4975         * lib/flexmember.h: New file, from gnulib.
4976         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4978 2016-09-07  Noam Postavsky  <npostavs@gmail.com>
4980         Don't --load directories
4982         * lisp/startup.el (command-line-1): Only pass expanded FILENAME argument
4983         of --load when it refers to a normal file, since `load' doesn't handle
4984         directories (Bug #16406).
4986 2016-09-07  Peder O. Klingenberg  <peder@klingenberg.no>
4988         Avoid error in icalendar--read-element
4990         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
4991         stack overflow by not using regex to extract values from calendar
4992         events. (Bug#24315)
4994 2016-09-07  Kaushal Modi  <kaushal.modi@gmail.com>
4996         Fix back-white <-> black-white typo
4998         * lisp/ps-print.el (ps-begin-job): back-white -> black-white (Bug#24308)
5000 2016-09-07  Alan Third  <alan@idiocy.org>
5002         Fix cursor at bottom left of rectangle (bug#24364)
5004         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
5005         require rectangle--point-crutches to be set.
5007 2016-09-07  Eli Zaretskii  <eliz@gnu.org>
5009         Fix documentation of convert-standard-filename on MS-Windows
5011         * lisp/files.el (convert-standard-filename): Doc fix.  (Bug#24387)
5013         * etc/NEWS: Suggest a way for mirroring slashes where previously
5014         'convert-standard-filename' was used.
5016 2016-09-06  Paul Eggert  <eggert@cs.ucla.edu>
5018         Use DEV_TTY more consistently
5020         * src/conf_post.h (DEV_TTY): Move from here ...
5021         * src/keyboard.c, src/keyboard.h: ... to here, as it doesn’t need
5022         to be visible everywhere.  Make it a constant.
5023         * src/keyboard.c (handle_interrupt, Fset_quit_char):
5024         * src/process.c (create_process): Prefer DEV_TTY to "/dev/tty".
5026 2016-09-06  Eli Zaretskii  <eliz@gnu.org>
5028         Avoid assertion violations when using marker positions
5030         * src/intervals.c (set_point_from_marker): If MARKER comes from
5031         another buffer, recalculate its byte position before using it to
5032         set point.
5033         * src/marker.c (set_marker_internal): If POSITION is a marker from
5034         another buffer, recalculate its byte position before using it.
5035         (Bug#24368)
5037 2016-09-06  Alan Mackenzie  <acm@muc.de>
5039         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Fix coding bug
5041 2016-09-06  Alan Mackenzie  <acm@muc.de>
5043         New options for handling of literals in c-syntactic-re-search-forward
5045         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): `noerror' can
5046         be given the values `before-literal' and `after-literal', so that when a
5047         search fails, and the `bound' is inside a literal, point is left respectively
5048         before or after that literal.
5050 2016-09-05  Eli Zaretskii  <eliz@gnu.org>
5052         Avoid assertion violations when scrolling narrowed buffer
5054         * src/window.c (window_scroll_pixel_based):
5055         * src/xdisp.c (pos_visible_p): Don't allow simulated redisplay to
5056         start outside the accessible portion of the buffer.  This avoids
5057         assertion violations when some Lisp narrows the buffer to less
5058         than the current window, and then attempts to scroll the buffer.
5060 2016-09-05  Eli Zaretskii  <eliz@gnu.org>
5062         Treat SIGINT correctly in GUI sessions on MS-Windows
5064         * src/w32proc.c (sys_signal): Don't reject SIGINT, as it is
5065         supported by MS runtime.
5066         * src/term.c (DEV_TTY): Move from here ...
5067         * src/conf_post.h (DEV_TTY): ... to here.  Separate definitions
5068         for WINDOWSNT and for the rest.
5069         * src/keyboard.c (handle_interrupt_signal): Use DEV_TTY instead of
5070         a literal "/dev/tty".
5072         * etc/NEWS: Mention the behavior change.
5074 2016-09-04  Alan Third  <alan@idiocy.org>
5076         Fix synthetic bold on macOS retina displays
5078         * src/macfont.m (macfont_draw): Multiply the synthetic bold scaling
5079         factor by the OS window backing scale factor.
5081 2016-09-04  Tino Calancha  <tino.calancha@gmail.com>
5083         image-dired: Report when a necessary executable is not found
5085         See discussion on:
5086         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00552.html
5087         * lisp/image-dired.el (image-dired-cmd-rotate-original-program)
5088         (image-dired-cmd-create-thumbnail-program)
5089         (image-dired-cmd-create-temp-image-program)
5090         (image-dired-cmd-rotate-thumbnail-program)
5091         (image-dired-cmd-write-exif-data-program)
5092         (image-dired-cmd-read-exif-data-program):
5093         Use executable-find to set the default value of this option.
5094         (image-dired-cmd-rotate-original-program): Idem.
5095         Search for program 'convert' if 'jpegtran' is not available.
5096         (image-dired-cmd-rotate-original-options):
5097         Set the default value consistent with the executable in
5098         image-dired-cmd-rotate-original-program.
5099         (image-dired-create-thumb, image-dired-display-image)
5100         (image-dired-rotate-thumbnail, image-dired-rotate-original)
5101         (image-dired-set-exif-data, image-dired-get-exif-data):
5102         Throw and error when the executable used in the function is missing.
5103         (image-dired-next-line, image-dired-previous-line):
5104         Use 'forward-line'.
5106 2016-09-03  Tino Calancha  <tino.calancha@gmail.com>
5108         image-type-from-file-name: Perform a case insensitive match
5110         Fix Bug#24317
5111         * lisp/image.el (image-type-from-file-name): Bind case-fold-search
5112         to a non-nil value to force a case insensitive match.
5113         * lisp/image-dired.el (image-dired-rotate-original):
5114         Use image-type (Bug#24317).
5115         (image-dired-get-exif-file-name): Idem.
5116         Set 'no-exif-data-found' and 'data' in same setq call.
5117         Use file-attribute-modification-time.
5119 2016-09-03  Tino Calancha  <tino.calancha@gmail.com>
5121         image-increase-size: Fix non-interactive calls
5123         * lisp/image.el (image-increase-size, image-decrease-size):
5124         Compute a floating point division.
5125         Problem reported in:
5126         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00067.html
5128 2016-09-03  Robert Cochran  <robert-git@cochranmail.com>
5130         Fix uses of (call-interactively) in lisp/emacs-lisp/checkdoc.el
5132         Passing the prefix argument as the 3rd argument to 'call-interactively'
5133         causes the prefix argument to be interpreted as events, which is not
5134         only wrong, but also causes a type error, as 'current-prefix-arg' can
5135         never be a vector as 'call-interactively' expects.  'call-interactively'
5136         automatically passes its prefix argument to the called function, so just
5137         do that, eliminating faulty behavior.
5139         * lisp/emacs-lisp/checkdoc.el (checkdoc-ispell):
5140         (checkdoc-ispell-current-buffer):
5141         (checkdoc-ispell-interactive):
5142         (checkdoc-ispell-message-text):
5143         (checkdoc-ispell-start):
5144         (checkdoc-ispell-continue):
5145         (checkdoc-ispell-comments):
5146         (checkdoc-ispell-defun):
5147         Do not pass 'current-prefix-arg' to 'call-interactively' as an event
5148         vector; merely allow it to propagate forward to the interactive call.
5150 2016-09-03  Richard Stallman  <rms@gnu.org>
5152         Fix mail-combine-fields
5154         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
5155         avoid losing our place in the search loop.
5157 2016-09-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5159         Check actual contents before promting about changed file
5161         * lisp/userlock.el (userlock--check-content-unchanged)
5162         (userlock--ask-user-about-supersession-threat): New functions.
5163         * src/filelock.c (lock_file): Use them to avoid spurious prompting.
5164         * doc/lispref/buffers.texi (Modification Time): Update doc of
5165         ask-user-about-supersession-threat.
5167 2016-09-02  Michael Albinus  <michael.albinus@gmx.de>
5169         Make a reference to fakecygpty in the Tramp manual
5171         * doc/misc/tramp.texi (Windows setup hints): Make a reference to
5172         fakecygpty on the Emacs Wiki.
5173         (Frequently Asked Questions): Fix url.
5175 2016-09-01  Paul Eggert  <eggert@cs.ucla.edu>
5177         Don’t create fd >= FD_SETSIZE
5179         This avoids a potential crash if too many subprocesses (Bug#24325).
5180         * src/process.c [HAVE_SETRLIMIT]: Include <sys/resource.h>.
5181         (init_process_emacs): If ulimit -n is greater than FD_SETSIZE,
5182         set it to FD_SETSIZE.
5184 2016-09-01  Alan Mackenzie  <acm@muc.de>
5186         Fix c-declaration-limits to return correct limits in all cases.
5188         This function is the guts of c-indent-defun and c-mark-function.
5190         In particular, when c-defun-tactic is nil, return a correct value rather than
5191         always nil, and when it's 'go-outward, go through an intricate algorithm to
5192         determine the requisite narrowing before the "top-level" defuns go to work.
5194         * lisp/progmodes/cc-cmds.el (c-narrow-to-most-enclosing-decl-block): Enhance
5195         to take additional optional parameter LEVEL, saying how many enclosing levels
5196         of decl-block to narrow to.
5197         (c-declaration-limits): Introduce algorithm to determine narrowing.  Use
5198         c-where-wrt-to-brace-block to determine whether to go back to BOD to determine
5199         lower bound.
5201 2016-09-01  Eli Zaretskii  <eliz@gnu.org>
5203         * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make commentary more accurate.
5205 2016-09-01  Eli Zaretskii  <eliz@gnu.org>
5207         Avoid compiler warnings with MinGW64 GCC 6
5209         * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make the prototype match
5210         the GCC 6 builtin, to avoid warnings.  For more details, see
5211         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00721.html.
5213 2016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5215         Fix over-substitution of quotes on error
5217         Problem reported by Tino Calancha in:
5218         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00000.html
5219         * src/print.c (print_error_message):
5220         Substitute quotes in errmsg only when gotten from a property.
5222 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5224         Improve testing of etags
5226         * test/manual/etags/y-src/cccp.c:
5227         * test/manual/etags/y-src/parse.c: Correct #line directives to
5228         allow testing invalidate_nodes in etags.c.
5229         * test/manual/etags/ETAGS.good_1:
5230         * test/manual/etags/ETAGS.good_2:
5231         * test/manual/etags/ETAGS.good_3:
5232         * test/manual/etags/ETAGS.good_4:
5233         * test/manual/etags/ETAGS.good_5:
5234         * test/manual/etags/ETAGS.good_6:
5235         * test/manual/etags/CTAGS.good: Adapt to changes in test files.
5237 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5239         * lib-src/etags.c (invalidate_nodes): Fix another thinko.
5241 2016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5243         Fix etags problems found by static checking
5245         * lib-src/etags.c (invalidate_nodes, put_entry):
5246         Remove now-unnecessary tests for null pointers.  Simplify.
5247         (put_entries): Rewrite to avoid GCC 6.2 warning about
5248         dereferencing null pointer.
5250 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5252         Fix a thinko in etags.c
5254         * lib-src/etags.c (invalidate_nodes): Don't try to dereference
5255         a null pointer.
5257 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5259         Avoid recursive calls in etags
5261         * lib-src/etags.c (stack_entry): New struct.
5262         (push_node, pop_node, put_entry): New functions.
5263         (free_tree, add_node, invalidate_nodes, put_entries): Re-implement
5264         in a non-recursive way, to avoid stack overflow.  (Bug#5847)
5266 2016-08-31  Leo Liu  <sdl.web@gmail.com>
5268         Add 451 to url-http-codes
5270         * lisp/url/url-http.el (url-http-codes): Add 451.
5272 2016-08-30  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
5274         * src/editfns.c (Fformat_message): Fix doc to match current behavior.
5276 2016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5278         Minor doc quoting fixes
5280         * doc/misc/htmlfontify.texi (Interactive):
5281         * lisp/htmlfontify.el (htmlfontify-buffer):
5282         Spell out character names, for clarity.  The old doc string
5283         generated the *Help* text ‘^L ([FF]) or ¤ (244)’, where ‘[FF]’
5284         stands for a form feed character; this was confusing.
5285         * lisp/electric.el (electric-quote-mode):
5286         * src/doc.c (syms_of_doc):
5287         * src/editfns.c (Fformat_message):
5288         Remove no-longer-necessary ‘\=’s in doc strings.
5290 2016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5292         Update from gnulib
5294         This incorporates:
5295         2016-08-30 intprops: tune INT_NEGATE_OVERFLOW for GCC 5 and 6
5296         2016-08-29 xalloc-oversized.h: port change to GCC 6.2.0
5297         2016-08-29 intprops.h: port recent changes to GCC 6.2.0
5298         2016-08-29 intprops.h: use __typeof__ with GCC 7
5299         2016-08-29 intprops.h, xalloc-oversized.h: work with gcc 7
5300         2016-08-24 intprops: fix paren typo on old platforms
5301         2016-08-24 intprops: port to OpenVMS
5302         * lib/intprops.h, lib/xalloc-oversized.h: Copy from gnulib.
5304 2016-08-30  Tassilo Horn  <tsdh@gnu.org>
5306         Fix rules for \phi and \varphi which were reversed
5308         * lisp/leim/quail/latin-ltx.el: Special-case phi/varphi because those
5309           are reversed in ucs-names.  Also remove FIXME stating sigma/varsigma
5310           were reversed which is not true (anymore?).
5312 2016-08-30  Tassilo Horn  <tsdh@gnu.org>
5314         Fix prettification of \phi, \varphi, and \varsigma
5316         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Fix
5317           prettification of \phi, \varphi, and \varsigma.
5319         Concretely, \phi's symbol was actually varphi, \varphi was missing, and
5320         \varsigma was commented out with a FIXME that it was reversed with
5321         \sigma which it was not.
5323 2016-08-30  Karl Fogel  <kfogel@red-bean.com>
5325         Use normal double quotes in TeX / LaTeX comments
5327         * lisp/textmodes/tex-mode.el (tex-insert-quote): When in a comment,
5328           default to inserting a normal double quote (") instead of TeX-style
5329           open (``) or close ('') quote marks.
5331         * etc/NEWS (TeX mode): Note the change.
5333         * test/lisp/electric-tests.el (autowrapping-7): Adjust accordingly.
5335         See this thread for discussion:
5337           https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00611.html
5338           From: Karl Fogel <kfogel {_AT_} red-bean.com>
5339           To: Emacs Development <emacs-devel {_AT_} gnu.org>
5340           Subject: [PATCH] Have LaTeX mode use normal double quotes in comments.
5341           Date: Mon, 29 Aug 2016 14:44:12 -0500
5342           Message-ID: <87twe3icmr.fsf@red-bean.com>
5344 2016-08-30  Alan Mackenzie  <acm@muc.de>
5346         Correctly analyze C++ list initialization in member init areas.
5348         * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Remove a
5349         superfluous call to c-backward-syntactic-ws.
5350         (c-looking-at-or-maybe-in-bracelist): Change calling convention, so that it
5351         reports encountering the Java "new" keyword.  Add, as an alternative, a check
5352         that we can move back over member initializations, and handle this as finding
5353         a brace block.
5354         (c-looking-at-special-brace-list, c-guess-continued-construct): Adapt to the
5355         new calling convention of c-looking-at-or-maybe-in-bracelist.
5356         (c-guess-basic-syntax, CASE 5A.3): Replace lots of inline ad-hoc code with
5357         calls to c-backward-over-enum-header and c-looking-at-or-maybe-in-bracelist,
5358         using the extra info from the value of that function to generate a
5359         topmost-into-cont element where needed (in Java).
5361         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Adapt to the new
5362         calling convention of c-looking-at-or-maybe-in-bracelist.
5364         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Adapt to the new calling
5365         convention of c-looking-at-or-maybe-in-bracelist.
5367 2016-08-30  Michael Albinus  <michael.albinus@gmx.de>
5369         Use `file-attribute-*' in Tramp
5371         * lisp/net/tramp-compat.el (tramp-compat-file-attribute-type)
5372         (tramp-compat-file-attribute-link-number)
5373         (tramp-compat-file-attribute-user-id)
5374         (tramp-compat-file-attribute-group-id)
5375         (tramp-compat-file-attribute-modification-time)
5376         (tramp-compat-file-attribute-size)
5377         (tramp-compat-file-attribute-modes): New defaliases.
5379         * lisp/net/tramp.el (tramp-handle-file-modes)
5380         (tramp-handle-file-newer-than-file-p)
5381         (tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
5382         (tramp-handle-set-visited-file-modtime)
5383         (tramp-handle-verify-visited-file-modtime)
5384         (tramp-get-local-gid, tramp-check-cached-permissions):
5385         * lisp/net/tramp-adb.el (tramp-adb-handle-file-directory-p)
5386         (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file):
5387         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
5388         (tramp-gvfs-handle-file-directory-p)
5389         (tramp-gvfs-handle-write-region, tramp-gvfs-get-remote-uid)
5390         (tramp-gvfs-get-remote-gid):
5391         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
5392         (tramp-sh-handle-set-visited-file-modtime)
5393         (tramp-sh-handle-verify-visited-file-modtime)
5394         (tramp-sh-handle-file-newer-than-file-p)
5395         (tramp-sh-handle-file-ownership-preserved-p)
5396         (tramp-do-copy-or-rename-file)
5397         (tramp-do-copy-or-rename-file-via-buffer)
5398         (tramp-do-copy-or-rename-file-directly)
5399         (tramp-do-copy-or-rename-file-out-of-band)
5400         (tramp-sh-handle-file-local-copy)
5401         (tramp-sh-handle-write-region):
5402         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
5403         (tramp-smb-handle-copy-file)
5404         (tramp-smb-handle-file-directory-p)
5405         (tramp-smb-handle-file-writable-p)
5406         (tramp-smb-handle-insert-directory): Use them.
5408 2016-08-30  Martin Rudalics  <rudalics@gmx.at>
5410         In `pop-to-buffer' handle case where `display-buffer' fails (Bug#24332)
5412         * lisp/window.el (pop-to-buffer): Don't assume that
5413         `display-buffer' has supplied a window (Bug#24332).
5414         Rename BUFFER argument to BUFFER-OR-NAME.
5415         * doc/lispref/windows.texi (Switching Buffers): Fix
5416         `pop-to-buffer' documentation.
5418 2016-08-29  Alan Third  <alan@idiocy.org>
5420         Clarify docstrings
5422         * src/nsterm.m: Clarified that ns-x-modifier variables require a symbol.
5424 2016-08-29  Michael Albinus  <michael.albinus@gmx.de>
5426         Use `process-live-p' in Tramp
5428         * lisp/net/tramp-compat.el (tramp-compat-process-live-p): New defun.
5430         * lisp/net/tramp.el (tramp-connectable-p, tramp-handle-file-remote-p)
5431         (tramp-handle-file-notify-valid-p)
5432         (tramp-action-process-alive, tramp-action-out-of-band)
5433         (tramp-wait-for-regexp):
5434         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
5435         (tramp-adb-maybe-open-connection):
5436         * lisp/net/tramp-cache.el (tramp-get-connection-property):
5437         * tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
5438         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
5439         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
5440         * tramp-sh.el (tramp-process-sentinel)
5441         (tramp-sh-handle-file-notify-add-watch)
5442         (tramp-maybe-open-connection):
5443         * lisp/net/lisp/net/lisp/net/tramp-smb.el (tramp-smb-action-with-tar)
5444         (tramp-smb-handle-copy-directory, tramp-smb-action-get-acl)
5445         (tramp-smb-handle-process-file, tramp-smb-action-set-acl)
5446         (tramp-smb-get-cifs-capabilities)
5447         (tramp-smb-get-stat-capability)
5448         (tramp-smb-maybe-open-connection, tramp-smb-wait-for-output)
5449         (tramp-smb-kill-winexe-function): Use it.
5451 2016-08-29  Eli Zaretskii  <eliz@gnu.org>
5453         Avoid crashes for invalid value of key modifiers
5455         * src/keyboard.c (parse_solitary_modifier): If the argument SYMBOL
5456         is not a symbol, don't try to recognize it.  See
5457         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00502.html
5458         for the details.
5460         * test/src/keymap-tests.el (keymap-where-is-internal-test): New
5461         test, for testing the above fix.
5463 2016-08-29  Oleh Krehel  <ohwoeowho@gmail.com>
5465         Make dired-do-compress understand files with spaces in them
5467         * lisp/dired-aux.el (dired-compress-file): Add `shell-quote-argument'
5468           and `literal' flag to `replace-regexp-in-string'.
5470 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5472         * INSTALL.REPO: Suggest Texinfo 4.13 or later.
5474 2016-08-28  Simen Heggestøyl  <simenheg@gmail.com>
5476         Add tests for dom.el
5478         * test/lisp/dom-tests.el: New file with tests for dom.el.
5480 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5482         Memory allocator alignment fixes
5484         These changes remove some assumptions about heap allocator
5485         alignment that may not be true on unusual platforms.
5486         * src/alloc.c (POWER_OF_2): New macro.
5487         (ROUNDUP): Use it.
5488         (BLOCK_ALIGN): Verify that it is a power of 2.
5489         (aligned_alloc): Check that alignment passed to posix_memalign
5490         satisfies POSIX restrictions.
5491         (lisp_align_malloc): Check that size passed to aligned_alloc
5492         satisfies C11 restrictions.
5493         (MALLOC_IS_GC_ALIGNED): Check that GCALIGNMENT is 8, since the
5494         code has not been verified to work with other GCALIGNMENT values
5495         and the ice is thin here.  On GNU/Linux, malloc can return a value
5496         that is a multiple of 8 but not 16, even though __alignof__
5497         (max_align_t) is 16.  See:
5498         https://gcc.gnu.org/ml/gcc-patches/2016-08/msg01902.html
5499         (lmalloc) [USE_ALIGNED_ALLOC]: Use aligned_alloc only if size
5500         is a multiple of alignment, since C11 says the behavior is
5501         undefined otherwise.
5502         (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on size_t, as in
5503         general this macro is restricted to signed types.  Remove
5504         assertion that the result is a multiple of GCALIGNMENT, as that
5505         need not be true.
5507 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5509         Pacify --enable-gcc-warnings for lib-src/pop.c
5511         * lib-src/pop.c: Include c-ctype.h.
5512         (socket_connection): Pacify --enable-gcc-warnings by rewriting to
5513         avoid 'if (v = E) ...'.  Use c_tolower, instead of a combination
5514         of the (undeclared) isupper and tolower.  Fix pointer constness
5515         problem.
5517 2016-08-27  Alan Mackenzie  <acm@muc.de>
5519         Handle the C++ "identifiers" "final" and "override" correctly.
5521         This fixes bug #24319, allowing destructors affixed with these identifiers to
5522         be correctly fontified.
5524         * lisp/progmodes/cc-engine.el (c-forward-type, c-forward-decl-or-cast-1):
5525         After reaching the "end" of a type expression, skip over any occurrences of
5526         c-type-decl-suffix-ws-ids-key.
5528         * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "override" and
5529         "final" from the C++ value.
5530         (c-type-decl-suffix-ws-ids-kwds, c-type-decl-suffix-ws-ids-key): New lang
5531         constants/variables for "final" and "override".
5533 2016-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
5535         * lisp/textmodes/page-ext.el (pages-directory-mode): Use special-mode.
5537 2016-08-27  Alan Mackenzie  <acm@muc.de>
5539         Handle template delimiters in C++ member init constructs.
5541         * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Add
5542         handling for "<....>"s.
5544 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
5546         Fix etags test suite messed up by merges from emacs-25
5548         * test/manual/etags/go-src/test.go:
5549         * test/manual/etags/go-src/test1.go: Move from test/etags/.
5550         * test/manual/etags/ruby-src/test1.ru: Replace test1.ruby.
5551         * test/etags/: Directory deleted.
5553 2016-08-26  Simen Heggestøyl  <simenheg@gmail.com>
5555         Add "supports" to list of CSS at-rules
5557         * lisp/textmodes/css-mode.el (css-at-ids): Add "supports" at-rule.
5559 2016-08-26  Michael Albinus  <michael.albinus@gmx.de>
5561         * lisp/net/tramp-sh.el (tramp-get-remote-perl): Perform a basic check.
5563         (Bug#22478)
5565 2016-08-25  Tino Calancha  <tino.calancha@gmail.com>
5567         Rename option to shell-command-dont-erase-buffer
5569         Suggested by Clément Pit--Claudel in:
5570         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00487.html
5571         * lisp/simple.el (shell-command-dont-erase-buffer):
5572         (shell-command--save-pos-or-erase):
5573         (shell-command--set-point-after-cmd):
5574         (shell-command-on-region):
5575         * doc/emacs/misc.texi (shell-command-dont-erase-buffer):
5576         * etc/NEWS (Changes in Emacs 25.2):
5577         Rename from shell-command-not-erase-buffer.
5579 2016-08-25  Alan Mackenzie  <acm@muc.de>
5581         Fix an infinite loop in C++ Mode when we have "{ .... [ .... }"
5583         * lisp/progmodes/cc-fonts.el (c-font-lock-c++-lambda-captures): In the inner
5584         `while' form's condition, check for "\\s)" rather than merely "\\]", so that
5585         the loop won't hang at a "terminating" paren of a different type (due to the
5586         c-syntactic-re-search-forward at the end of the loop stopping at such
5587         characters).
5589 2016-08-25  Tino Calancha  <tino.calancha@gmail.com>
5591         call-shell-region: New defun
5593         Suggested by Stefan Monnier in Bug#22679.
5594         * lisp/subr.el (call-shell-region): New defun; execute a command
5595         in an inferior shell with the buffer region as input.
5596         * lisp/simple.el (shell-command-on-region): Use it.
5597         * lisp/gnus/message.el (message-do-fcc): Idem.
5598         * doc/lispref/processes.texi: Document call-shell-region in the manual.
5599         ;* etc/NEWS: Add entry for this new function.
5601 2016-08-25  Martin Rudalics  <rudalics@gmx.at>
5603         In ‘clone-indirect-buffer’ fix argument mixup (Bug#24306)
5605         * lisp/simple.el (clone-indirect-buffer): Add value for ACTION
5606         argument in `pop-to-buffer' call (Bug#24306).
5608 2016-08-25  Martin Rudalics  <rudalics@gmx.at>
5610         Some fixes around `delete-other-frames' and `next-frame'
5612         * src/frame.c (Fdelete_frame): Clarify doc-string.
5613         * lisp/frame.el (delete-other-frames): Delete other frames on
5614         FRAME's terminal instead of the current terminal.  Delete
5615         non-minibuffer-only surrogate frames too.  See
5616         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00467.html
5617         * doc/lispref/frames.texi (Deleting Frames): Minor fixes for
5618         docs of `delete-frame' and `frame-live-p'.  Add entry for
5619         `delete-other-frames'.
5620         (Finding All Frames): Fix doc of `next-frame'.
5622 2016-08-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5624         Find message.el thumbnail toggling
5626         * lisp/gnus/message.el (message-toggle-image-thumbnails):
5627         Don't infloop when toggling thumbnails.
5629 2016-08-24  Alan Third  <alan@idiocy.org>
5631         Fix macOS 12 deprecation notices
5633         * src/nsterm.h: Add #defines to allow older versions of macOS to use the
5634         new constant names.
5635         * src/nsmenu.m: Replace old constant names with
5636         new.
5637         (fillWithWidgetValue): Remove calls to deprecated
5638         setMenuChangedMessagesEnabled.
5639         * src/nsterm.m: Replace old constant names with new.
5640         * src/nsfns.m: Replace old constant names with new.
5642 2016-08-23  Alan Mackenzie  <acm@muc.de>
5644         Analyze and fontify correctly a C++ `enum' with colon, but lacking a tag.
5646         * lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for "enum"
5647         directly preceding the colon, and handle it.
5649 2016-08-23  Noah Friedman  <friedman@splode.com>
5651         * src/xfns.c (Fx_change_window_property): Modify previous change.
5652         Instead of forcing format to 8 for strings, check that the length of
5653         the string is appropriate for whatever format given.
5654         (Fx_window_property_attributes): If prop isn't found on frame's inner window,
5655         try its outer window.  This mimics the behavior of Fx_window_property.
5657 2016-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
5659         Fix invalid image rotations
5661         * lisp/image.el (image-rotate): Limit rotation to 360 degrees.
5663 2016-08-23  Tino Calancha  <tino.calancha@gmail.com>
5665         call-process instead of call-process-region with empty region
5667         * lisp/calc/calc-graph.el (calc-graph-show-tty):
5668         Use call-process and shell-command-switch.
5670 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5672         Merge from origin/emacs-25
5674         927afa1 ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 RC2
5675         6bf83b5 * etc/AUTHORS: Update the AUTHORS file
5676         73cbb81 ; ChangeLog spelling fixes
5677         9b99772 Some assorted documentation clarifications
5678         37d4723 Improve commentary in src/character.h
5679         5ccd593 ; Fix typo in /etc/NEWS
5680         96e3d16 * etc/NEWS: Mention the change in json-encode-string.
5681         2e524034 ; * etc/NEWS: Mention incompatible change in url-http-create...
5682         2e4e74e Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
5683         66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
5685         # Conflicts:
5686         #       ChangeLog.2
5687         #       lisp/ldefs-boot.el
5689 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5691         Merge from origin/emacs-25
5693         66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
5695 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5697         Merge from origin/emacs-25
5699         8c2946e In NEWS describe new handling of window margins (Bug#24193)
5700         0cee66c Facultatively ignore margins when splitting and resizing wind...
5701         8d68147 Document CATEGORY arg to modify-category-entry
5702         8342e74 Document char-script-table's effect on word motion
5703         e9ff485 Further fix for 'url-http-create-request' and multibyte strings
5704         0695235 Fix docstring of eval-expression
5705         98b01dd Clarify when 'cursor' property is in effect
5706         75f1882 Convert the remaining strings to unibyte before concatenating
5707         d2db5dd Fix bug with handling the bidi cache
5708         ccd0e92 * doc/lispref/text.texi (Change Hooks): Minor copyedits.
5709         f785ff4 Clarify documentation of before/after-change-functions
5710         3c9cb57 Document use of vectors in keymaps
5712         # Conflicts:
5713         #       src/xdisp.c
5715 2016-08-22  Michael Albinus  <michael.albinus@gmx.de>
5717         Handle remote file names in gdb-mi.el
5719         * lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
5720         If `default-directory' is remote, full file names are adapted
5721         accordingly.  (Bug#23608)
5723 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
5725         Display mini-window resized even when there are several frames
5727         * src/xdisp.c (x_consider_frame_title): Bind inhibit-redisplay to
5728         t to avoid resizing back the mini-window as result of considering
5729         the title of other frames.  (Bug#24285)
5730         (redisplay_window): No need to bind inhibit-redisplay here.
5732 2016-08-22  Michael Albinus  <michael.albinus@gmx.de>
5734         Explain gdb warning on remote hosts
5736         * doc/misc/tramp.texi (Remote processes): Explain gdb warning
5737         on remote hosts.  (Bug#4604, Bug#6360, Bug#622569)
5739 2016-08-21  Martin Rudalics  <rudalics@gmx.at>
5741         Fix (next-frame nil t) crash (Bug#24281)
5743         * src/frame.c (candidate_frame): Check minibuf argument before
5744         comparing it to zero (Bug#24281).
5746 2016-08-21  Noah Friedman  <friedman@splode.com>
5748         Fix interpretation of signed vs unsigned values when retrieving X
5749         Window properties, and make sure the full value is returned when not
5750         parsed.
5752         New subr to export type and format information about X Window
5753         properties to lisp.
5755         * src/xselect.c (selection_data_to_lisp_data): Treat any data as
5756         unsigned unless its actual type is INTEGER.
5757         CARDINALs, in particular, are unsigned.
5759         * src/xfns.c (Fx_change_window_property): If value is a string, ignore
5760         any provided format and force to 8.
5761         (x_window_property_intern): If returning value as a string, the length
5762         is actual_size times the actual format of each element, which is not
5763         necessarily bytes.
5764         (Fx_window_property_attributes): New subr.
5765         (syms_of_xfns): Declare it.
5767 2016-08-21  Noam Postavsky  <npostavs@gmail.com>
5769         Improve error when installing non-package dirs
5771         * lisp/emacs-lisp/package.el (package-dir-info): Throw meaningful error
5772         when no file with package info is found (Bug #19851).
5774 2016-08-21  Alan Mackenzie  <acm@muc.de>
5776         Adapt CC Mode for C++11 uniform initialization.
5778         For fontification, introduce a new "context", 'non-decl, to be used for
5779         brace
5780         lists; also a new value for the property 'c-type, called 'c-not-decl.
5782         * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): Check that
5783         an ostensible symbol we're going to move over isn't a keyword.
5784         (c-forward-decl-or-cast-1): CASE 1: Where we have two consecutive identifiers
5785         (hence a declaration), and an unmatched open paren, perform
5786         c-fdoc-shift-type-backwards to recognize the partial construct correctly.
5787         Whilst checking a type decl expression, check for and handle C++11's "copy
5788         initialization", where we have <type>(<constant>).  Recognize
5789         <id><id>(... (where the paren is unclosed) as a declaration.
5790         (c-looking-at-or-maybe-in-bracelist): New function, extracted from
5791         c-inside-bracelist-p.  Recognize as bracelists "{"s which are preceded by
5792         valid tokens other than "=".  Recognize a bracelist when preceded by a
5793         template declaration.
5794         (c-inside-bracelist-p): Call c-looking-at-or-maybe-in-bracelist in place of
5795         much inline code.
5796         (c-looking-at-inexpr-block): Amend so that it won't wrongly recognise an
5797         initialization starting "({" as an in-expression block, by checking for
5798         semicolons, as opposed to commas, separating elements inside it.
5799         (c-guess-continued-construct): (CASE B-2): Recognize a brace-list-open by
5800         calling c-looking-at-or-maybe-in-bracelist rather than checking for a
5801         preceding "=".  (CASE B-5): New code to recognize new construct "return {
5802         ...}".
5803         (c-guess-basic-syntax): (CASE 5A.3): Additionally recognize a "{" preceded by
5804         "return", or "{" preceded by <type><identifier> as a bracelist.
5806         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize brace
5807         lists, giving them `context' 'non-decl.  Pass over elements of one by regexp
5808         search for "," rather than calling c-forward-decl-or-cast-1.
5810         * lisp/progmodes/cc-langs.el (c-return-kwds, c-return-key): New lang
5811         constants/variables to recognize "return".
5812         (c-pre-id-bracelist-key): New lang constant/variable to recognize tokens
5813         which, when preceding an identifier followed by a brace, signify the brace as
5814         a bracelist.
5816         * lisp/progmodes/cc-mode.el (c-fl-decl-start): When searching outwards for
5817         the start of a "local" declaration, move out from an enclosing brace when
5818         that is the start of a brace list.
5820 2016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5822         Update from gnulib
5824         This incorporates:
5825         2016-08-17 maint: preprocessor changes to support z/OS
5826         2016-08-17 string: rename to avoid '__string'
5827         * doc/misc/texinfo.tex, lib/alloca.in.h, lib/string.in.h:
5828         Copy from gnulib.
5830 2016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5832         Minor text-quoting-style fixes
5834         * src/charset.c (check_iso_charset_parameter):
5835         * src/frame.c (store_frame_param):
5836         * src/xselect.c (x_fill_property_data):
5837         Use grave accent for left single quote in ‘error’ format strings.
5839 2016-08-21  Martin Rudalics  <rudalics@gmx.at>
5841         Fix semantics of 'minibuffer' frame parameter
5843         The 'minibuffer' frame parameter is now t for a normal frame
5844         (a frame with a root window plus a minibuffer window) and the
5845         frame's minibuffer window for a minibuffer-less frame (a frame
5846         whose minibuffer window is on another frame).  See also:
5847         https://lists.gnu.org/archive/html/emacs-devel/2016-07/msg01259.html
5849         * src/frame.c (make_frame, make_frame_without_minibuffer)
5850         (make_minibuffer_frame): When assigning the frame's minibuffer
5851         window also store corresponding 'minibuffer' frame parameter.
5852         (store_frame_param): Move the 'minibuffer' parameter checks to
5853         the beginning so we can silently override the value before it
5854         gets stored in the parameter alist.  Fix error handling.
5855         (Fframe_parameters): Return value of 'minibuffer' parameter
5856         unmodified.
5858         * lisp/frameset.el (frameset-filter-minibuffer): When the cdr of
5859         the parameter is a minibuffer window, save (minibuffer . nil)
5860         instead of (minibuffer . t).
5861         (frameset--reuse-frame): To find a non-minibuffer-only frame
5862         look out for a frame whose 'minibuffer' parameter is t instead
5863         of that frame's minibuffer window.
5864         (frameset-minibufferless-first-p): To find a minibuffer-less
5865         frame look out for a frame whose 'minibuffer' parameter is a
5866         window instead of nil.
5868 2016-08-20  Alan Mackenzie  <acm@muc.de>
5870         * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Resolve overelaborate "nil"
5872 2016-08-20  Alan Mackenzie  <acm@muc.de>
5874         In c-\(go-\)?-\(up-\|down-\)?list-\(forward\|backward\) check limit isn't nil
5876         Check the limit both at macro expansion time (for a hard coded nil) and at run
5877         time in the generated code.  Tidy up these macros generally.
5879         * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Check `limit' is present and
5880         not identically nil before generating a narrow-to-region call.  Generate code
5881         to check `limit' is not nil at run time.
5882         (c-go-list-forward, c-go-list-backward): Remove the generation of redundant
5883         narrow-to-region, instead calling c-safe-scan-lists directly.
5884         (c-go-up-list-forward, c-go-up-list-backward, c-go-down-list-forward)
5885         (c-go-down-list-backward): Invoke the corresponding macros without the "go-"
5886         to determine the destination position instead of generating a redundant
5887         narrow-to-region.
5889 2016-08-19  Robert Cochran  <robert-git@cochranmail.com>
5891         * lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
5893         The docstring referenced a non-existant parameter, as well as a
5894         parameter that has been renamed since the docstring was written. Fix
5895         both errors, fixing (Bug#24182).
5897 2016-08-19  Alan Mackenzie  <acm@muc.de>
5899         Amend hack-local-variables-prop-line not always to return any mode on line 1.
5901         This fixes bug #24266.
5903         * lisp/files.el (hack-local-variables-prop-line): Change the name of the
5904         parameter mode-only to handle-mode.  Change its meaning, such that it being
5905         set to a value non-nil and not t removes any mode parameter from the result
5906         list.  Leave its values nil and t with the same meanings they had.
5907         (hack-local-variables): Call hack-local-variables-prop-line appropriately.
5909 2016-08-19  Daiki Ueno  <ueno@gnu.org>
5911         Improve doc string of epg-*-program
5913         * lisp/epg-config.el (epg-gpg-program, epg-gpgsm-program):
5914         Suggest to use Customize when setting.  (Bug#24229)
5916 2016-08-19  Tino Calancha  <tino.calancha@gmail.com>
5918         Add tests for Bug#24264
5920         * test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-test-bug24264):
5921         Add test for Bug#24264.
5922         (cl-seq-fill-test, cl-seq-replace-test)
5923         (cl-seq-remove-test ,cl-seq-delete-test)
5924         (cl-seq-remove-duplicates-test, cl-seq-substitute-test)
5925         (cl-seq-nsubstitute-test, cl-seq-position-test)
5926         (cl-seq-count-test, cl-seq-mismatch-test)
5927         (cl-seq-search-test, cl-seq-test-bug24264):
5928         Add tests for all functions in the file; test all keywords.
5930 2016-08-18  Johan Bockgård  <bojohan@gnu.org>
5932         Fix bug in --eval reply message from server
5934         * lisp/server.el (server-reply-print): Fix check for truncated quote
5935         sequence at end of message. Problem reported in:
5936         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00101.html
5938 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
5940         Add tests for 'substitute-command-keys'
5942         * test/src/doc-tests.el (doc-test-substitute-command-keys): New
5943         tests.
5945 2016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
5947         lisp/textmodes/table.el (table-generate-source): Fix completing-read call
5949         Doesn't make sense to pass '(("html") ("latex") ("cals")) to
5950         `completing-read'.
5952 2016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
5954         lisp/dired-aux.el (dired-compress-file-suffixes): Add entry for tgz
5956         The previous behavior resulted in a "tgz" -> "tar" -> "tgz" loop,
5957         without any files being extracted.
5959 2016-08-18  Andreas Politz  <politza@hochschule-trier.de>
5961         Don't let window start override window point in `window-state-put' (Bug#24240)
5963         * lisp/window.el (window--state-put-2): Set 'noforce argument
5964         when restoring a window's start position.  This avoids that the
5965         effect of `set-window-point' gets overidden by that of
5966         `set-window-start' (Bug#24240).
5968 2016-08-17  Alan Mackenzie  <acm@muc.de>
5970         Fontify constructs following "::" in C++ argument lists correctly - part 2.
5972         This fixes bug #24246.
5974         * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Put a
5975         `save-match-data' around the new `looking-at' introduced by the previous CC
5976         Mode patch this evening.
5978 2016-08-17  Alan Mackenzie  <acm@muc.de>
5980         Fontify constructs following "::" in C++ argument lists correctly.
5982         This fixes bug #24246.
5984         * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): In the "pseudo
5985         match" loop, test a found string for a match with c-opt-identifier-concat-key
5986         (e.g. with "::").
5988 2016-08-17  Paul Eggert  <eggert@cs.ucla.edu>
5990         * src/doc.c (Fsubstitute_command_keys): Clarify GC comments.
5992 2016-08-17  K. Handa  <handa@gnu.org>
5994         Fix hz encoding and decoding (bug#23814)
5996         * lisp/language/china-util.el (decode-hz-region): Pay
5997         attention to "~~}" sequence at the end of Chinese character
5998         range.
5999         (hz-category-table): New variable.
6000         (encode-hz-region): Convert non-encodable characters to
6001         \u... and \U...  Preserve ESC on ecoding.  Put
6002         `chinese-gb2312' `charset' text property in advance to force
6003         iso-2022-encoding to select chinese-gb2312 designation.
6005 2016-08-17  Tino Calancha  <tino.calancha@gmail.com>
6007         file-attribute-collect: New defun
6009         * lisp/files.el (file-attribute-collect):
6010         Return a sublist of the attributes returned by 'file-attributes'.
6011         Suggested by Ted Zlatanov in:
6013         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg01195.html
6015 2016-08-17  Michael Albinus  <michael.albinus@gmx.de>
6017         Fix Bug#24203
6019         * lisp/comint.el (comint-password-prompt-regexp): Relax regexp.  (Bug#24203)
6021 2016-08-16  Karl Fogel  <kfogel@red-bean.com>
6023         Improve doc string.
6025         * src/fileio.c (Ffile_name_as_directory): Be precise about the
6026         conditions under which a slash is appended.
6028 2016-08-16  Paul Eggert  <eggert@cs.ucla.edu>
6030         Omit substitute-command-keys code no longer needed
6032         * src/doc.c (Fsubstitute_command_keys):
6033         Remove duplicate initializations.
6035 2016-08-16  Tino Calancha  <tino.calancha@gmail.com>
6037         Allow not erase output buffer in shell commands
6039         * lisp/simple.el (shell-command-not-erase-buffer): New option to allow
6040         not erasing the output buffer between shell commands.  Defaults to nil.
6041         (shell-command-on-region): Use it.
6042         (shell-command--save-pos-or-erase): New defun; store a buffer position
6043         if 'shell-command-not-erase-buffer' is non-nil; otherwise
6044         erase the output buffer of the shell command.
6045         (shell-command, shell-command-on-region): Use it.
6046         (shell-command--set-point-after-cmd): New defun;
6047         if 'shell-command-not-erase-buffer' is non-nil, set point
6048         in the output buffer to the position in 'shell-command-saved-pos'.
6049         (shell-command-sentinel, shell-command-on-region): Use it.
6050         * doc/emacs/misc.texi (shell-command-not-erase-buffer):
6051         Document this feature in the manual.
6052         See discussion on:
6053         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00610.html
6055 2016-08-16  Michael Albinus  <michael.albinus@gmx.de>
6057         Rearrange Tramp manual title page
6059         * doc/misc/tramp.texi: Move @insertcopying out of the title
6060         page.  Do not use @ifnottex anymore.
6062 2016-08-15  Glenn Morris  <rgm@gnu.org>
6064         * doc/misc/tramp.texi: Adapt 2016-08-14 change for makeinfo 4.
6066 2016-08-15  Alan Mackenzie  <acm@muc.de>
6068         Fix minor bug in c-syntactic-re-search-forward.
6070         Bug was: when NOERROR is neither nil nor t, BOUND is non-nil, PAREN-LEVEL is
6071         non-nil, and the first internal search attempt fails, point wrongly ends up at
6072         BOUND, rather than just before the next closing paren.
6074         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Guard against
6075         the above situation.
6077 2016-08-15  Alan Mackenzie  <acm@muc.de>
6079         Handle C++11 lambda functions.
6081         * lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): Enhance also to
6082         handle C++ lambda functions.
6083         (c-looking-at-c++-lambda-capture-list): New function.
6085         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize the
6086         parameter list of a lambda function and set `context' and
6087         `c-restricted-<>-arglists' suitably for it.
6088         (c-font-lock-c++-lambda-captures): New function.
6089         (c-complex-decl-matchers): Insert c-font-lock-c++-lambda-captures into it.
6091         * lisp/progmodes/cc-langs.el (c-pre-lambda-tokens, c-pre-lambda-tokens-re):
6092         New language constants/variables.
6093         (c-paren-nontype-kwds): Include "noexcept" in the C++ value.
6095         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Handle being in a C++ lambda
6096         function capture list.
6098 2016-08-15  Michael Albinus  <michael.albinus@gmx.de>
6100         Fix stale cache problem in Tramp
6102         * lisp/net/tramp-cache.el (tramp-get-connection-property):
6103         Check, that a process as key is still running.  (Bug#22478)
6105 2016-08-14  Paul Eggert  <eggert@cs.ucla.edu>
6107         * doc/misc/tramp.texi (Configuration): Fix @xref typo.
6109 2016-08-14  Eli Zaretskii  <eliz@gnu.org>
6111         Another fix for scroll-conservatively and overlay strings
6113         * src/xdisp.c (redisplay_window): Handle also the case where the
6114         calculated window-start point has an overlay string touching it.
6115         (Bug#24179)
6117 2016-08-14  Michael Albinus  <michael.albinus@gmx.de>
6119         Improve handling of defcustoms in tramp
6121         * doc/misc/tramp.texi: Protect all multi-line examples by
6122         @group ... @end group.  Use proper `custom-set-variables'
6123         examples.  Use consequently @option for user options.  Remove
6124         superfluous @cindex and @vindex entries.
6125         (Top): Remove reference to outdated mail archives.
6126         (Configuration): Tune references.
6127         (Default Method): Make `tramp-default-method' and
6128         `tramp-default-method-alist' a @defopt.
6129         (Default User): Make `tramp-default-user' and
6130         `tramp-default-user-alist' a @defopt.
6131         (Default Host): Make `tramp-default-host' and
6132         `tramp-default-host-alist' a @defopt.
6134         * lisp/net/tramp.el (tramp-mode, tramp-verbose)
6135         (tramp-backup-directory-alist, tramp-auto-save-directory)
6136         (tramp-encoding-shell, tramp-encoding-command-switch)
6137         (tramp-encoding-command-interactive, tramp-default-method)
6138         (tramp-default-method-alist, tramp-default-user)
6139         (tramp-default-user-alist, tramp-default-host)
6140         (tramp-default-host-alist, tramp-default-proxies-alist)
6141         (tramp-save-ad-hoc-proxies)
6142         (tramp-restricted-shell-hosts-alist)
6143         (tramp-local-end-of-line, tramp-rsh-end-of-line)
6144         (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
6145         (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
6146         (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
6147         (tramp-terminal-prompt-regexp)
6148         (tramp-operation-not-permitted-regexp)
6149         (tramp-copy-failed-regexp, tramp-process-alive-regexp)
6150         (tramp-syntax, tramp-chunksize)
6151         (tramp-process-connection-type, tramp-connection-timeout)
6152         (tramp-connection-min-time-diff)
6153         (tramp-completion-reread-directory-timeout):
6154         * lisp/net/tramp-adb.el (tramp-adb-program)
6155         (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
6156         * lisp/net/tramp-cache.el (tramp-connection-properties)
6157         (tramp-persistency-file-name):
6158         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
6159         (tramp-gvfs-zeroconf-domain)
6160         (tramp-bluez-discover-devices-timeout):
6161         * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
6162         (tramp-copy-size-limit, tramp-terminal-type)
6163         (tramp-histfile-override)
6164         (tramp-use-ssh-controlmaster-options, tramp-remote-path)
6165         (tramp-remote-process-environment, tramp-sh-extra-args):
6166         * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
6167         (tramp-smb-conf, tramp-smb-winexe-program)
6168         (tramp-smb-winexe-shell-command)
6169         (tramp-smb-winexe-shell-command-switch): Add :require 'tramp.
6171 2016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6173         Minor text-quoting-style fixes
6175         * lisp/cus-edit.el (custom-buffer-create-internal):
6176         * lisp/recentf.el (recentf-edit-list):
6177         Follow text-quoting-style preference when quoting in UI strings.
6178         * src/doc.c (Fsubstitute_command_keys): Don’t say that curved
6179         quotes are substituted for, as this is no longer true.
6181 2016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6183         Fix substitute-command-keys unibyte, alloc bugs
6185         * src/doc.c (Fsubstitute_command_keys): Fix some problems with
6186         unibyte strings and with buffer allocation.  Make strings
6187         multibyte, to avoid problems with unibyte strings that are not
6188         valid UTF-8 (Bug#24206).  Redo buffer allocation so that it is
6189         O(N), not O(N**2).  Avoid going past the end of the input string
6190         when given invalid input.  Avoid some unlikely problems in
6191         accessing the wrong storage after a GC.
6193 2016-08-13  Joakim Jalap  <joakim.jalap@fastmail.com>
6195         Fix "C-u" when an input method is active
6197         * lisp/international/quail.el (quail-input-method): Defer to the
6198         input method iff 'overriding-terminal-local-map' is
6199         'universal-argument-map' and the given key has no binding there.
6200         (Bug#22958)
6202 2016-08-13  Martin Rudalics  <rudalics@gmx.at>
6204         Fix docs on `display-buffer-below-selected' (Bug#24213)
6206         * lisp/window.el (display-buffer-below-selected): Fix
6207         doc-string (Bug#24213).
6208         * doc/lispref/windows.texi (Display Action Functions): Fix
6209         documentation of `display-buffer-below-selected'.
6211 2016-08-12  Tino Calancha  <tino.calancha@gmail.com>
6213         cl-fill: Rename arguments to cl-seq and cl-item
6215         * lisp/emacs-lisp/cl-seq.el (cl-fill):
6216         Rename arguments to 'cl-seq' and 'cl-item' as elsewhere.
6218 2016-08-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6220         Fix display.texi typo
6222         * doc/lispref/display.texi (Faces): Fix typo.
6224 2016-08-11  Paul Eggert  <eggert@cs.ucla.edu>
6226         Fix process leak with make-network-process
6228         This problem was introduced by the recent async changes (Bug#23808).
6229         * src/process.c (Fmake_process): Move USE_SAFE_ALLOCA later,
6230         so that it follows the start_process_unwind unwind-protect.
6231         Set pid to -1 while the process is being created.
6232         (start_process_unwind): Omit unnecessary emacs_abort test.
6233         (connect_network_socket): Simplify use of counts.  Unwind
6234         bind_polling_period a bit earlier, so that a remove_process
6235         unwind-protect can be added when needed; this is the heart of
6236         the fix.  Undo the unwind-protect just before returning.
6238 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
6240         Avoid annoying re-scroll when buffer has many overlay strings
6242         * src/xdisp.c (redisplay_window): Add better recovery from a
6243         situation where window-start is on buffer position which has a
6244         before-string that includes newlines, with the result that point
6245         is not visible in the window, because the display engine starts
6246         displaying with the before-string.  (Bug#24179)
6248 2016-08-10  Paul Eggert  <eggert@cs.ucla.edu>
6250         Omit unnecessary process initialization
6252         * src/process.c (make_process, Fmake_process)
6253         (Fmake_pipe_process, Fmake_serial_process)
6254         (Fmake_network_process, server_accept_connection):
6255         Omit unnecessary initialization of already-cleared storage.
6257 2016-08-10  Tino Calancha  <tino.calancha@gmail.com>
6259         cl-delete-duplicates: Parse :if to have cl-if bound
6261         * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
6262         We need also to parse keyword :if, otherwise cl-if
6263         is unbound.
6264         This reverts commit:
6265         68fdbeb917b80e29e0b15506f18f7ed41d8ffdfd
6267 2016-08-10  Tino Calancha  <tino.calancha@gmail.com>
6269         cl-delete-duplicates: do not parse :if keyword
6271         * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
6272         Parse only the supported keywords.
6274 2016-08-10  Michael Albinus  <michael.albinus@gmx.de>
6276         Add compatibility layer for `temporary-file-directory-function'
6278         * lisp/net/tramp-compat.el
6279         (tramp-compat-temporary-file-directory-function): New defalias.
6281         * lisp/net/tramp.el (tramp-handle-make-nearby-temp-file): Use it.
6283         * test/lisp/net/tramp-tests.el (tramp-test32-make-nearby-temp-file):
6284         Skip for older Emacs versions.
6286 2016-08-10  Michael Albinus  <michael.albinus@gmx.de>
6288         * lisp/comint.el (comint-password-prompt-regexp): Add "PEM" for OpenVPN.
6290         (Bug#24059)
6292 2016-08-10  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6294         Handle nil cell value in compiled printer functions.
6296         * doc/misc/ses.texi (Quick Tutorial): Minor clarification about the
6297         ses-range `!' modifier.
6298         (More on cell printing): Fix this that the fallback printer is
6299         `ses-prin1', not "%S".  That makes a difference for any cell value for
6300         which "%S" would insert a backslash characters.
6302         * lisp/ses.el (ses-local-printer-compile): Handle the nil cell value
6303         --- contrary to emacs-25 branches ses-call-printer does not handle
6304         prior to calling a function printer.  Not doing this would still work
6305         because the compiled function would throw and error and SES would in
6306         the end resort to the ses-prin1 fallback, however this way would not
6307         be in line with the raison d'être of compiling printer which is speed.
6309 2016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
6311         Turn on lexical-binding in json.el
6313         Measuring with (benchmark-run 100 (json-read-file "foobar.json"))
6314         showed 12-31% reduction in execution time.
6315         * lisp/json.el: Turn on lexical-binding.
6317 2016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
6319         Nudge WoMan toward lexical-binding
6321         * lisp/woman.el (woman-parse-man.conf, woman-manpath-add-locales):
6322         Use cl-pushnew instead of add-to-list.
6323         (woman-justify-list): Rename to woman-justify-styles.
6324         (woman-justify-styles): New array.
6325         (woman-justify, woman-decode-region, woman2-ad, woman2-na): Use it.
6326         (woman-cached-data): Use cl-pushnew instead of add-to-list.
6328 2016-08-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6330         Apply changes from commits 3c97b0f758 and 8a38e948b0 to master branch.
6332         Here follows the logs from the two commits which I apply to master.
6334         commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d
6335         Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
6336         Date:   Fri Jul 29 13:44:14 2016 +0200
6338         Fix ses-delete-blanks to delete only blanks + documentation.
6340         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
6341         'ses-range' modifier as an alternative to 'ses+'.
6342         (Advanced Features): Add a refernce to node 'Nonrelocatable
6343         references' concerning function 'ses-rename-cell'.
6344         (Standard formula functions): Mention the '!' 'ses-range'
6345         modifier as an alternative to 'ses-delete-blanks'.
6346         (More on cell printing): Fix fallback printer
6347         definition.  Minor editorial formatting changes.
6348         (Nonrelocatable references): Document the use of
6349         'ses-rename-cell' as a better way to make cell reference
6350         non-relocatable.
6351         (The data area): Document the presence of local printer
6352         definitions in the data area.
6354         * lisp/ses.el (ses-delete-blanks): Do not remove
6355         *error*.  Any error in an argument should propagate into the
6356         using formula rather than being silently hidden !
6358         commit 8a38e948b039516e70176ebe20c5349e2ade6ac5
6359         Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
6360         Date:   Thu Jul 28 19:49:37 2016 +0200
6362         Fix local printer set to left aligned string formatter.
6364         * lisp/ses.el (ses-local-printer-compile): Add missing case
6365         for left-aligned string formatter.
6367 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6369         * .dir-locals.el (c-noise-macro-names): Remove NONVOLATILE.
6371 2016-08-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6373         * lisp/emacs-lisp/cconv.el: Fix λ-lifting in the presence of shadowing
6375         Change the code which detects and circumvents the case where one of the
6376         variables used in λ-lifting is shadowed, so that it also works when the
6377         shadowing comes before the λ-lifted function (bug#24171).
6379         (cconv--remap-llv): New function, extracted from cconv-convert.
6380         (cconv-convert): Use it, but differently for `let' and `let*'.
6382 2016-08-09  Alan Mackenzie  <acm@muc.de>
6384         CC Mode: check for and fix missing call to before_change_functions.
6386         Fixes bug #24094 and bug #24074.
6388         This can happen with `revert-buffer' or sometimes `find-file', when the file
6389         is already in a buffer, but the file has been changed outside of Emacs.
6391         * lisp/progmodes/cc-mode (c-after-change): When we detect a missing
6392         invocation of c-before-change-functions, we assume the changed region is the
6393         entire buffer, and call c-before-change explicitly before proceding.
6395 2016-08-09  Alan Mackenzie  <acm@muc.de>
6397         Make c-deprepertize-CPP work on deletion/insertion of "s.  Fixes bug #24132.
6399         * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Rewrite function.
6401 2016-08-09  Michael Albinus  <michael.albinus@gmx.de>
6403         Support $ENV in Tramp
6405         * doc/misc/tramp.texi (Remote processes): Explain setting $ENV.
6407         * etc/NEWS: Explain the "ENV" environment variable in
6408         `tramp-remote-process-environment'.
6410         * lisp/net/tramp-sh.el (tramp-remote-process-environment): Add "ENV=''".
6411         (tramp-open-shell): Read $ENV value from
6412         `tramp-remote-process-environment'.
6413         (tramp-open-connection-setup-interactive-shell): Set values in
6414         proper order.
6416 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6418         Simplify exec_byte_code via moving decls etc.
6420         * src/bytecode.c (exec_byte_code): Simplify, mostly by moving
6421         initializers into decls, and by omitting some unnecessary
6422         changes to ‘top’.  This improves performance a bit on x86-64,
6423         as it happens.
6425 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6427         Remove interpreter’s byte stack
6429         This improves performance overall on my benchmark on x86-64,
6430         since the interpreted program-counter resides in a machine
6431         register rather than in RAM.
6432         * etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
6433         is no longer a byte stack to decode.
6434         * src/bytecode.c (struct byte_stack, byte_stack_list)
6435         (relocate_byte_stack): Remove.  All uses removed.
6436         (FETCH): Simplify now that pc is now local (typically, in a
6437         register) and no longer needs to be relocated.
6438         (CHECK_RANGE): Remove.  All uses now done inline, in a different way.
6439         (BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
6440         (exec_byte_code): Allocate a copy of the function’s bytecode,
6441         so that there is no problem if GC moves it.
6442         * src/lisp.h (struct handler): Remove byte_stack member.
6443         All uses removed.
6444         (SAFE_ALLOCA_LISP_EXTRA): New macro, a generalization of
6445         SAFE_ALLOCA_LISP.
6446         (SAFE_ALLOCA_LISP): Use it.
6448 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6450         Remove arbitrary limit on bytecode maxdepth
6452         * src/bytecode.c (exec_byte_code): Remove MAX_ALLOCA-based limit
6453         on bytecode maxdepth, by using SAFE_ALLOCA_LISP instead of alloca.
6455         pipeline is fuller.
6457 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6459         Tune bytecode quitting
6461         * src/bytecode.c (BYTE_CODE_QUIT): Check for GC, too.  Do the
6462         check only once every 256 times.  This should be good enough, and
6463         improves performance significantly on x86-64 as branch-prediction
6464         typically assumes checking will not be done so the instruction
6465         pipeline stays fuller.
6466         (exec_byte_code): Set up the quit counter.  Don’t call maybe_gc
6467         directly, as BYTE_CODE_QUIT does that now.
6469 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6471         Simplify BYTE_CODE_SAFE checking
6473         * src/bytecode.c (BYTE_CODE_SAFE): Default to false, so that it
6474         can be used outside #if.  All uses of ‘defined BYTE_CODE_SAFE’
6475         changed to ‘BYTE_CODE_SAFE’.  Use BYTE_CODE_SAFE in plain
6476         expressions instead of #if expressions when this is easy.
6477         (struct byte_stack) [BYTE_CODE_SAFE]: Remove member ‘bottom’,
6478         as it is no longer needed.
6479         (exec_byte_code): Omit #if BYTE_CODE_SAFE when this is easy.
6480         Simplify stack-overflow checking when BYTE_CODE_SAFE.
6482 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6484         Get BYTE_CODE_METER working again
6486         BYTE_CODE_METER hasn’t worked since 2013, and nobody seems to have
6487         noticed.  Perhaps we should remove it?
6488         * src/bytecode.c (METER_2) [BYTE_CODE_METER]:
6489         Use *aref_addr instead of AREF, since it needs to be an lvalue.
6491 2016-08-08  Eli Zaretskii  <eliz@gnu.org>
6493         Fix cursor position under scroll-conservatively and overlay strings
6495         * src/xdisp.c (try_scrolling): Handle the case where the last
6496         visible screen line of a window displays a before- or after-string
6497         that takes up the whole screen line, and therefore there's no
6498         place to display the cursor, even though the window does seem to
6499         include the position of point.  (Bug#24179)
6501 2016-08-08  Michael Albinus  <michael.albinus@gmx.de>
6503         * lisp/files.el (file-ownership-preserved-p): Fix docstring.  (Bug#23998)
6505 2016-08-07  Paul Eggert  <eggert@cs.ucla.edu>
6507         Tune interpretation of integer arglist descriptor
6509         * src/bytecode.c (exec_byte_code):
6510         Simplify and tune when INTEGERP (args_template).
6512 2016-08-07  Noam Postavsky  <npostavs@gmail.com>
6514         Fix debugging of string-match-p errors
6516         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
6517         that debugger code that needs to do regexp match won't break
6518         (Bug #23949, Bug #24166, Bug#16294).
6520 2016-08-07  Michael Albinus  <michael.albinus@gmx.de>
6522         Add `make-nearby-temp-file' and `temporary-file-directory'
6524         * doc/lispref/files.texi (Unique File Names):
6525         Introduce `make-nearby-temp-file' and `temporary-file-directory'.
6526         (Magic File Names): Mention `make-nearby-temp-file' and
6527         `temporary-file-directory'.
6529         * etc/NEWS (provided): Mention `make-nearby-temp-file' and
6530         `temporary-file-directory'.
6532         * lisp/files.el (mounted-file-systems): New defcustom.
6533         (temporary-file-directory, make-nearby-temp-file): New defuns.
6534         (normal-backup-enable-predicate): Fix docstring.
6536         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
6537         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
6538         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
6539         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
6540         <make-nearby-temp-file, temporary-file-directory>: Add handler.
6542         * lisp/net/tramp.el (tramp-file-name-for-operation):
6543         Add `make-nearby-temp-file' and `temporary-file-directory'.
6544         (tramp-get-remote-tmpdir): Remove compatibility code.
6545         (tramp-handle-temporary-file-directory)
6546         (tramp-handle-make-nearby-temp-file): New defuns.
6548         * lisp/org/ob-core.el (org-babel-local-file-name):
6549         * lisp/progmodes/gud.el (gud-common-init):
6550         * lisp/vc/vc-hooks.el (vc-user-login-name): Use `file-remote-p'.
6552         * lisp/vc/vc-git.el (vc-git-checkin): Handle remote log message.
6554         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
6555         Check `tramp--test-enabled'.
6556         (tramp-test18-file-attributes): Add tests for
6557         `file-ownership-preserved-p'.
6558         (tramp-test27-start-file-process, tramp-test28-shell-command):
6559         Reduce timeouts in `accept-process-output'.
6560         (tramp-test--shell-command-to-string-asynchronously): Add timeout.
6561         (tramp-test29-environment-variables): Remove additional sleep calls.
6562         (tramp-test32-make-nearby-temp-file): New test.
6563         (tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
6564         (tramp-test33-special-characters)
6565         (tramp-test33-special-characters-with-stat)
6566         (tramp-test33-special-characters-with-perl)
6567         (tramp-test33-special-characters-with-ls, tramp-test34-utf8)
6568         (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
6569         (tramp-test34-utf8-with-ls)
6570         (tramp-test35-asynchronous-requests)
6571         (tramp-test36-recursive-load, tramp-test37-unload): Rename.
6572         (tramp--test-ftp-p): Simplify check.
6573         (tramp--test-sh-p): New defun.
6574         (tramp-test20-file-modes, tramp-test22-file-times)
6575         (tramp-test26-process-file, tramp-test27-start-file-process)
6576         (tramp-test28-shell-command)
6577         (tramp-test29-environment-variables)
6578         (tramp-test30-vc-registered)
6579         (tramp-test33-special-characters-with-stat)
6580         (tramp-test33-special-characters-with-perl)
6581         (tramp-test33-special-characters-with-ls)
6582         (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
6583         (tramp-test34-utf8-with-ls)
6584         (tramp-test35-asynchronous-requests): Use it.
6586 2016-08-06  Michael Albinus  <michael.albinus@gmx.de>
6588         Add missing dcstrings in Tramp, remove chec for obsolee methods
6590         * lisp/net/tramp.el (tramp-progress-reporter-update)
6591         (tramp-unload-file-name-handlers, tramp-get-local-uid)
6592         (tramp-get-local-gid, tramp-get-local-locale):
6593         * lisp/net/tramp-adb.el (tramp-adb-ls-date-regexp)
6594         (tramp-adb-ls-toolbox-regexp, tramp-adb-get-ls-command):
6595         * lisp/net/tramp-compat.el (tramp-compat-funcall):
6596         * lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
6597         * lisp/net/tramp-gw.el (tramp-gw-process-filter):
6598         * lisp/net/tramp-sh.el (tramp-get-remote-path)
6599         (tramp-get-remote-locale, tramp-get-ls-command)
6600         (tramp-get-ls-command-with-dired)
6601         (tramp-get-ls-command-with-quoting-style)
6602         (tramp-get-ls-command-with-w-option)
6603         (tramp-get-test-nt-command, tramp-get-file-exists-command)
6604         (tramp-get-remote-ln, tramp-get-remote-perl)
6605         (tramp-get-remote-stat, tramp-get-remote-readlink)
6606         (tramp-get-remote-trash, tramp-get-remote-touch)
6607         (tramp-get-remote-gvfs-monitor-dir)
6608         (tramp-get-remote-inotifywait, tramp-get-remote-id)
6609         (tramp-get-remote-uid-with-id)
6610         (tramp-get-remote-uid-with-perl, tramp-get-remote-python)
6611         (tramp-get-remote-uid-with-python, tramp-get-remote-uid)
6612         (tramp-get-remote-gid-with-id)
6613         (tramp-get-remote-gid-with-perl)
6614         (tramp-get-remote-gid-with-python, tramp-get-remote-gid)
6615         (tramp-get-env-with-u-option): Add missing docstrings.
6617         * lisp/net/tramp.el (tramp-obsolete-methods)
6618         (tramp-warned-obsolete-methods): Remove.
6619         (tramp-find-method): Do not check for obsolete methods any longer.
6621 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6623         Make sh-mode always use p-s-lookup-properties
6625         This lets functions which rely on syntax-propertize for parsing
6626         work correctly even before font lock has a chance to run.
6628         * lisp/progmodes/sh-script.el (sh-set-shell): Set
6629         parse-sexp-lookup-properties unconditionally (Bug #4920).
6631 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6633         Fix cl-assert with atomp FORM, non-nil SHOW-ARGS
6635         * lisp/emacs-lisp/cl-macs.el (cl-assert): Don't require that FORM is a
6636         list when showing its (non-existent) arguments (Bug #18587).
6638 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6640         Don't delete selection after indent-rigidly
6642         * lisp/indent.el (indent-rigidly): Pass `deactivate-mark' as the ON-EXIT
6643         function to `set-transient-map', this prevents `delete-selection-mode'
6644         from deleting the text that was just indented (Bug #20408).
6646 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6648         Fix byte-compile of interactive closures
6650         * lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function): Put
6651         bindings after docstring and `interactive' form, if any (Bug #24122).
6653 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6655         Error if --eval arg has text beyond 1 expression
6657         * lisp/startup.el (command-line-1): If --eval argument has more data
6658         than constitutes a single Lisp expression, signal an error (Bug #23159).
6660 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6662         Fix quoted lambda warning from lexical-let
6664         * lisp/emacs-lisp/cl.el (cl--function-convert): Quote the inner lambda
6665         with `function', not `quote' (Bug #11357).
6667 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6669         Make emerge always use shell-quote-argument
6671         * lisp/vc/emerge.el (emerge-metachars): Obsolete.
6672         (emerge-protect-metachars): Delete.
6673         (emerge-make-diff-list, emerge-make-diff3-list): Replace all calls to
6674         `emerge-protect-metachars' with `shell-quote-argument' so that shell
6675         quoting is done the same on all system types (Bug #6136).  Also shell
6676         quote `emerge-diff-program' and `emerge-diff3-program'.
6678 2016-08-06  Eli Zaretskii  <eliz@gnu.org>
6680         Fix 'dired-diff' when backup file is in another directory
6682         * lisp/dired-aux.el (dired-diff): Clarify the doc string wrt how
6683         the default for FILE is computed, especially when backup files
6684         are involved.  Support backup files in another directory.
6685         Don't suggest the default FILE if it doesn't exist.  (Bug#24089)
6687 2016-08-06  Eli Zaretskii  <eliz@gnu.org>
6689         Fix the 'T' command in Dired with non_ASCII file names
6691         * lisp/dired-aux.el (dired-do-chxxx): Bind coding-system-for-write
6692         to correctly encode file names passed to the invoked PROGRAM.
6693         (Bug#24162)
6695 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
6697         * lisp/files.el (version-control): Drop :group vc (Bug #14687)
6699 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6701         Merge from origin/emacs-25
6703         d841a03 ; Spelling fix
6704         a6ae479 Post AppDefined events from the main thread ONLY (bug#23934)
6705         d35d398 Update to the AUTHORS file for Bob Weiner
6706         4d2f4df Revert "Fix local printer set to left aligned string formatter."
6707         cd1b4d6 Revert "Fix ses-delete-blanks to delete only blanks + documen...
6708         f7ceb8e Revert "Fix English."
6709         baa7abd Improve doc strings of 'gud-gdb' and 'gdb'
6710         aa4271a Fix doc string of 'minibuffer-message-timeout'
6711         b275cc7 Fix English.
6712         3c97b0f Fix ses-delete-blanks to delete only blanks + documentation.
6713         272391f profiler: document prefix arg for tree expansion
6714         442cc39 Clarify usage of eshell-visual-options
6715         b443c3c Fix comment in files-in-below-directory
6716         8a38e94 Fix local printer set to left aligned string formatter.
6717         0f0b191 ; Fix typos in NEWS
6718         6bdf687 ; * etc/NEWS: Remove temporary marks
6720 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6722         Merge from origin/emacs-25
6724         d08afa1 * etc/AUTHORS: Update the AUTHORS file
6725         2668500 ;; * ChangeLog.2: ChangeLog update.
6726         7acfaea ; ChangeLog fixes
6727         97d28b4 * admin/authors.el (authors-valid-file-names): Addition.
6728         9ab52f6 * admin/authors.el: Additions.
6729         0e646c7 Warn about Cairo-related problems
6730         bc4c07f Don't let completion break `declare' handling
6731         66f95e0 Adjust match data before calling after-change-funs
6732         52cf0d5 Do not show string-rectangle preview if minibuffer is empty
6733         6a3d031 * etc/PROBLEMS: Add entry about selection problems under Plas...
6735         # Conflicts:
6736         #       ChangeLog.2
6737         #       src/lisp.h
6739 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6741         Merge from origin/emacs-25
6743         9a41cd1 ; Fix typo
6744         9356fe2 Expand FIXME near definition of fboundp
6745         219b39f kill-rectangle should mention killed-rectangle
6746         59fa4c3 Avoid assertion violations in nhexl-mode
6748 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6750         Merge from origin/emacs-25
6752         9ba51ed Document buffer-swap-text+save-excursion interaction
6753         452aa94 Fix eieio vs cl-generic incompatibilities found in Rudel (bug...
6754         248d5dd Include cl-generic in package--builtin-versions (bug#22817)
6755         8f5a8b6 Improve timing in `tramp-test29-environment-variables'
6756         05ba7a0 Add test for handling environment variables in Tramp
6757         e393d4f * lisp/emacs-lisp/package.el (describe-package-1) (package-st...
6758         5e38887 ; * lisp/net/tramp.el: Fix 2010-10-04 comment typo.  (Bug#23913)
6759         90f2169 ; Spelling fixes
6760         069fc05 Improve documentation of search functions
6761         0a0144a Delete environment variables in Tramp when needed
6762         f624671 Add "New in Emacs 25" section to the FAQ
6763         658daf9 Fix 'vertical-motion' in non-interactive sessions
6764         686b520 Fix memory leak in imagemagick-types
6765         4069b71 Update ELisp manual to match 'string-collate-equalp' doc string
6766         1b2d6a6 Clarify docstring of find-feature-regexp
6767         aac62a6 Add details to cl-lib defining macros' docstrings
6768         d6aa4da Clarify doc string of 'save-buffer'
6769         03bcf11 Un-confuse doc string of 'string-collate-equalp'
6770         c53135b Clarify documentation of 'mouse-on-link-p'
6772         # Conflicts:
6773         #       lisp/emacs-lisp/eieio-core.el
6775 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6777         Merge from origin/emacs-25
6779         6f285d9 Amend last addition to etc/PROBLEMS
6780         7067890 * etc/PROBLEMS: Mention GTK+ problem with unexpected frame wi...
6782 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6784         Merge from origin/emacs-25
6786         d4c6774 Fix missing point information in undo
6787         3a9d629 Avoid crashes when buffer modification hooks clobber match data
6788         178b2f5 Note combine-and-quote-strings doesn't shell quote
6789         dec7567 Explain when package-initialize isn't called
6790         113d1e2 Fix escaping in sh-indent-after-continuation docstr
6791         80e2044 ; * etc/NEWS: Improve previous change.
6792         5bb9e6c ; * etc/NEWS: Document how to avoid horizontal scroll bars.
6793         38f4b8e Clarify the documentation of back-references in replacements
6795 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6797         Merge from origin/emacs-25
6799         850ba44 Clarify lexical binding with symbol args behavior
6800         f981b31 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
6801         68fc964 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23...
6802         21110af Avoid assertion violations when rendering some fonts
6803         6192b6c Document more details of package activation
6804         272ddc6 Fixup warning message regarding HOME a bit more
6805         43206d6 * lisp/leim/quail/indian.el ("bengali-probhat"): Change indic...
6806         d41f7ff Fix input method "probhat" for Bengali
6807         c150a64 ; Fix typo in commit before last
6808         ebf0472 Add to elisp-completion-at-point's docstring
6809         fd9fad0 Give more helpful warning about setting HOME
6810         ea6b01d ; * lisp/term.el (term-mode): FIXME comment about bidi reorde...
6812         # Conflicts:
6813         #       lisp/term.el
6815 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6817         Merge from origin/emacs-25
6819         26d4da0 New input method "probhat" for Bengali
6820         4f445bf ; Spelling fix
6821         f403f03 ; Fix typo
6823 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6825         Spelling and minor grammar fixes
6827         * test/file-organization.org: Rename from test/file-organisation.org.
6829 2016-08-04  Alan Mackenzie  <acm@muc.de>
6831         Widen in certain low level CC Mode functions.  This fixes bug #24148.
6833         * lisp/progmodes/cc-engine (c-state-semi-pp-to-literal)
6834         (c-state-full-pp-to-literal): Widen around the functionality.
6835         (c-parse-ps-state-below): Correct the order of save-excursion and
6836         save-restriction.
6838 2016-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
6840         Fix Bug#24149
6842         * lisp/subr.el (set-transient-map): Don't wait if MAP not present in
6843         overriding-terminal-local-map.  (Bug#24149)
6845 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6847         Update from gnulib
6849         This incorporates:
6850         2016-07-03 mktime: call tzset as per POSIX
6851         * doc/misc/texinfo.tex, lib/mktime.c, m4/mktime.m4:
6852         Copy from gnulib.
6854 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6856         Fix GnuTLS includes
6858         * src/gnutls.c [HAVE_GNUTLS]: Don’t include gnutls/gnutls.h
6859         a second time; although it doesn’t hurt, it’s not needed.
6860         * src/sysdep.c [!HAVE_GNUTLS]: Don’t include gnutls/crypto.h,
6861         as it may not be available.  Problem reported by Glenn Morris in:
6862         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00100.html
6864 2016-08-03  Michal Nazarewicz  <mina86@mina86.com>
6866         Fix accessing regex-resources in out-of-tree test runs in regex-tests
6868         [82a487d: Fix reading of regex-resources in regex-tests] attempted to
6869         fix regex-tests failing when run from the source tree (i.e. via make)
6870         by hard-coding path to regex-resources directory relative to the test
6871         directory.
6873         This fixed runs from the tree but broke the test when run using other
6874         methods.
6876         Fix by trying ‘load-file-name’ or ‘buffer-file-name’, whichever is set.
6878         * test/src/regex-tests.el (regex-tests--resources-dir): New variable
6879         storing path to the regex-resources directory.
6880         (regex-tests-generic-line): Use aforementioned variable.
6882 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6884         Simplify by assuming GnuTLS 2.12.2 or later
6886         * src/gnutls.c (gnutls_certificate_details):
6887         * src/sysdep.c: Assume GnuTLS 2.12.2 or later.
6889 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6891         Port to systems lacking GNUTLS_NONBLOCK
6893         Problem reported by Colin Baxter in:
6894         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00096.html
6895         * src/gnutls.c (Fgnutls_boot): Don’t assume GNUTLS_NONBLOCK is defined.
6897 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6899         Fix non-blocking GnuTLS with slow connection
6901         Although the problem is reported for OS X (Bug#23982), it seems to
6902         be possible on other POSIXish platforms.
6903         * src/gnutls.c (emacs_gnutls_nonblock_errno) [!WINDOWSNT]:
6904         New function.
6905         (emacs_gnutls_handshake) [!WINDOWSNT]:
6906         Use it as the errno function, if non-blocking.
6907         (Fgnutls_boot): Use GNUTLS_NONBLOCK if non-blocking.
6909 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6911         Require GnuTLS 2.12.2 or later
6913         * configure.ac, etc/NEWS: Require GnuTLS 2.12.2 or later,
6914         instead of merely 2.6.6 or later (Bug#23982#20).
6915         * src/gnutls.c (init_gnutls_functions, emacs_gnutls_handshake)
6916         [WINDOWSNT]: Don’t bother with gnutls_check_version or
6917         gnutls_transport_set_lowat, as they are no longer needed now that
6918         we require gnutls 2.12.2 or later.
6920 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6922         * src/window.c (sanitize_window_sizes): Remove unused arg `frame'
6924         * src/window.h (sanitize_window_sizes): Adjust prototype.
6925         * src/frame.c (adjust_frame_size): Adjust calls.
6927 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6929         Fix (mapcar F S) crash when F alters S’s length
6931         * src/fns.c (mapcar1): Return number of elements computed,
6932         which can be less than LENI if the function alters the list.
6933         All callers changed.  (Bug#24118)
6935 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6937         Port window changes to --enable-gcc-warnings
6939         * src/window.c (sanitize_window_sizes): Return void.
6940         This pacifies GCC, and no caller uses the return value anyway.
6942 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6944         * src/window.c: Fix bootstrap failure due to window.el changes
6946         (sanitize_window_sizes): Adjust to new calling convention of
6947         window--sanitize-window-sizes and only call it if defined.
6948         (Fwindow__sanitize_window_sizes): Remove.
6949         (syms_of_window): Don't defsubr it.
6951 2016-08-02  Michael Albinus  <michael.albinus@gmx.de>
6953         Fix Bug#23883
6955         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
6956         Call `process-actions' with adapted position.  The connection
6957         buffer might have been cleaned up already.  (Bug#23883)
6959 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6961         Port regex changes to strict ISO C
6963         * src/regex.c (regex_compile): Redo casts.
6965 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6967         * lisp/window.el: Use lexical-binding
6969         (window--min-size-ignore-p): Remove unused arg `horizontal'.
6970         (window--sanitize-window-sizes): Remove unused arg `frame'.
6971         (window-edges): Remove unused vars left-off and right-off.
6972         (display-buffer-reuse-mode-window): Remove unused var `frame?'.
6973         Avoid extraneous setq and do a bit of CSE.
6974         (fit-frame-to-buffer): Remove unused vars `window', `fit-width',
6975         and `toolbar-extra-height'.
6976         (window-adjust-process-window-size): Remove unused arg `process'.
6978 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
6980         Fix unused lexical variable
6982         This fixes the following warning:
6984             In toplevel form:
6985             src/regex-tests.el:416:1:Warning: Unused lexical variable ‘newline’
6987         * test/src/regex-tests.el (regex-tests-BOOST): Remove unused lexical
6988         variable.
6990 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
6992         Remove unused STREQ macro
6994         This fixes the following compilation warning:
6996             regex.c:516:0: warning: macro "STREQ" is not used [-Wunused-macros]
6997              #define STREQ(s1, s2) ((strcmp (s1, s2) == 0))
6998              ^
7000         * src/regex.c (STREQ): Remove unused macro.  It should have been removed
7001         in a [4538a5e: Refactor regex character class parsing in [:name:]]
7002         commit but was mistakenly left out.
7004 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
7006         * cl-generic.el: Fix problems introduced by new load-history format
7008         * lisp/emacs-lisp/cl-generic.el (cl--generic-load-hist-format): New function.
7009         (cl-generic-define-method, cl--generic-describe): Use it.
7010         (cl--generic-search-method): Adjust for new format.
7012         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
7013         * test/lisp/progmodes/elisp-mode-tests.el:
7014         Use cl--generic-load-hist-format rather than hard-coding cl-generic's
7015         internal format.
7017 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7019         Hardcode regex syntax to remove dead code handling different syntax
7021         Emacs only ever uses its own regex syntax so support for other syntaxes
7022         is never used.  Hardcode the syntax so that the compilar can detect such
7023         dead code and remove it from compiled code.
7025         The only exception is RE_NO_POSIX_BACKTRACKING which can be separatelly
7026         specified.  Handle this separatelly with a function argument (replacing
7027         now unnecessary syntax argument).
7029         With this patchset, size of Emacs binary on x86_64 machine is reduced by
7030         around 60 kB:
7032                 new-sizes:-rwx------ 3 mpn eng 30254720 Jul 27 23:31 src/emacs
7033                 old-sizes:-rwx------ 3 mpn eng 30314828 Jul 27 23:29 src/emacs
7035         * src/regex.h (re_pattern_buffer): Don’t define syntax field #ifdef emacs.
7036         (re_compile_pattern): Replace syntax with posix_backtracking argument.
7038         * src/regex.c (print_compiled_pattern): Don’t print syntax #ifdef emacs.
7039         (regex_compile): #ifdef emacs, replace syntax argument with
7040         posix_backtracking which is now used instead of testing for
7041         RE_NO_POSIX_BACKTRACKING syntax.
7042         (re_match_2_internal): Don’t access bufp->syntax #ifndef emacs.
7043         (re_compile_pattern): Replace syntax with posix_backtracking argument.
7045         * src/search.c (compile_pattern_1): Pass boolean posix_backtracking
7046         instead of syntax to re_compile_pattern.
7048 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7050         Get rid of re_set_whitespace_regexp
7052         * src/regex.h (re_set_whitespace_regexp): Delete.
7053         (re_compile_pattern): Add whitespace_regexp argument #ifdef emacs.
7055         * src/regex.c (re_set_whitespace_regexp, whitespace_regexp): Delete.
7056         (regex_compile): Add whitespace_regexp argument #ifdef emacs and wrap
7057         whitespace_regexp-related code in an #ifdef emacs so it’s compiled out
7058         unless building Emacs.
7059         (re_compile_pattern): Pass whitespace_regexp argument to regex_compile
7061         * src/search.c (compile_pattern_1): Don’t use re_set_whitespace_regexp,
7062         pass the regex as argument to re_compile_pattern instead.
7064 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7066         Get rid of re_set_syntax
7068         Instead of using a global variable for storing regex syntax, pass it
7069         to re_compile_pattern.  This is only enabled when compiling Emacs (i.e.
7070         ‘#ifdef emacs’).
7072         * src/regex.h (re_set_syntax): Declare only #ifndef emacs.
7073         (re_compile_pattern): Now takes syntax argument #ifdef emacs.
7075         * src/regex.c (re_syntax_options): Define only #ifndef emacs.
7076         (re_compile_pattern): Use the new syntax argument #ifdef emacs.
7078         * src/search.c (compile_pattern_1): Don’t use re_set_syntax and
7079         instead pass syntax to re_compile_pattern directly.
7081 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7083         Remove dead opcodes in regex bytecode
7085         There is no way to specify before_dot and after_dot opcodes in a regex
7086         so code handling those ends up being dead.  Remove it.
7088         * src/regex.c (print_partial_compiled_pattern, regex_compile,
7089         analyze_first, re_match_2_internal): Remove handling and references to
7090         before_dot and after_dot opcodes.
7092 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7094         Refactor regex character class parsing in [:name:]
7096         re_wctype function is used in three separate places and in all of
7097         those places almost exact code extracting the name from [:name:]
7098         surrounds it.  Furthermore, re_wctype requires a NUL-terminated
7099         string, so the name of the character class is copied to a temporary
7100         buffer.
7102         The code duplication and unnecessary memory copying can be avoided by
7103         pushing the responsibility of parsing the whole [:name:] sequence to
7104         the function.
7106         Furthermore, since now the function has access to the length of the
7107         character class name (since it’s doing the parsing), it can take
7108         advantage of that information in skipping some string comparisons and
7109         using a constant-length memcmp instead of strcmp which needs to take
7110         care of NUL bytes.
7112         * src/regex.c (re_wctype): Delete function.  Replace it with:
7113         (re_wctype_parse): New function which parses a whole [:name:] string
7114         and returns a RECC_* constant or -1 if the string is not of [:name:]
7115         format.
7116         (regex_compile): Use re_wctype_parse.
7117         * src/syntax.c (skip_chars): Use re_wctype_parse.
7119 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7121         Split regex glibc test cases into separet tests
7123         * test/src/regex-tests.el (regex-tests): Remove and split into multiple
7124         tests cases.
7125         (regex-tests-glbic-BOOST, regex-tests-glibc-PCRE,
7126         regex-tests-glibc-PTESTS, regex-tests-glibc-TESTS): New test cases split
7127         from ‘regex-tests’.
7129 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7131         Don’t (require 'cl)
7133         * test/src/regex-test.el: Don’t (require 'cl).
7134         (regex-tests-PCRE): s/loop/cl-loop/
7136 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7138         Fix reading of regex-resources in regex-tests
7140         * test/src/regex-tests.el (regex-tests-generic-line): Referring to
7141         ‘buffer-file-name’ does not work when running the test from command
7142         line, i.e. via make, which results in (wrong-type-argument stringp nil)
7143         failures.  Replace it with hard-coded path.
7144         (regex-tests-BOOST, regex-tests-PCRE, regex-tests-PTESTS-whitelist,
7145         regex-tests-TESTS-whitelist): ‘regex-tests-generic-line’ now  includes
7146         the ‘regex-resources’ path component so the tests don’t need to specify
7147         it explicitly.
7149 2016-08-02  Dima Kogan  <dima@secretsauce.net>
7151         Added driver for the regex tests
7153         * test/src/regex-tests.el (regex-tests): Test executing glibc tests
7154         cases.
7156         [mina86@mina86.com: merged test with existing file]
7158 2016-08-02  Dima Kogan  <dima@secretsauce.net>
7160         New regex tests imported from glibc 2.21
7162         * test/src/regex-resources/BOOST.tests:
7163         * test/src/regex-resources/PCRE.tests:
7164         * test/src/regex-resources/PTESTS:
7165         * test/src/regex-resources/TESTS:
7166         New test data files
7168         [mina86@mina86.com: Moved files from test/src/regex/* to test/src/*.]
7170 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7172         Fix use-after-close in connect_network_socket
7174         * src/process.c (connect_network_socket):
7175         Reverse sense of previous fix.  Problem reported by Ken Brown in:
7176         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00004.html
7178 2016-08-01  Glenn Morris  <rgm@gnu.org>
7180         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
7181         Respect autoload-timestamps for "actual autoloads are elsewhere" case.
7183 2016-07-31  Stefan Merten  <stefan@merten-home.de>
7185         * lisp/textmodes/rst.el: Major refactoring, minor changes, minor fixes
7187         (rst-Ado, rst-Hdr, rst-Ttl, rst-Stn): Introduce classes
7188         representing reStructuredText section header concepts.
7189         (rst-mode-map, rst-new-preferred-hdr)
7190         (rst-update-section, rst-classify-adornment)
7191         (rst-ttl-at-point, rst-all-ttls-cache)
7192         (rst-hdr-hierarchy-cache, rst-reset-section-caches)
7193         (rst-all-ttls, rst-infer-hdr-hierarchy, rst-hdr-hierarchy)
7194         (rst-all-ttls-with-level, rst-get-previous-hdr)
7195         (rst-adornment-complete-p, rst-next-hdr, rst-adjust)
7196         (rst-adjust-section, rst-promote-region)
7197         (rst-display-hdr-hierarchy, rst-straighten-sections)
7198         (rst-all-stn, rst-remaining-stn, rst-toc-insert)
7199         (rst-toc-insert-node, rst-toc-node, rst-toc)
7200         (rst-forward-section, rst-adornment-level)
7201         (rst-font-lock-handle-adornment-pre-match-form)
7202         (rst-imenu-convert-cell, rst-imenu-create-index): Refactor
7203         using classes.
7204         (rst-compare-adornments, rst-get-adornment-match): Remove
7205         functions now in classes.
7206         (rst-re-alist-def, rst-toc-mode)
7207         (rst-font-lock-extend-region-extend): Minor improvements.
7208         (rst-mode, rst-compile): Use `setq-local'.
7209         (rst-cvs-header, rst-svn-rev, rst-svn-timestamp)
7210         (rst-official-version, rst-official-cvs-rev)
7211         (rst-package-emacs-version-alist): Maintain version tags.
7213 2016-07-30  Martin Rudalics  <rudalics@gmx.at>
7215         Fix calculation of tool bar width reported by `frame-geometry' (Bug#24107)
7217         * src/w32fns.c (Fw32_frame_geometry): Fix calculation of tool
7218         bar width (Bug#24107).  Reindent.
7219         * src/xfns.c (frame_geometry): Fix calculation of tool bar
7220         width on non-GTK builds.
7222 2016-07-30  Eli Zaretskii  <eliz@gnu.org>
7224         Fix region display while dragging mouse
7226         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
7227         buffer of the drag event, to allow mark to be set and the region
7228         be shown as we drag the mouse.  (Bug#24030)
7230 2016-07-30  Tino Calancha  <tino.calancha@gmail.com>
7232         Copy just non-empty strings to kill-ring
7234         * lisp/dired.el (dired-copy-filename-as-kill):
7235         Do not change the kill ring when the string is empty (Bug#24103).
7237 2016-07-30  Eli Zaretskii  <eliz@gnu.org>
7239         Avoid warnings about undo list while decoding
7241         * src/coding.c (coding_restore_undo_list): New function.
7242         (decode_coding_gap, decode_coding_object): Temporarily set the
7243         buffer's undo list to t, to avoid warnings when decoding changes
7244         the buffer many times, e.g. due to post-read-conversion.  Use
7245         coding_restore_undo_list to make sure the undo list is restored.
7246         (Bug#23813)
7248 2016-07-28  Noam Postavsky  <npostavs@gmail.com>
7250         profiler: Add mouse-1 binding for tree expansion
7252         (profiler-report-mode-map): Add mouse-1 binding for
7253         profiler-report-toggle-entry (Bug #13455).
7255 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7257         Enable addition of local printers from a mode hook.
7259         * doc/misc/ses.texi (Printer functions): Split the node into 5
7260         sub-nodes + add some extra documentation.
7261         (Various kinds of printer functions): Make an itemisation to
7262         disintguish better the 3 types of printers, give an example of
7263         lambda printer definition.
7264         (Standard printer functions): Add documentation for ses-prin1
7265         printer function.
7266         (Local printer functions): Add documentation for creating
7267         local printers programmatically from a hook.
7268         (Writing a lambda printer function): Add documentation about
7269         anti-stackoverflow precautions to take when you call the
7270         standard printer functions from inside a local printer.
7272         * lisp/ses.el (ses-standard-printer-functions): Add ses-prin1
7273         among standard printer function, and update docstring
7274         accordingly.
7275         (ses-call-printer, ses-export-tab): Call `ses-prin1' instead
7276         of prin1-to-string.
7277         (ses-define-local-printer): Add definition to arguments so
7278         that a local printer can be defined programmatically from a
7279         mode hook.  Make docstring more substantial.  Use completing
7280         read for local printer name input.  Plus some minor
7281         optimization.
7282         (ses-define-if-new-local-printer): New defsubst.
7283         (ses-center, ses-center-span, ses-dashfill)
7284         (ses-dashfill-span, ses-tildefill-span): Allow to pass printer
7285         as an optional argument to superseed column printer/default
7286         spreadsheet printer.
7287         (ses-prin1): New defun.
7289 2016-07-27  Ted Zlatanov  <tzz@lifelogs.com>
7291         Prompt to save gnus-cloud-method.
7293         Since `gnus-cloud-method' is a defcustom, when it's set, we should
7294         prompt the user to save it, so the customization is not lost on
7295         restart.
7297         * gnus-srvr.el (gnus-server-toggle-cloud-method-server): Prompt to
7298         save the customization of `gnus-cloud-method'.
7300 2016-07-27  Ken Brown  <kbrown@cornell.edu>
7302         Fix dired-test-bug22694
7304         * test/lisp/dired-tests.el (dired-test-bug22694): Delete the
7305         "bug22694" directory, if it exists, before running the test.  It
7306         might be left over from a previous aborted run of the test.
7308 2016-07-27  Michal Nazarewicz  <mina86@mina86.com>
7310         Fix ‘is multibyte’ test regex.c’s mutually_exclusive_p (bug#24020)
7312         * src/regex.c (mutually_exclusive_p): Fix how whether character is
7313         unibyte is tested when calling execute_charset function.  This bug has
7314         been introduced by [6dc6b00: Fix ‘[[:cc:]]*literal’ regex failing to
7315         match ‘literal’] which dropped a call to IS_REAL_ASCII (c) macro.
7316         Reinstitute it.
7318 2016-07-27  Tino Calancha  <tino.calancha@gmail.com>
7320         Remove hook when disabling ibuffer-auto-mode
7322         * lisp/ibuf-ext.el (ibuffer-auto-mode):
7323         Remove 'ibuffer-auto-update-changed' from 'post-command-hook'.
7325 2016-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
7327         * lisp/subr.el (cancel-change-group): Reset cell in case of error
7329         Since the setcdr/setcdr is supposed to be temporary, use unwind-protect
7330         to make sure we properly undo the temporary change even in case of error.
7332 2016-07-26  Eli Zaretskii  <eliz@gnu.org>
7334         Avoid segfaults in compute_motion
7336         * src/indent.c (compute_motion): Don't turn on and don't use the
7337         width cache unless the buffer's width-table is non-nil.  This
7338         avoids segfaults because code that uses the width cache assumes
7339         the width-table exists.  (Bug#24064)
7341 2016-07-26  Nicolas Petton  <nicolas@petton.fr>
7343         Do not sharp-quote lambdas
7345         * lisp/progmodes/sql.el: Remove sharp-quotes in lambdas.
7347 2016-07-25  Ted Zlatanov  <tzz@lifelogs.com>
7349         * gnus-cloud.el (gnus-cloud-encode-data): Fix 'base64-gzip encoding.
7351 2016-07-25  Andrew Hyatt  <ahyatt@gmail.com>
7353         Add warning to format-alist docs.
7355         */doc/lispref/files.texi (format-alist) Change documentation for
7356         format-alist to warn against file modifications when formatting, which
7357         leads to incorrect results.  (Bug#5440)
7359         Changes suggested by Eli.
7361 2016-07-25  Katsumi Yamaoka  <yamaoka@jpl.org>
7363         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
7364         Preserve key bindings that shr adds (bug#23964).
7366 2016-07-25  Michal Nazarewicz  <mina86@mina86.com>
7368         Fix ‘[[:cc:]]*literal’ regex failing to match ‘literal’ (bug#24020)
7370         The regex engine tries to optimise Kleene star by avoiding backtracking
7371         when it can detect that star’s operand cannot match what follows it in
7372         the pattern.
7374         For example, when ‘[[:alpha:]]*1’ tries to match a ‘foo’, the engine
7375         will test the longest match for ‘[[:alpha:]]*’, namely ’foo’ which is
7376         the entire string.  Literal digit one still present in the pattern will
7377         however not match the remaining empty string.
7379         Normally, backtracking would be performed trying a shorter match for the
7380         character class (namely ‘fo’ leaving ‘o’ in the string), but since the
7381         engine knows whatever would be put back into the string cannot possibly
7382         match literal digit one so no backtracking will be attempted.
7384         In the regexes of the form ‘[[:CC:]]*X’, the optimisation can be applied
7385         if the character class CC does not match character X.  In the above
7386         example, this holds because digit one is not in alpha character class.
7388         This test is performed by mutually_exclusive_p function but it did not
7389         check class bits of a charset opcode.  This resulted in an assumption
7390         that character classes do not match multibyte characters.  For example,
7391         it would incorrectly conclude that [[:alpha:]] doesn’t match ‘ż’.
7393         This, in turn, led to the aforementioned Kleene star optimisation being
7394         incorrectly applied in patterns such as ‘[[:graph:]]*☠’ (which should
7395         match ‘☠’ but doesn’t as can be tested by executing
7396             (string-match-p "[[:graph:]]*☠" "☠")
7397         which should return 0 but instead yields nil.
7399         This issue affects any class witch matches multibyte characters, i.e.
7400         if ‘[[:cc:]]’ matches a multibyte character X then ‘[[:cc:]]*X’ will
7401         fail to match ‘X’.
7403         * src/regex.c (executing_charset): A new function for executing the
7404         charset and charset_not opcodes.  It performs check on the character
7405         taking into consideration existing bitmap, range table and class bits.
7406         It also advances the pointer in the regex bytecode past the parsed
7407         opcode.
7408         (CHARSET_LOOKUP_RANGE_TABLE_RAW, CHARSET_LOOKUP_RANGE_TABLE): Removed.
7409         Code now included in executing_charset.
7410         (mutually_exclusive_p, re_match_2_internal): Changed to take advantage
7411         of executing_charset function.
7413         * test/src/regex-tests.el: New file with tests for the character class
7414         matching.
7416 2016-07-25  Nicolas Petton  <nicolas@petton.fr>
7418         Fix auto-reverting image-mode buffer (bug#21598)
7420         When auto-reverting an image buffer, `image-mode' is not called since
7421         `revert-buffer' is called with `preserve-modes' set to non-nil.
7423         * lisp/image-mode.el (image-after-revert-hook): Check if there is an
7424         image display property for the current buffer before updating it.
7426 2016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
7428         ‘signal’ no longer returns
7430         Although for decades ‘signal’ has been documented to not return,
7431         a corner case in the Lisp debugger causes ‘signal’ to return.
7432         Remove the corner case and adjust Emacs internals accordingly.
7433         An alternative would be to document the corner case, but this
7434         would complicate the Lisp API unnecessarily.  (Bug#24047)
7435         * src/eval.c (signal_or_quit): New function, with most of the
7436         old contents of Fsignal.
7437         (quit): New function, which uses signal_or_quit and which
7438         might return.  All keyboard-based callers of Fsignal (Qquit,
7439         Qnil) changed to use this new function instead.
7440         (Fsignal): Use signal_or_quit.  Now _Noreturn.  All callers
7441         changed.
7442         (xsignal): Move to lisp.h.
7443         * src/lisp.h (xsignal): Now an inline function, as it's now
7444         just an alias for Fsignal.
7446 2016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
7448         Require libgnutls unless --with-gnutls=no
7450         * configure.ac: Report an error if the gnutls library is missing,
7451         unless --with-gnutls=no is specified.
7453 2016-07-23  Alan Mackenzie  <acm@muc.de>
7455         Fontify C++ parameter packs.
7457         This fixes debbugs #23610.
7459         * lisp/progmodes/cc-langs.el (c-pack-ops, c-pack-key): New
7460         c-lang-defconsts/defvars.
7461         (c-type-decl-prefix-key): Add "..." and "&&" into the C++ version.
7463         * lisp/progmodes/cc-engine.el (c-forward-type): Handle matches of c-pack-key.
7465 2016-07-23  Alan Mackenzie  <acm@muc.de>
7467         Java Mode: Handle strings as case labels correctly.
7469         This fixes debbugs #23901.
7471         * lisp/progmodes/cc-langs.el (c-nonlabel-token-key): Remove "\"" from the
7472         Java value.
7474 2016-07-22  Kaushal Modi  <kaushal.modi@gmail.com>
7476         Avoid repeated warnings while restoring desktop
7478         * lisp/desktop.el (desktop-restore-file-buffer): Do not print warnings
7479         when files are being opened during desktop restore.
7481 2016-07-22  Eli Zaretskii  <eliz@gnu.org>
7483         Fix compilation warning in the MinGW build
7485         * nt/inc/ms-w32.h: Include stdint.h.
7486         (_execvp, execve): Provide prototypes.
7488         * lib-src/emacsclient.c [WINDOWSNT]: Remove prototype for execvp,
7489         it is now in nt/inc/ms-w32.h.
7490         * lib-src/ntlib.c (getppid): Avoid compiler warnings due to format
7491         mismatch.
7492         (sys_ctime): Remove, not used.
7494 2016-07-22  Lars Ingebrigtsen  <larsi@gnus.org>
7496         Move read-multiple-choice to subr-x.el
7498         * lisp/faces.el (read-multiple-choice-face): Fix doc string.
7500         * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Move here
7501         from subr.el.
7503         * lisp/gnus/message.el (subr-x): Ditto.
7505         * lisp/net/nsm.el: Require subr-x for read-multiple-choice.
7507         read-multiple-choice doesn't need to be in the dumped Emacs, so move
7508         it to a less central file.
7510 2016-07-22  Tino Calancha  <tino.calancha@gmail.com>
7512         Update define-ibuffer-op doc string
7514         * lisp/ibuf-macs.el (define-ibuffer-op):
7515         Mention that BODY is evaluated with 'buf' bound to the actual
7516         marked buffer being processed.
7518 2016-07-22  Tino Calancha  <tino.calancha@gmail.com>
7520         Update define-ibuffer-op doc string
7522         * lisp/ibuf-macs.el (define-ibuffer-op): Document arg COMPLEX
7523         instead of refer the reader to the source code.
7524         Document arg BODY.
7526 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7528         Fix shell-command[-on-region] doc strings
7530         * lisp/simple.el (shell-command, shell-command-on-region):
7531         Drop the sentence saying that the command may delete the buffer
7532         '*Shell Command Output*': the command never delete such
7533         buffer (Bug#23936).
7535 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
7537         ;Revert ";Partially revert 2649105a"
7539         This reverts commit b7651649c2b1321a0c510116c1ac2442599d9a2e.
7541 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
7543         ;Partially revert 2649105a
7545         * lisp/textmodes/tex-mode.el (tex-common-initialization): Use
7546         setq-local to modify prettify-symbols-compose-predicate.
7548 2016-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7550         * src/bytecode.c: Fix compilation with BYTE_CODE_SAFE
7552         (struct byte_stack): Re-add `bottom'.
7553         (exec_byte_code): Initialize it.
7555 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7557         Ibuffer: Use default output buffer for shell commands
7559         * lisp/ibuf-ext.el (shell-command-pipe): Insert the output in buffer
7560         '*Shell Command Output*', as command 'shell-command-file'.
7562 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7564         Fix failing test
7566         * test/lisp/erc/erc-track-tests.el (erc-track--erc-faces-in):
7567         Enable Font Lock mode in order to initialize
7568         'char-property-alias-alist' (Bug#23954).
7570 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
7572         Fix use-after-close in connect_network_socket
7574         * src/process.c (connect_network_socket): Don’t use
7575         external_sock_fd after closing it.  Problem found by Coverity Scan.
7577 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
7579         * lisp/net/shr.el (shr-fill-line):
7580         Preserve text properties in folded lines (bug#24034).
7582 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7584         Fix lifetime bug in tzlookup
7586         * src/editfns.c (tzlookup): Fix storage lifetime bug when
7587         INTEGERP (zone) && settz.  Problem found by Coverity Scan.
7589 2016-07-20  Lars Ingebrigtsen  <larsi@gnus.org>
7591         Fix shr.el/image build problem
7593         (Bug#24035)
7595         * lisp/net/shr.el: Require image, since some builds seem to
7596         break without it (bug#24035).
7598 2016-07-20  Ted Zlatanov  <tzz@lifelogs.com>
7600         Bring the Gnus Cloud package into working order.
7602         * lisp/gnus/gnus-sync.el: Removed in favor of gnus-cloud.el.
7604         * lisp/gnus/gnus-cloud.el: Autoload EPG functions. Change storage format to
7605         simplify non-file data.
7606         (gnus-cloud-storage-method): New defcustom to support nil, Base64,
7607         Base64+gzip, or EPG encoding on the Gnus Cloud IMAP server. Defaults to
7608         EPG if that's available, Base64+gzip otherwise.
7609         (gnus-cloud-interactive): New defcustom to make Gnus Cloud operations
7610         interactive, defaults to enabled.
7611         (gnus-cloud-group-name): New variable for the Gnus Cloud group name.
7612         (gnus-cloud-make-chunk): Tag with "Gnus-Cloud-Version" instead of just
7613         "Version".
7614         (gnus-cloud-insert-data): Simplify and support :newsrc-data entries.
7615         (gnus-cloud-encode-data, gnus-cloud-decode-data): Support various
7616         storage methods as per gnus-cloud-storage-method.
7617         (gnus-cloud-parse-chunk): Look for "Gnus-Cloud-Version" marker.
7618         (gnus-cloud-parse-version-1): Fix parsing loop bug. Handle :newsrc-data
7619         entries.
7620         (gnus-cloud-update-all): Handle :newsrc-data entries and dispatch to
7621         file and data handlers.
7622         (gnus-cloud-update-newsrc-data): New function to handle :newrsc-data
7623         entries.
7624         (gnus-cloud-update-file): Rework to support gnus-cloud-interactive and
7625         be more careful.
7626         (gnus-cloud-delete-file): Remove; merged into gnus-cloud-update-file.
7627         (gnus-cloud-file-covered-p, gnus-cloud-all-files)
7628         (gnus-cloud-files-to-upload, gnus-cloud-ensure-cloud-group)
7629         (gnus-cloud-add-timestamps, gnus-cloud-available-chunks)
7630         (gnus-cloud-prune-old-chunks): Fix indentation.
7631         (gnus-cloud-timestamp): New function to make a standard Gnus Cloud
7632         timestamp.
7633         (gnus-cloud-file-new-p): Use it.
7634         (gnus-cloud-upload-all-data): Add interactive convenience function to
7635         upload all data.
7636         (gnus-cloud-upload-data): Make interactive; collect files and newsrc
7637         data separately; refresh Gnus Cloud group after insert.
7638         (gnus-cloud-download-all-data): Add interactive convenience function to
7639         download all data.
7640         (gnus-cloud-download-data): Rework to support "Gnus-Cloud-Version"
7641         marker and different storage methods.
7642         (gnus-cloud-host-server-p): New function to check if a server is the
7643         Gnus Cloud host.
7644         (gnus-cloud-collect-full-newsrc): Tag entries with :newsrc-data.
7645         (gnus-cloud-host-acceptable-method-p): New function so
7646         other code can check if a server method can host the Gnus cloud.
7647         (gnus-cloud-storage-method): Use 'radio instead of 'choice for better UI.
7648         (gnus-cloud-method): Make this a defcustom and note how to set it.
7650         * lisp/gnus/gnus-group.el (gnus-group-cloud-map): Add Gnus Cloud autoloaded
7651         keybindings under the `~' prefix.
7653         * lisp/gnus/gnus-srvr.el (gnus-server-mode-map, gnus-server-make-menu-bar)
7654         (gnus-server-cloud, gnus-server-cloud-host)
7655         (gnus-server-font-lock-keywords, gnus-server-insert-server-line)
7656         (gnus-server-toggle-cloud-method-server): Support Gnus Cloud
7657         synchronized servers and synchronization host server toggling (`i' and
7658         `I') and visual display.
7659         (gnus-server-toggle-cloud-method-server): Use
7660         gnus-cloud-host-acceptable-method-p.
7661         (gnus-server-toggle-cloud-method-server): Use custom-set-variables to
7662         set the gnus-cloud-method. Ask the user if it's OK to upload the data
7663         right now.
7665         * doc/misc/gnus.texi: Document Gnus Cloud package.
7667 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7669         Remove CHECK_FRAME_FONT cruft from bytecode.c
7671         * src/bytecode.c [CHECK_FRAME_FONT]: Do not include frame.h, xterm.h.
7672         Remove some old ‘#if 0’ code.
7674 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7676         Work around GCC bug 54561 in a better way
7678         The new approach is less selective, but also less intrusive on C code.
7679         * src/bytecode.c, src/image.c, src/keyboard.c: Ignore -Wclobbered.
7680         * src/conf_post.h (NONVOLATILE): Remove.  All uses removed.
7682 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7684         Fix port to glibc 2.24 (pre-release) + ppc64
7686         * src/callproc.c (child_setup): Use emacs_exec_file
7687         so that ASLR is enabled in the child process.
7688         * src/emacs.c: Move some personality details into sys/sysdep.c.
7689         Do not include <sys/personality.h>.
7690         (main): Disable ASLR earlier, so that we don’t chdir twice.
7691         * src/lisp.h (disable_address_randomization): New decl.
7692         * src/sysdep.c (disable_address_randomization)
7693         [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]: Move personality details
7694         here from emacs.c.
7695         (emacs_exec_file): New function.
7697 2016-07-19  Alan Third  <alan@idiocy.org>
7699         Prevent bar cursor overwriting next glyph (bug#16856)
7701         * src/nsterm.m (ns_draw_window_cursor): Test glyph width vs cursor width
7702         before setting final size.
7704 2016-07-19  Eli Zaretskii  <eliz@gnu.org>
7706         Fix 'transpose-regions' when LEAVE-MARKERS arg is non-nil
7708         * src/insdel.c (adjust_markers_bytepos): New function.
7709         * src/lisp.h (adjust_markers_bytepos): Add prototype.
7710         * src/insdel.c (replace_range, replace_range_2):
7711         * src/editfns.c (Ftranspose_regions): Call
7712         adjust_markers_bytepos.  (Bug#5131)
7714         * test/src/editfns-tests.el (transpose-test-reverse-word)
7715         (transpose-test-get-byte-positions): New functions.
7716         (transpose-ascii-regions-test)
7717         (transpose-nonascii-regions-test-1)
7718         (transpose-nonascii-regions-test-2): New tests.
7720 2016-07-19  Katsumi Yamaoka  <yamaoka@jpl.org>
7722         Make gif animation work (bug#24004)
7724         * lisp/image.el (image-animate-timeout): Fix the logic that tests if
7725         an animation is too big (bug#24004).
7727 2016-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
7729         * lisp/simple.el (undo-amalgamate-change-group): New function
7731         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Use it.
7732         (viper-set-complex-command-for-undo): Save current state with
7733         prepare-change-group.
7734         * lisp/emulation/viper-init.el (viper-undo-needs-adjustment)
7735         (viper-buffer-undo-list-mark): Remove.
7737 2016-07-18  Noam Postavsky  <npostavs@gmail.com>
7739         Keep w32 environment settings internal only
7741         * src/emacs.c (main) [WINDOWSNT]: Move init_environment calls after the
7742         set_initial_environment call.  This prevents Emacs' modifications to the
7743         environment from contaminating Vprocess_environment and
7744         Vinitial_environment (Bug #10980).
7745         * src/callproc.c (getenv_internal) [WINDOWSNT]: Consult Emacs' internal
7746         environment in as a fallback to Vprocess_environment.
7747         * test/src/callproc-tests.el (initial-environment-preserved): New Test.
7749 2016-07-18  Nicolas Petton  <nicolas@petton.fr>
7751         Better documentation for cl-reduce (bug#24014)
7753         * lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what reducing means.
7755 2016-07-17  Alan Third  <alan@idiocy.org>
7757         Remove separate pool for popup dialogs (bug#23856)
7759         * src/nsmenu.m (pop_down_menu, ns_popup_dialog): Remove references to
7760         autorelease pool and Popdown_data struct.
7762 2016-07-17  Mark Oteiza  <mvoteiza@udel.edu>
7764         Use eldoc-documentation-functions
7766         * lisp/hexl.el (hexl-mode):
7767         * lisp/ielm.el (inferior-emacs-lisp-mode):
7768         * lisp/progmodes/cfengine.el (cfengine3-mode):
7769         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
7770         * lisp/progmodes/octave.el (octave-mode, inferior-octave-mode):
7771         * lisp/progmodes/python.el (python-mode):
7772         * lisp/simple.el (read--expression): Add buffer-locally to hook
7773         eldoc-documentation-functions.
7775 2016-07-16  Noam Postavsky  <npostavs@gmail.com>
7777         Optimize ucs-normalize.el compilation
7779         * lisp/international/ucs-normalize.el (ucs-normalize-combining-chars-regexp):
7780         (quick-check-list-to-regexp): Use regexp-opt-charset instead of
7781         regexp-opt.
7782         * lisp/international/ucs-normalize.el (quick-check-list): Reuse a single
7783         temp buffer for the whole loop.
7785 2016-07-16  Noam Postavsky  <npostavs@gmail.com>
7787         Add tests for ucs-normalize.el
7789         Some tests are marked as expected to fail.
7791         * test/lisp/international/ucs-normalize-tests.el: New tests.
7792         * admin/unidata/NormalizationTest.txt: Add data for tests.
7793         * admin/unidata/README: Add URL for NormalizationTest.txt.
7794         * admin/notes/unicode: Add note about running (and updating the data
7795         for) the new tests.  Remove note about normalization being unsupported.
7797 2016-07-16  Alan Third  <alan@idiocy.org>
7799         Fix cursor display (bug#23993)
7801         * src/xdisp.c (get_phys_cursor_geometry): Fix invalid C operator.
7803 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7805         Stop worrying about Alliant in bytecode.c
7807         * src/bytecode.c (PUSH): Remove workaround for long-obsolete compiler.
7809 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7811         Remove BYTE_MAINTAIN_TOP
7813         It is no longer needed now that we assume GC_MARK_STACK ==
7814         GC_MAKE_GCPROS_NOOPS.
7815         * src/bytecode.c (BYTE_MAINTAIN_TOP): Remove.
7816         All uses removed, and code simplified accordingly.
7817         (BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Remove, since they
7818         are always no-ops now.  All uses removed.
7819         (MAYBE_GC): Remove.  All uses replaced by maybe_gc,
7820         since it is now equivalent.
7822 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7824         Remove now-inaccurate bytecode comments
7826         * src/bytecode.c: Remove comments that are no longer accurate.
7827         Most of these are actually old ChangeLog entries.
7829 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7831         Port to glibc 2.24 (pre-release) + ppc64
7833         Inspired by a suggestion by Florian Weimer in:
7834         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
7835         * configure.ac (HAVE_PERSONALITY_ADDR_NO_RANDOMIZE):
7836         Rename from HAVE_PERSONALITY_LINUX32, and check for
7837         ADDR_NO_RANDOMIZE (the crucial thing) instead of for LINUX32.
7838         All uses changed.
7839         * src/emacs.c (main) [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]:
7840         Use ADDR_NO_RANDOMIZE from personality.h rather than inventing the
7841         flag ourselves.  Just set that flag, rather than also setting the
7842         persona.  When doing it, avoid functions like putenv that may
7843         allocate memory.
7845 2016-07-14  Mark Oteiza  <mvoteiza@udel.edu>
7847         Revert "Add a couple cells to lisp-prettify-symbols-alist"
7849         This reverts commit bdda4855c635ecf4135e23321bdba023e9ae65c9.
7851 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7853         * lisp/simple.el (shell-command): Add save-match-data comment
7855 2016-07-14  Alan Mackenzie  <acm@muc.de>
7857         CC Mode: correct incorrect invocation of parse-partial-sexp.
7859         Fixes bug #23944.
7861         * lisp/progmodes/cc-engine.el (c-literal-limits): make the sixth argument of
7862         an invocation of parse-partial-sexp 'syntax-table, not the fourth.
7864 2016-07-14  Andreas Schwab  <schwab@suse.de>
7866         Fix configure summary for hybrid malloc configurations
7868         * configure.ac ("$hybrid_malloc" = yes): Set GNU_MALLOC to no,
7869         parenthesize value of GNU_MALLOC_reason.
7871 2016-07-14  Stephen Berman  <stephen.berman@gmx.net>
7873         Fix delete-duplicate-lines
7875         * lisp/sort.el (delete-duplicate-lines): Delete duplicate
7876         first line when operating backward (bug#23863).
7878 2016-07-14  Andreas Schwab  <schwab@suse.de>
7880         Remove unused SHEAP_OBJ
7882         * Makefile.in (base_obj): Remove $(SHEAP_OBJ).
7884 2016-07-13  Katsumi Yamaoka  <yamaoka@jpl.org>
7886         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
7887         Use shr-image-map instead of shr-map (bug#23964).
7889 2016-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7891         * lisp/mouse.el (mouse): Consolidate group definition here
7893         * lisp/cus-edit.el (mouse): Remove both group definitions.
7895 2016-07-13  Chris Feng  <chris.w.feng@gmail.com>
7897         Include versioned preloaded libraries in `package--builtin-versions'
7899         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Do not
7900         exclude preloaded libraries or remove entries generated for them.
7901         (autoload-generate-file-autoloads): Do not generate autoload
7902         statements for preloaded libraries.
7904 2016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
7906         Omit unnecessary #includes from xwidget.c
7908         * src/xwidget.c: Remove #include directives that are not needed.
7909         Also, don’t conditionalize #includes on HAVE_X_WINDOWS, since this
7910         file is compiled only if the X interface is available.
7912 2016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
7914         Port xwidget.c to GCC 6 with --enable-gcc-warnings
7916         * src/xwidget.c (x_draw_xwidget_glyph_string, xwidget_end_redisplay):
7917         Adjust to pacify GCC.  Add a couple of FIXME comments, suggesting
7918         possible bugs found by GCC.
7920 2016-07-12  Tino Calancha  <tino.calancha@gmail.com>
7922         Escape meta chars in commands processed by shell
7924         * lisp/progmodes/grep.el (grep-compute-defaults): Quote braces
7925         in all commands to be passed to a shell (Bug#23959).
7927 2016-07-12  John Wiegley  <johnw@newartisans.com>
7929         Revert "Cleanup tooltips"
7931         This reverts commit 20038f8ab75dd1551412a43cd58520c483c22921.
7933         I am reverting this change because it was applied without prior discussion
7934         on emacs-devel, and has been found to break the NS port.  It needs more
7935         testing and review before it should be applied here.
7937 2016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7939         * lisp/emacs-lisp/cl-macs.el (cl--prog): New function
7941         (cl-prog, cl-prog*): New macros.
7943 2016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7945         * cl-generic.el (cl-defmethod): Make docstring dynamic
7947         * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic.
7948         (cl--generic-make-defmethod-docstring): New function for that.
7949         (cl-defmethod, cl-generic-generalizers): Tweak docstrings accordingly.
7950         (cl-generic-define-method, cl--generic-describe): Change `load-history'
7951         format of cl-defmethods, so as not to confused methods with equal
7952         specializers but different qualifiers.
7953         * lisp/emacs-lisp/eieio-core.el (cl-generic-generalizers): Provide docstrings.
7955 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
7957         Don't install keyboard hook when debugged on MS-Windows
7959         * src/w32fns.c (setup_w32_kbdhook): Don't install the keyboard
7960         hook if we are being debugged.  This avoids hosing the debugger,
7961         because the hook is global, and is called in the context of the
7962         thread which installed it, and that thread is stopped when GDB has
7963         control.  Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
7965 2016-07-12  Alan Mackenzie  <acm@muc.de>
7967         Amend CC Mode to handle big C++ raw strings correctly.
7969         Problems were caused by such a string spanning jit-lock chunks, and by a flaw
7970         in the +-500 bytes boundaries imposed for macros.
7972         * lisp/progmodes/cc-mode.el (c-extend-region-for-CPP): Check the +-500 byte
7973         macro boundaries here.
7974         (c-extend-font-lock-region-for-macros): Remove the check on the +-500 byte
7975         lower boundary.  Fix the check on the upper boundary.
7977         * lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Handle the starting
7978         point already being within a raw string.
7980         * lisp/progmodes/cc-engine.el (c-raw-string-pos)
7981         (c-depropertize-raw-strings-in-region, c-after-change-re-mark-raw-strings):
7982         Modify regexp element "\\{,16\\}" to "\\{0,16\\}" for greater compatibility
7983         with other Emacsen.
7985 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
7987         * lisp/mouse.el (mouse-select-region-move-to-beginning): Add :group.
7989 2016-07-11  Dmitry Antipov  <dmantipov@yandex.ru>
7991         Cleanup tooltips
7993         * src/dispextern.h (toplevel): Remove 'tip_frame' and 'tip_window' decls.
7994         * src/frame.h (struct frame): New bitfield to indicate tooltip frame.
7995         (FRAME_TOOLTIP_P): New macro.
7996         * src/frame.c (make_frame): Mark new frame as regular frame by default.
7997         (Fframe_list, delete_frame): Redesign to use FRAME_TOOLTIP_P.
7998         (syms_of_frame): Don't DEFSYM 'Qtooltip' but use 'Qtooltip_timer'
7999         and 'Qtooltip_parameters' instead.
8000         * src/gtkutil.h (toplevel): Add 'xg_hide_tip' decl.
8001         * src/gtkutil.c (xg_hide_tip): New function.
8002         (xg_hide_tooltip): Adjust to cancel GTK event loop timeout if needed.
8003         * src/menu.c (Fx_popup_menu): Adjust call to Fx_hide_tip.
8004         * src/nsfns.c (toplevel): Remove 'tip_frame' leftover.
8005         * src/w32fns.c (unwind_create_tip_frame): Remove.
8006         (w32_display_monitor_attributes_list)
8007         (w32_display_monitor_attributes_list_fallback): Use FRAME_TOOLTIP_P.
8008         (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
8009         (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
8010         as a tooltip frame and record it using appropriate display info.
8011         (x_hide_tooltip): Add frame arg.
8012         (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
8013         base frame parameters, store tooltip hide timer among tooltip frame
8014         parameters.
8015         (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
8016         (syms_of_w32fns): Don't DEFSYM 'Qtip_frame', don't initialize
8017         and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
8018         * src/w32term.c (w32_read_socket): Extract tooltip window id from
8019         per-display data.  Use FRAME_TOOLTIP_P where appropriate.
8020         (x_new_font): Use FRAME_TOOLTIP_P.
8021         (x_free_frame_resources): Reset pointer to tooltip frame.
8022         * src/w32term.h (struct w32_display_info): New member 'w32_tooltip_frame'.
8023         * src/xdisp.c (init_iterator, x_consider_frame_title, prepare_menu_bars):
8024         Use FRAME_TOOLTIP_P.
8025         * src/xfns.c (x_make_monitor_attribute_list)
8026         (Fx_display_monitor_attributes_list): Likewise.
8027         (unwind_create_tip_frame): Remove.
8028         (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
8029         (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
8030         as a tooltip frame and record it using appropriate display info.
8031         (x_hide_tooltip): Add frame arg.
8032         (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
8033         base frame parameters, store tooltip hide timer among tooltip frame
8034         parameters.  To hide GTK system tooltip, use timeout hooked into GTK
8035         event loop.
8036         (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
8037         (syms_of_xfns): Don't DEFSYM 'Qtip_frame', don't initialize
8038         and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
8039         * src/xterm.c (handle_one_xevent): Extract tooltip window id from
8040         per-display data.  Use FRAME_TOOLTIP_P where appropriate.
8041         (x_new_font, x_set_window_size): Use FRAME_TOOLTIP_P.
8042         (x_free_frame_resources): Reset pointer to tooltip frame.
8043         * src/xterm.h (struct x_display_info): New member 'x_tooltip_frame'.
8044         (struct x_output) [USE_GTK_TOOLTIP]: New member 'ttip_timeout'.
8046 2016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8048         * src/fns.c (syms_of_fns): Leave `features' lexically scoped
8050 2016-07-11  Mario Lang  <mlang@delysid.org>
8052         Test mapcan
8054         * test/src/fns-tests.el (fns-tests-mapcan): New test.
8056 2016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8058         Prevent to apply funcall on t
8060         * lisp/vc/ediff-util.el (ediff-really-quit): Ignore the global part of
8061         'ediff-after-quit-hook-internal' hook (Bug#23933).
8063 2016-07-11  Tino Calancha  <tino.calancha@gmail.com>
8065         Ignore angle mode while simplifying units
8067         * lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
8068         Ignore value of 'calc-angle-mode' when 'math-simplifying-units'
8069         is non-nil (Bug#23889).
8070         * lisp/calc/calc-math.el (math-to-radians, math-from-radians)
8071         (math-from-radians-2, math-to-radians-2): Idem.
8073 2016-07-11  Eli Zaretskii  <eliz@gnu.org>
8075         Fix display of composed characters
8077         * src/xdisp.c (x_produce_glyphs): Fix off-by-one error in
8078         iteration through composition glyphs.  (Bug#23938)
8080 2016-07-11  Paul Eggert  <eggert@cs.ucla.edu>
8082         Fix composition bug caused by off-by-1 typo
8084         * src/xdisp.c (x_produce_glyphs): Fix off-by-one typo when
8085         computing composition glyph (Bug#23938).
8087 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8089         Dired always read file system
8091         * dired.el (dired-always-read-filesystem): Add new option.
8092         (dired-mark-files-containing-regexp): Use it (Bug#22694).
8093         * doc/emacs/dired.texi: Mention it in the manual.
8094         * test/lisp/dired-tests.el (dired-test-bug22694): Add test.
8095         ;* etc/NEWS: Add entry for this change.
8097 2016-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8099         * src/macfont.m (mac_font_shape): Make sure that total_advance is increasing.
8101 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8103         Avoid 'unused var' 'not left unused var' warnings
8105         * lisp/ibuffer.el (ibuffer-locked-buffer-p): Remove unused var 'char'.
8106         Rename used var '_buffer' to 'cbuffer'.
8108         * lisp/ibuf-ext.el (ibuffer-unmark-all): Rename used var '_mark'
8109         to cmark'.
8111 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8113         * lisp/simple.el (shell-command, shell-command-on-region): Fix doc strings
8115 2016-07-10  Michael Albinus  <michael.albinus@gmx.de>
8117         Add a note how to use `tramp-own-remote-path'
8119         * doc/misc/tramp.texi (Inline methods, External methods)
8120         (Remote shell setup, Android shell setup)
8121         (Frequently Asked Questions, Frequently Asked Questions):
8122         Use @command and @samp consequently.
8123         (Remote programs): The remote shell must support the -l
8124         argument, in order to use `tramp-own-remote-path'.  (Bug#23914)
8126 2016-07-10  Alan Third  <alan@idiocy.org>
8128         Remove App Nap setting from Info.plist (bug#22993)
8130         * nextstep/templates/Info.plist.in: Remove LSAppNapIsDisabled key since
8131         it doesn't actually disable app nap.
8133 2016-07-09  Mario Lang  <mlang@delysid.org>
8135         An efficient built-in mapcan
8137         A built-in version of `mapcan' avoids consing up (and GC'ing) the
8138         intermediate list.
8140         * src/fns.c (Fmapcan): New built-in.
8141         (syms_of_fns): Define.
8143         * lisp/emacs-lisp/cl.el (mapcan): Remove defalias.
8145         * lisp/emacs-lisp/cl-extra.el (cl-mapcan): Use built-in `mapcan'
8146         if only one sequence is provided.
8148         * lisp/progmodes/hideif.el (hif-delimit):
8149         * lisp/dired-aux.el (dired-do-find-regexp):
8150         * lisp/woman.el (woman-parse-colon-path): Use `mapcan' instead of
8151         `cl-mapcan'.
8153         * lisp/woman.el (eval-when-compile): Require 'cl-lib only when
8154         compiling.
8156         * lisp/mouse.el (mouse-buffer-menu-map):
8157         * lisp/net/pop3.el (pop3-uidl-dele):
8158         * lisp/progmodes/gud.el (gud-jdb-build-source-files-list):
8159         * lisp/cedet/semantic/db-find.el (semanticdb-fast-strip-find-results):
8160         * lisp/cedet/semantic/symref/grep.el (semantic-symref-derive-find-filepatterns):
8161         * lisp/gnus/nnmail.el (nnmail-split-it):
8162         * lisp/gnus/gnus-sum.el (gnus-articles-in-thread):
8163         * lisp/gnus/gnus-registry.el (gnus-registry-sort-addresses):
8164         * lisp/gnus/gnus-util.el (gnus-mapcar): Use `mapcan'.
8166 2016-07-09  Tino Calancha  <tino.calancha@gmail.com>
8168         Detect aliases to built-in functions
8170         * lisp/help-fns.el (describe-function-1): Check for aliases
8171         defined with (defalias alias (symbol-function built-in)) (Bug#23887).
8173         * test/lisp/help-fns-tests.el (help-fns-test-bug23887): Untag as
8174         failing this test.
8176 2016-07-09  Michael Albinus  <michael.albinus@gmx.de>
8178         Avoid recursive detection of remote uid and gid in tramp-gvfs.el
8180         * lisp/net/tramp-gvfs.el (tramp-gvfs-get-remote-uid-gid-in-progress):
8181         New variable.
8182         (tramp-gvfs-maybe-open-connection): Use it.
8184         * test/lisp/net/tramp-tests.el (tramp-test18-file-attributes):
8185         Reorder test.
8187 2016-07-09  Jürgen Hötzel  <juergen@archlinux.org>
8189         Wrap around error in coreutil's ls
8191         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Add switch
8192         "--quoting-style=literal" if remote host supports quoting style.
8193         Recent versions of coreutils changed default quoting style to
8194         "--quoting=shell-escape".
8196 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
8198         Minor tweaks of copying text properties when padding strings
8200         * src/editfns.c (styled_format): Don't include padding on the left
8201         in the properties at the beginning of the string.  (Bug#23897)
8203         * test/src/editfns-tests.el (format-properties): Add tests for
8204         faces when the string is padded on the left or on the right.
8206 2016-07-08  Mario Lang  <mlang@delysid.org>
8208         No need to require the same feature twice.
8210         * lisp/dired-aux.el (require 'cl-lib): Remove.
8212 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8214         Turn on lexical binding
8216         * lisp/net/secrets.el (secrets-collection-handler): Use cl-pushnew.
8217         (secrets-search-items, secrets-create-item): Use append.
8218         (secrets-show-secrets): Remove unused binding.
8219         (secrets-expand-item, secrets-tree-widget-after-toggle-function):
8220         Ignore unused arguments.
8222 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8224         Derive secrets-mode from special-mode
8226         * lisp/net/secrets.el: Remove top-level secrets-mode hack.
8227         (secrets-mode-map): New variable.  Add key bindings to n and p for
8228         navigating lines.
8229         (secrets-mode): Derive from special-mode.  Remove keymap code and
8230         initialization code.  Do not record undo information.  Make
8231         secrets-show-collections the local revert-buffer-function.
8232         (secrets-show-collections): Change signature to satisfy revert-buffer.
8234 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8236         Add a couple cells to lisp-prettify-symbols-alist
8238         * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist): Add
8239         "sqrt" and "not".
8241 2016-07-08  Michael Albinus  <michael.albinus@gmx.de>
8243         Detect remote uid and gid in tramp-gvfs.el
8245         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
8246         (tramp-gvfs-handler-mounted-unmounted)
8247         (tramp-gvfs-connection-mounted-p):
8248         Make "default-location" a connection property.
8249         (tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid): New defuns.
8250         (tramp-gvfs-maybe-open-connection): Use them.
8252 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
8254         Yet another fix for copying properties by 'format'
8256         * src/textprop.c (extend_property_ranges): Accept an additional
8257         argument OLD_END, and only extend the end of a property range if
8258         its original end is at OLD_END; all the other ranges are left
8259         intact.  (Bug#23897)
8260         * src/editfns.c (styled_format): Pass the original length of the
8261         string to 'extend_property_ranges'.
8262         * src/intervals.h (extend_property_ranges): Adjust prototype.
8264         * test/src/editfns-tests.el (format-properties): Add tests for
8265         bug#23897.
8267 2016-07-08  Stephen Berman  <stephen.berman@gmx.net>
8269         Allow selecting region with mouse to move point to beginning
8271         * etc/NEWS: Mention new user option
8272         `mouse-select-region-move-to-beginning'.
8274         * doc/emacs/frames.texi (Mouse Commands): Add cross-reference
8275         to the following.
8276         (Word and Line Mouse): Describe how double-clicking mouse-1 to
8277         activate region and `mouse-select-region-move-to-beginning'
8278         affect point.
8280         * lisp/mouse.el (mouse-select-region-move-to-beginning): New defcustom.
8281         (mouse-set-point): Use it.  (Bug#23478)
8283 2016-07-08  Stephen Berman  <stephen.berman@gmx.net>
8285         Fix menu bar breakage
8287         * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Use backquoting
8288         to prevent void variable errors, and fix typo (bug#23918).
8290 2016-07-08  Tino Calancha  <tino.calancha@gmail.com>
8292         Copy buffer names to kill ring
8294         * ibuf-ext.el (ibuffer-copy-buffername-as-kill): New command.
8295         * lisp/ibuffer (ibuffer-mode-map): Bound it to 'B'.
8296         ;* etc/NEWS: Add entry for this new feature.
8298 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8300         Remove just input mark
8302         * lisp/ibuffer.el (ibuffer-unmark-all): When MARK is not ?\r remove
8303         just MARK.
8305 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8307         Ibuffer change marks
8309         * lisp/ibuffer.el (ibuffer-change-marks): New command.
8310         (ibuffer-mode-map): Bind it to '* c'.
8311         (ibuffer-mode-groups-popup): Update menus.
8312         (ibuffer-mode): Update mode doc.
8314 2016-07-07  Alan Third  <alan@idiocy.org>
8316         Prevent NS event loop being re-entered (bug#11049)
8318         * nsterm.m (ns_read_socket, ns_select): Return -1 if already in event
8319         loop instead of aborting.
8321 2016-07-07  Alan Third  <alan@idiocy.org>
8323         Fix some deprecated functions
8325         * src/nsterm.m (firstRectForCharacterRange): In OS X >10.6 replace
8326         convertBaseToScreen with convertRectToScreen.
8327         * src/nsmenu.m (ns_update_menubar): Remove attachedMenu, deprecated in
8328         OS X 10.2, and always seems to return nil.
8330 2016-07-07  Aaron Jensen  <aaronjensen@gmail.com>  (tiny change)
8332         Disable App Nap (bug#22993)
8334         * nextstep/templates/Info.plist.in: Insert AppNap disable code.
8336 2016-07-07  Michael Albinus  <michael.albinus@gmx.de>
8338         Fix an error in Tramp for rsync
8340         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
8341         Make it work for "rsync".
8342         (tramp-make-copy-program-file-name): Apply `directory-file-name'.
8344 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8346         Ibuffer: Mark locked buffers
8348         * lisp/ibuf-ext.el (ibuffer-locked-buffer-p): New defun.
8349         (ibuffer-mark-by-locked): New command.
8350         (ibuffer-mode-map): Bind it to '% L'; update menus.
8351         (ibuffer-mode): Update mode doc.
8352         ;* etc/NEWS: Add NEWS entry for these changes and previous two commits.
8354 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8356         * lisp/ibuffer.el: Add face for locked buffers
8358         * lisp/ibuffer.el: Add mark for locked buffers
8360         ;* etc/NEWS (Ibuffer): Update entry according with last commit
8362 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8364         Remove duplicate binding
8366         * lisp/ibuffer.el (ibuffer-mode-map): 'ibuffer-mark-by-content-regexp'
8367         just bound to '% g'.
8368         As suggested in:
8369         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00165.html
8371 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8373         Ibuffer: Drop needless binding
8375         * lisp/ibuffer.el (ibuffer-mark-interactive): 'inhibit-read-only'
8376         already bound to 't' inside 'ibuffer-set-mark'.
8378 2016-07-07  Phillip Lord  <phillip.lord@russet.org.uk>
8380         Run tests from non-byte compiled files
8382         * test/Makefile.in: Eval non-byte-compiled files for tests.
8384 2016-07-06  Mark Oteiza  <mvoteiza@udel.edu>
8386         Replace eldoc-documentation-function with a hook
8388         * lisp/emacs-lisp/eldoc.el (eldoc-documentation-functions): New hook.
8389         (eldoc-documentation-function): Make into obsolete alias.
8390         (eldoc-echo-area-use-multiline-p, eldoc-highlight-function-argument):
8391         (eldoc-argument-case, global-eldoc-mode): Update docstrings.
8392         (eldoc-print-current-symbol-info): Use run-hook-with-args-until-success
8393         on eldoc-documentation-functions.
8394         (eldoc-supported-p): New function.
8395         (eldoc-mode, global-eldoc-mode, eldoc-schedule-timer): Use eldoc-supported-p.
8396         * etc/NEWS: Mention eldoc-documentation-functions.
8397         * doc/lispref/modes.texi: Update reference.
8399 2016-07-06  Simen Heggestøyl  <simenheg@gmail.com>
8401         Complete "initial" and "unset" in CSS mode
8403         * lisp/textmodes/css-mode.el (css--complete-property-value): Make
8404         "initial" and "unset" completion candidates for all CSS properties,
8405         just like "inherit".
8407         * test/lisp/textmodes/css-mode-tests.el
8408         (css-test-complete-property-value): Update test to reflect the above
8409         change.
8411 2016-07-06  Michael Albinus  <michael.albinus@gmx.de>
8413         * lisp/net/tramp-gvfs.el (tramp-gvfs-mount-spec): Fix typo.
8415 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
8417         Simplify rfc1345.el a bit
8419         * lisp/leim/quail/rfc1345.el: Omit commented-out codes for ASCII
8420         that would no longer parse.  Replace control characters with
8421         escapes in character constants.  Omit unnecessary \ after ?.
8422         This does not change behavior.
8424 2016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
8426         Prefer 'frame-parameter' where it is expected to be a bit faster
8428         * lisp/international/mule-diag.el (mule-diag):
8429         * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu):
8430         * lisp/mouse.el (mouse-drag-line, font-menu-add-default):
8431         * lisp/scroll-bar.el (toggle-scroll-bar, toggle-horizontal-scroll-bar):
8432         * lisp/faces.el (x-resolve-font-name): Use 'frame-parameter'.
8434 2016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
8436         Reduce consing caused by vertical motion commands
8438         * src/frame.c (Fframe_parameter): Avoid call to Fframe_parameters for the
8439         parameters frequently requested by calls to 'next-line' and 'previous-line'.
8441 2016-07-05  Michael Albinus  <michael.albinus@gmx.de>
8443         Make all Tramp tests pass for "gdrive" method
8445         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
8446         * lisp/net/tramp-compat.el (tramp-compat-copy-directory)
8447         (tramp-compat-delete-directory):
8448         * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
8449         Use `directory-files-no-dot-files-regexp'.
8451         * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
8452         (tramp-gvfs-send-command): Call `tramp-flush-file-property' in
8453         case of problems.
8455         * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
8456         Adapt docstring.
8457         (tramp-test14-delete-directory): Make further tests.
8459 2016-07-05  Eli Zaretskii  <eliz@gnu.org>
8461         Fix redisplay with window-start on continuation lines
8463         * src/xdisp.c (pos_visible_p): Return false if the window starts
8464         after CHARPOS.
8465         (compute_window_start_on_continuation_line): Don't return
8466         window-start position that is after point in the buffer, as the
8467         callers don't expect this to happen, and will generally display an
8468         empty window with the cursor in its middle.  (Bug#23871)
8470 2016-07-05  Tino Calancha  <tino.calancha@gmail.com>
8472         Add :expected-result :failed for unfixed bug test
8474         * test/lisp/help-fns-tests.el (help-fns-test-bug23887):
8476 2016-07-05  Tino Calancha  <tino.calancha@gmail.com>
8478         * test/lisp/help-fns-tests.el: Add several tests for 'describe-function'.
8480 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8482         Don’t create unnecessary marker in ‘delete-trailing-whitespace’
8484         * lisp/simple.el (delete-trailing-whitespace): If END argument is nil,
8485         there is no need for the end-marker to be created.
8487 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8489         Simplify ‘delete-trailing-whitespace’ by not treating \n as whitespace
8491         * lisp/simple.el (delete-trailing-whitespace): Set newline’s character
8492         syntax to non-whitespace so that ‘\s-’ regular expression does not match
8493         it.
8495         This simplifies the loop slightly since a simple ‘\s-+$’ can be used and
8496         as a consequence ‘line-beginning-position’ function does not need to be
8497         called any longer.
8499         Furthermore, when newline has whitespace syntax, ‘\s-$’ regular
8500         expression ends up matching empty lins since ‘\s-’ matches newline
8501         characetr of proceeding line.  This leads to needless loop iterations.
8503         Since previous change to ‘delete-trailing-whitespace’ already introduced
8504         ‘with-syntax-table’, take advantage of it and also overwrite newline’s
8505         character syntax.
8507 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8509         Make ‘delete-trailing-whitespace’ delete spaces after form feed
8511         * lisp/simple.el (delete-trailing-whitespace): Treat form fead as
8512         a non-whitespace character (regradless of whether it’s character syntax
8513         is whitespace) and delete any whitespace following it instead of leaving
8514         lines with form feeds completely unchanged.  I.e. a line like "\f " will
8515         now became "\f".
8517 2016-07-04  Dmitry Antipov  <dmantipov@yandex.ru>
8519         Cleanup XEditRes hack
8521         * configure.ac [USE_X_TOOLKIT]: Define X_TOOLKIT_EDITRES if
8522         _XEditResCheckMessages is declared in X11/Xmu/Editres.h and may be
8523         linked with -lXmu.  This should work with any non-ancient Xmu library.
8524         * xfns.c (toplevel): Remove old cruft.
8525         (x_window) [USE_X_TOOLKIT]: Use X_TOOLKIT_EDITRES.
8526         * xterm.c (toplevel): Remove old cruft.
8527         (handle_one_xevent): Use X_TOOLKIT_EDITRES.
8528         * xterm.h (toplevel): Include X11/Xmu/Editres.h if X_TOOLKIT_EDITRES.
8530 2016-07-04  Michael Albinus  <michael.albinus@gmx.de>
8532         Add Google Drive support to Tramp
8534         * doc/misc/tramp.texi: Add `gdrive' method.
8536         * doc/misc/trampver.texi:
8537         * lisp/net/trampver.el: Change version to "2.3.1-pre".
8539         * etc/NEWS: Add Tramp connection method "gdrive".
8541         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods) <gdrive>: Add.
8542         (tramp-default-user-alist, tramp-default-host-alist): Add rule
8543         for "gdrive".
8544         (tramp-gvfs-file-attributes): Add "name", remove "standard::icon".
8545         (tramp-gvfs-file-attributes-with-gvfs-ls-regexp): Simplify regexp.
8546         (tramp-gvfs-get-directory-attributes): Improve loop.  Use
8547         "standard::display-name" as file name, if available.
8548         (tramp-gvfs-handle-file-name-all-completions): Simplify.
8549         (tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
8550         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
8551         Map between "gdrive" and "google-drive".
8553         * lisp/net/tramp.el (tramp-call-process): Do not signal error.
8555         * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
8556         Do not enable `tramp-message-show-message'.
8557         (tramp-test13-make-directory, tramp-test14-delete-directory):
8558         Do not specify error type.
8560 2016-07-04  Tino Calancha  <tino.calancha@gmail.com>
8562         Calc: Update mode line after change mode
8564         * lisp/calc/calc-ext.el (calc-change-mode): Call 'calc-set-mode-line'.
8566 2016-07-03  Mark Oteiza  <mvoteiza@udel.edu>
8568         * lisp/simple.el (save-mark-and-excursion): Add declare forms.
8570 2016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
8572         Re-fix open-network-stream responsiveness
8574         Problem reported by Christer Ekholm (Bug#23864).
8575         * src/process.c (wait_reading_process_output): Further fix for
8576         typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu when
8577         wait == INFINITY and got_output_end_time is invalid.  See:
8578         http://bugs.gnu.org/23864#20
8580 2016-07-03  Alan Mackenzie  <acm@muc.de>
8582         Remove redundant forms from CC Mode for faster fontification
8584         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove four arms of
8585         the "main" cond form in the function, which have been redundant since the
8586         extraction of c-font-lock-cut-off-declarators from the function on
8587         2016-06-15/16.
8589 2016-07-03  Alan Mackenzie  <acm@muc.de>
8591         Speed up CC Mode fontification with less accurate functions extending region
8593         * lisp/progmodes/cc-fonts.el (c-font-lock-cut-off-declarators)
8594         (c-font-lock-enclosing-decls)
8595         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Replace invocations of
8596         c-beginning-of-decl-1 with less accurate invocations of
8597         c-syntactic-skip-backwards to speed up fontification.
8599 2016-07-03  Tino Calancha  <tino.calancha@gmail.com>
8601         Ibuffer: unmark all buffers without confirmation
8603         * lisp/ibuffer.el (ibuffer-unmark-all-marks): New command (Bug#23680).
8604         (ibuffer-mouse-popup-menu): Use it.
8605         (ibuffer-mode): Update mode doc.
8606         (ibuffer-mode-map): Bind 'ibuffer-unmark-all-marks' to 'U'.
8607         Rebind 'ibuffer-do-replace-regexp' to 'r'.
8609 2016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
8611         Fix open-network-stream responsiveness
8613         Problem reported by Constantin Kulikov (Bug#23684).
8614         * src/process.c (wait_reading_process_output):
8615         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
8616         when wait == INFINITY and got_output_end_time is invalid.
8617         In this case the code should break, not continue.
8619 2016-07-02  Tino Calancha  <tino.calancha@gmail.com>
8621         Ibuffer: Mark buffers by content
8623         * lisp/ibuf-ext.el (ibuffer-mark-by-content-regexp): New command.
8624         (ibuffer-never-search-content-name): New option.
8625         (ibuffer-never-search-content-mode): Idem.
8626         (ibuffer-mark-by-content-regexp): Use them (Bug#23734).
8628         * lisp/ibuffer.el (ibuffer-mode-map): Bind new command to '% c' and '% g'.
8629         (ibuffer-mode): Update mode documentation.
8631 2016-07-02  Tino Calancha  <tino.calancha@gmail.com>
8633         ibuffer-copy-filename-as-kill verbosity increase
8635         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill):
8636         Use shorter name, result, for a local bound var.
8637         Show the string result in the echo area.
8639 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8641         Fix cursor positioning on TTY frames after stretch glyph
8643         * src/term.c (append_glyph, append_composite_glyph)
8644         (append_glyphless_glyph): Set the avoid_cursor_p and multibyte_p
8645         members of the produced 'struct glyph'.  Fixes cursor positioning
8646         on the first character after a stretch glyph produced from
8647         line-prefix, wrap-prefix, etc. on TTY frames.
8649 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8651         Fix vertical-movement in buffers with wrap-prefix
8653         * src/indent.c (Fvertical_motion): Zero the current_y coordinate
8654         whenever we zero the vpos vertical position of the iterator.
8655         * src/xdisp.c (move_it_in_display_line_to): Handle line-prefix and
8656         wrap-prefix regardless of whether the current Y coordinate is
8657         inside the window dimensions.  (Bug#23879)
8659 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8661         Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL
8663         * src/dispextern.h (FACE_FROM_ID_OR_NULL): Renamed from
8664         FACE_OPT_FROM_ID; all callers changed.
8665         * src/xdisp.c (extend_face_to_end_of_line): Call FACE_FROM_ID, not
8666         FACE_FROM_ID_OR_NULL, as the resulting face is immediately
8667         dereferenced.
8668         (fill_gstring_glyph_string): Call FACE_FROM_ID, not
8669         FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
8670         when the glyph string is drawn.
8671         (BUILD_COMPOSITE_GLYPH_STRING): Call FACE_FROM_ID, not
8672         FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
8673         in fill_composite_glyph_string.
8674         (calc_line_height_property): Call FACE_FROM_ID_OR_NULL rather that
8675         FACE_FROM_ID, since the function and its caller can cope with that
8676         situation.  Conflate 3 tests of missing face or font into just
8677         one.
8678         * src/xfaces.c (Fx_list_fonts, Fface_font, lookup_face): Call
8679         FACE_FROM_ID_OR_NULL rather that FACE_FROM_ID, since these
8680         functions can cope with that situation.
8681         (lookup_derived_face): Don't call FACE_FROM_ID if the result will
8682         not be used.
8683         * src/w32console.c (w32_face_attributes): Remove redundant 'eassert'.
8685 2016-07-01  Mark Oteiza  <mvoteiza@udel.edu>
8687         * lisp/gnus/gnus-art.el (gnus-article-send-map): Remove extra quote.
8689 2016-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8691         * lisp/auth-source.el (auth-source--symbol-keyword): Fix namespace
8693         i.e. rename from auto-source--symbol-keyword.
8695 2016-07-01  Dmitry Antipov  <dmantipov@yandex.ru>
8697         Avoid yet another possible NULL pointer dereference found by GCC 6.1.1
8699         * lwlib/lwlib.c (lw_get_all_values): Always check the value returned by
8700         get_widget_info.
8702 2016-06-30  Alan Mackenzie  <acm@muc.de>
8704         CC Mode: truncate the semi-nonlit cache when applying syntax-table to a quote
8706         This applies to applying or removing syntax-table text properties in raw
8707         strings which affect the stringiness of a piece of text.  This fixes the
8708         bug
8709         reported in
8710         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00695.html.
8712         * lisp/progmodes/cc-engine.el (c-truncate-semi-nonlit-pos-cache): new
8713         defsubst.
8714         (c-invalidate-state-cache-1): Call new function in place of inline
8715         manipulation.
8716         (c-depropertize-raw-string, c-propertize-raw-string-opener): truncate the
8717         semi-nonlit cache when pertinent syntax-table text properties get applied to
8718         the text.
8720 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8722         Minor tweaks to openp
8724         * src/lread.c (openp): Move invariant code out of the loop
8725         and thus avoid redundant calls to memcpy.  Adjust comments.
8727 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8729         Simplify handling of frame parameters
8731         * src/frame.c (x_set_frame_parameters): Avoid extra loop processing
8732         foreground color, background color and font parameters.  Adjust
8733         comments.
8735 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8737         Cleanup around mature character manipulation functions
8739         * lisp/international/mule-diag.el (decode-codepage-char): Remove.
8741         * lisp/ldefs-boot.el (toplevel): Adjust accordingly.
8743         * lisp/subr.el (toplevel): Do not advertise calling conventions
8744         for 'decode-char' and 'encode-char'.
8746         * src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
8748 2016-06-29  Alan Mackenzie  <acm@muc.de>
8750         Fix C-M-a in a C function finding the start of a macro preceding it.
8752         Also amend some pertinent documentation.  This fixes bug #23818.
8754         * lisp/progmodes/cc-engine.el (c-beginning-of-decl-1): Also check for a
8755         virtual semicolon at a place where we check for other types of statement ends.
8757         * lisp/progmodes/cc-vars.el (c-macro-nacmes-with-semicolon): Remove from the
8758         doc string the bit saying that the variable is a prototype and liable to
8759         change.
8761         * doc/misc/cc-mode.texi (Macros with ;): Enhance, stating that configuring
8762         macros with semicolon can prevent C-M-a missing the beginning of defun.
8764 2016-06-28  Dmitry Antipov  <dmantipov@yandex.ru>
8766         Avoid possible NULL pointer dereference found by GCC 6.1.1
8768         * src/xfns.c (x_get_monitor_attributes_xrandr): Always check
8769         the value returned by XRRGetOutputInfo.
8771 2016-06-28  Tino Calancha  <tino.calancha@gmail.com>
8773         Dired recognize dirs when file size in human units
8775         * lisp/dired.el (dired-re-inode-size): Update 'dired-re-inode-size'
8776         to match when Dired displays the allocated file size column
8777         in human readable units (Bug#22255).
8779 2016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
8781         Fix breakage from previous change
8783         * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
8784         * lisp/vc/log-view.el (log-view-font-lock-keywords): Quote face.
8786 2016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
8788         Fix breakage from previous change.
8790         * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords): Quote face.
8792 2016-06-28  Eli Zaretskii  <eliz@gnu.org>
8794         Add tests for copying properties by 'format'
8796         * test/src/editfns-tests.el (format-properties): New test.
8798 2016-06-28  Eli Zaretskii  <eliz@gnu.org>
8800         Fix copying properties in 'format' when it produces padding
8802         * src/textprop.c (extend_property_ranges): Correct range extension
8803         when the new end is beyond the old end.  (Bug#23859)
8805 2016-06-27  Alan Third  <alan@idiocy.org>
8807         Enable dividers in NS (bug#22973)
8809         src/nsfns.m: Add colour settings functions to ns_frame_park_handlers.
8810         src/nsterm.m (ns_draw_window_divider): ns_focus has to go before the
8811         attempt to set the colour.
8812         src/nsterm.m (ns_draw_vertical_window_border): This had the same bug as
8813         above, although I didn't see any errors.
8815 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8817         Fix the prefix action of shr-copy-url
8819         * lisp/net/shr.el (shr-copy-url): Make the command really copy
8820         the image url if given a prefix.
8822 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8824         New functions svg-text and svg-remove
8826         * doc/lispref/display.texi (SVG Images): Document svg-remove.
8828         * doc/lispref/display.texi (SVG Images): Document svg-text.
8830         * lisp/svg.el (svg-remove): New function.
8831         (svg-text): New function.
8833 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8835         Add new function dom-remove-node
8837         * doc/lispref/text.texi (Document Object Model): Document
8838         dom-remove-node.
8840         * lisp/dom.el (dom-remove-node): New function.
8842 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8844         Add a new function `svg-embed'
8846         * doc/lispref/display.texi (SVG Images): Document `svg-embed'.
8848         * lisp/svg.el (svg-embed): New function.
8849         (svg--image-data): Ditto.
8851 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
8853         * lisp/descr-text.el (describe-char-unicode-data): Fix copy/paste errors.
8855 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
8857         Fix 'move-to-window-line' when EOB is on last screen line
8859         * src/window.c (displayed_window_lines): Fix an off-by-one error
8860         when the bottom of the last display line is exactly at window's
8861         last pixel.  Remove kludgey fix for TTY frames that is no longer
8862         needed.  (Bug#15760)
8863         (Fmove_to_window_line): Doc fix.
8865         * doc/lispref/positions.texi (Screen Lines): Clarify and make more
8866         accurate the documentation of 'move-to-window-line'.
8868 2016-06-27  Alan Mackenzie  <acm@muc.de>
8870         Amend a cache so that typing into C++ raw strings has no undue delay.
8872         Also amend the code so that low-level searches to the end of literals are done
8873         only when these positions get used.
8875         * lisp/progmodes/cc-engine.el (c-crosses-statement-barrier-p): Use the new
8876         c-literal-start instead of c-literal-limit.
8877         (c-state-semi-nonlit-pos-cache): Change the structure of this cache, such that
8878         it stores details of the literal at a point, rather than merely points outside
8879         of literals.
8880         (c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
8881         (c-cache-to-parse-ps-state, c-parse-ps-state-to-cache, c-ps-state-cache-pos)
8882         (c-parse-ps-state-below, c-literal-start): New functions.
8883         (c-state-semi-safe-place): Removed.
8884         (c-in-literal): Use c-state-semi-pp-to-literal, so as not to scan to its end.
8885         (c-literal-limits, c-determine-limit-get-base): consequential amendments.
8886         (c-find-decl-spots, c-before-change-check-<>-operators, c-raw-string-pos)
8887         (c-guess-basic-syntax (CASE 2)): Avoid needless scans to end of literals.
8889         * lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Avoid needless scans
8890         to end of literals.
8892         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Avoid needless scans to end of
8893         literals.
8895         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun)
8896         (c-defun-name, c-declaration-limits): Avoid needless scans to end of literals.
8898 2016-06-26  Dmitry Gutov  <dgutov@yandex.ru>
8900         Also handle escaping when string begins with a quote
8902         * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
8903         Handle quoting of the first character in the string.
8905         * test/lisp/progmodes/ruby-mode-tests.el
8906         (ruby-toggle-string-quotes-quotes-correctly): Update.
8908 2016-06-26  Sriram Thaiyar  <sriram.thaiyar@gmail.com>  (tiny change)
8910         Fix quote escaping in ruby-toggle-string-quotes
8912         * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
8913         Change logic to quote based on the current quote of the string.
8915         * test/lisp/progmodes/ruby-mode-tests.el
8916         (ruby-toggle-string-quotes-quotes-correctly): Add test.
8918 2016-06-26  Noam Postavsky  <npostavs@gmail.com>
8920         Fix test-completion with completion-regexp-list
8922         * src/minibuf.c (Ftest_completion): Handle alist COLLECTION with non-nil
8923         completion-regexp-list (Bug #23533).
8925 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8927         Try other addresses when connecting to multihomed
8929         Problem reported by Juliusz Chroboczek (Bug#17976)
8930         and by Artur Malabarba (Bug#23620).
8931         Patch from a suggestion by Andreas Schwab in:
8932         http://bugs.gnu.org/17976#39
8933         This patch is for non-MS-Windows platforms.
8934         I don't know the situation on MS-Windows.
8935         * src/process.c (connecting_status):
8936         New function, for (connect . ADDRINFOS).
8937         (connect_network_socket, check_for_dns, wait_for_socket_fds)
8938         (wait_while_connecting, wait_reading_process_output, status_notify):
8939         Use it.
8940         (decode_status, Fmake_network_process):
8941         Support (connect . ADDRINFOS) status.
8942         (connect_network_socket) [!WINDOWSNT]:
8943         If the connection failed and there are other addresses to try, do not
8944         signal an error; instead, loop around to try the next address.
8945         (wait_reading_process_output): Advance to the next address
8946         if there are multiple addresses and the first remaining address
8947         failed.
8948         * src/process.h (struct Lisp_Process.status): Adjust comment
8949         to describe (connect . ADDRINFOS).
8951 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8953         Fix GNUC_PREREQ for GCC 2.8.1 etc.
8955         Problem reported by Eli Zaretskii in:
8956         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00608.html
8957         * src/conf_post.h (GNUC_PREREQ): Port to GCC versions like GCC
8958         2.8.1 (1998), which come before GCC 3.0 and which have nonzero
8959         patchlevel numbers.
8961 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
8963         Don't set 'bidi-paragraph-direction' in 'ansi-term'
8965         * lisp/term.el (ansi-term): Remove unnecessary setting of
8966         'bidi-paragraph-direction'.  The underlying problem is solved in
8967         bidi.c by changing the regexps that define the paragraph beginning
8968         and end.  (Bug#20611)
8970 2016-06-26  Michael Albinus  <michael.albinus@gmx.de>
8972         Sync with Tramp 2.3.0
8974         * doc/misc/trampver.texi:
8975         * lisp/net/trampver.el: Change version to "2.3.0".
8977 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8979         Fix GNUC_PREREQ off-by-1 typo
8981         Problem reported by Martin Rudalics in:
8982         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00587.html
8983         * src/conf_post.h (GNUC_PREREQ) [__GNUC_PATCHLEVEL__]:
8984         Fix < vs <= typo.
8986 2016-06-26  Michael Albinus  <michael.albinus@gmx.de>
8988         Fix some oddities in Tramp's rsync and smb methods
8990         * lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-p" and
8991         "-s" arguments.
8992         (tramp-do-copy-or-rename-file-out-of-band):
8993         Call `file-name-directory' also for remote NEWNAME.
8995         * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
8996         Do not skip for tramp-smb.el.  Test als COPY-CONTENTS case.
8997         (tramp-test24-file-name-completion): Improve check for
8998         hostname completion.
8999         (tramp--test-rsync-p): New defun.
9000         (tramp-test31-special-characters)
9001         (tramp-test31-special-characters-with-stat)
9002         (tramp-test31-special-characters-with-perl)
9003         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
9004         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9005         (tramp-test32-utf8-with-ls): Skip for "rsync".
9007         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
9008         Check also for CIFS capabilities.
9010 2016-06-26  Ury Marshak  <ury.marshak@gmail.com>  (tiny change)
9012         Fix FRAME_INTERNAL_BORDER_WIDTH use (Bug#23841)
9014         * src/nsfns.m (x_set_internal_border_width): Replace assignments to
9015         FRAME_INTERNAL_BORDER_WIDTH.
9017 2016-06-25  Leo Liu  <sdl.web@gmail.com>
9019         Deprecations (bug#23850)
9021         * lisp/subr.el (string-to-unibyte, string-as-unibyte,
9022         string-to-multibyte, string-as-multibyte): Make obsolete.
9024 2016-06-25  Tino Calancha  <tino.calancha@gmail.com>
9026         Do not prompt twice to save a buffer
9028         * lisp/hilit-chg.el (highlight-markup-buffers): (Bug#23824).
9030 2016-06-25  Alan Third  <alan@idiocy.org>
9032         Move text line right when in box (bug#23755)
9034         * src/nsterm.m (ns_draw_glyph_string_foreground): Create to take
9035         CHAR_GLYPH specific code and move glyphs right if within a box.
9036         (ns_draw_glyph_string): Move CHAR_GLYPH specific code into above
9037         function.
9039 2016-06-25  Paul Eggert  <eggert@cs.ucla.edu>
9041         Merge from origin/emacs-25
9043         0377fe2 ; Spelling fixes
9044         f253695 Update docs for `customize-mode'
9045         4395aaa Fix documentation of 'assoc-string' and 'compare-strings'
9046         ab0ebb9 ; Only load .elc file in tests.
9047         a98aa02 Error on multibyte characters in HTTP request
9048         ea512a7 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Mask keys th...
9049         8297331 ; Revert "Ensure undo-boundary after insert-file-contents."
9050         dc5e65b Unset GIT_DIR when calling Git commands
9051         6cdd8f7 Ensure undo-boundary after insert-file-contents.
9052         4793f5f Clarify documentation of 'line-spacing' and 'line-height'
9053         5f37572 Fix removal of variables from process-environment
9054         e5e886d * admin/authors.el (authors-ignored-files, authors-valid-file...
9055         db0777b * admin/authors.el (authors-aliases, authors-fixed-case): Add...
9057         # Conflicts:
9058         #       doc/lispref/modes.texi
9059         #       lisp/gnus/mm-decode.el
9061 2016-06-25  Mark Oteiza  <mvoteiza@udel.edu>
9063         Teach net-utils more iproute2 and nl80211 tools
9065         * lisp/net/net-utils.el (iwconfig-program): Add iw(8).
9066         (iwconfig-program-options): Add "dev" argument for iw.  Another useful
9067         option is "phy"; beyond that one needs to know the interface name.
9068         (netstat-program): Add ss(8).
9069         (route-program): Add ip(8).
9070         (route-program-options): Add "route" argument for ip.
9072 2016-06-24  Leo Liu  <sdl.web@gmail.com>
9074         Use use-region-p in prolog.el
9076         * lisp/progmodes/prolog.el (region-exists-p): Remove.
9077         * lisp/progmodes/prolog.el (prolog-edit-menu-runtime,
9078         prolog-edit-menu-insert-move): Use use-region-p.
9080 2016-06-24  Leo Liu  <sdl.web@gmail.com>
9082         Remove compatibility with Emacs 24.3 in octave-mode
9084         * lisp/progmodes/octave.el: Clean up and remove compatibility with
9085         Emacs 24.3.
9087 2016-06-24  Alan Mackenzie  <acm@muc.de>
9089         Ensure hack-local-variables is run in a fundamental mode buffer.
9091         This fixes bug #23827.
9093         * src/buffer.c (set-buffer-major-mode): Run `fundamental-mode' when the buffer
9094         gets set to that mode, so that `run-mode-hooks', and thus
9095         `hack-local-variables' get run.
9097 2016-06-24  Tino Calancha  <tino.calancha@gmail.com>
9099         Fix caller to ediff-setup
9101         * lisp/hilit-chg.el (hilit-chg-get-diff-info): #Bug23820.
9103 2016-06-24  Alan Mackenzie  <acm@muc.de>
9105         Implement ' separators in C++ integer literals.
9107         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): insert
9108         c-before-after-change-digit-quote into the C++ value.
9109         (c-before-font-lock-functions): Insert c-depropertize-new-text into the values
9110         for all languages.  Insert c-before-after-change-digit-quote into the C++
9111         value.
9113         * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Wrap the function in
9114         c-save-buffer-state.
9115         (c-depropertize-new-text, c-before-after-change-digit-quote): New functions.
9117 2016-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9119         Update from gnulib
9121         This incorporates:
9122         2016-06-24 intprops: port better to GCC 7
9123         2016-06-13 xalloc-oversized: port to GCC 7; fewer warnings
9124         * doc/misc/texinfo.tex, lib/xalloc-oversized.h, lib/intprops.h:
9125         Copy from gnulib.
9127 2016-06-24  Martin Rudalics  <rudalics@gmx.at>
9129         Remove two uses of 'min' in Fwindow_text_pixel_size
9131         * src/xdisp.c (Fwindow_text_pixel_size): Don't use 'min' since
9132         it calls move_it_to twice.  Suggested by Eli Zaretskii.
9134 2016-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9136         Clarify intent of FACE_FROM_ID and IMAGE_FROM_ID
9138         * src/dispextern.h (FACE_OPT_FROM_ID): Don’t use FACE_FROM_ID,
9139         since it is intended to be used only when it returns a non-null
9140         pointer, and here the pointer might be null.
9141         (IMAGE_OPT_FROM_ID): Don’t use IMAGE_FROM_ID, for similar reasons.
9143 2016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
9145         Remove some more face aliases obsoleted in 22.1
9147         * lisp/eshell/em-ls.el (eshell-ls-directory-face, eshell-ls-symlink-face,
9148         eshell-ls-executable-face, eshell-ls-readonly-face,
9149         eshell-ls-unreadable-face, eshell-ls-special-face,
9150         eshell-ls-missing-face, eshell-ls-archive-face, eshell-ls-backup-face,
9151         eshell-ls-product-face, eshell-ls-clutter-face): Remove.
9152         * lisp/isearch.el (isearch-lazy-highlight-face, lazy-highlight-face): Remove.
9153         (isearch-lazy-highlight-update): Use face symbol.
9154         * lisp/net/sieve-mode.el (sieve-control-commands-face,
9155         sieve-action-commands-face, sieve-test-commands-face,
9156         sieve-tagged-arguments-face): Remove.
9157         (sieve-font-lock-keywords): Use non-obsolete faces.
9158         * lisp/progmodes/sh-script.el (sh-heredoc-face): Remove.
9159         (sh-get-indent-info, sh-prev-line): Use face symbol.
9160         * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
9161         Use non-obsolete face.
9162         (tex-math-face, tex-verbatim-face): Remove.
9163         (tex-font-lock-syntactic-face-function): Use face symbols.
9165 2016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
9167         Remove some face aliases obsoleted in 22.1
9169         * lisp/faces.el (modeline-inactive, modeline-highlight, modeline-buffer-id):
9170         * lisp/hilit-chg.el (highlight-changes-face, highlight-changes-delete-face):
9171         * lisp/info.el (Info-title-1-face, Info-title-2-face, Info-title-3-face,
9172         Info-title-4-face, info-menu-5):
9173         * lisp/obsolete/old-whitespace.el (whitespace-highlight-face):
9174         * lisp/paren.el (show-paren-match-face, show-paren-mismatch-face):
9175         * lisp/progmodes/make-mode.el (makefile-space-face):
9176         * lisp/textmodes/texinfo.el (texinfo-heading-face): Remove.
9177         (texinfo-font-lock-keywords): Use texinfo-heading face.
9178         * lisp/vc/add-log.el (change-log-date-face, change-log-name-face,
9179         change-log-email-face, change-log-file-face, change-log-list-face,
9180         change-log-conditionals-face, change-log-function-face,
9181         change-log-acknowledgement-face):
9182         * lisp/vc/diff-mode.el (diff-header-face, diff-file-header-face,
9183         diff-index-face, diff-hunk-header-face, diff-removed-face, diff-added-face,
9184         diff-changed-face, diff-function-face, diff-context-face,
9185         diff-nonexistent-face): Remove.
9186         (diff-use-changed-face, diff-font-lock-keywords): Use non-obsolete face
9187         symbols.
9188         (diff-hunk-file-names): Fix comment.
9189         (diff-refine-change): Remove.
9190         (diff-refine-removed, diff-refine-added, diff-refine-hunk): Use
9191         non-obsolete face.
9192         * lisp/vc/log-view.el (log-view-file-face, log-view-message-face): Remove.
9193         (log-view-font-lock-keywords): Use non-obsolete face names.
9194         * lisp/vc/pcvs-info.el (cvs-header-face, cvs-filename-face, cvs-unknown-face,
9195         cvs-handled-face, cvs-need-action-face, cvs-marked-face, cvs-msg-face):
9196         * lisp/wid-edit.el (widget-documentation-face, widget-button-face,
9197         widget-field-face, widget-single-line-field-face, widget-inactive-face,
9198         widget-button-pressed-face):
9199         * lisp/woman.el (woman-italic-face, woman-bold-face, woman-unknown-face,
9200         woman-addition-face): Remove.
9202 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9204         * lisp/international/characters.el (standard-case-table): Improve last change.
9206 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9208         Improve results of 'upcase' for characters with title-case
9210         * lisp/international/characters.el (standard-case-table): Swap the
9211         order of some lines, to have 'upcase' return the upper-case
9212         variant, not the title-case, for some characters whose lower-case
9213         map to the same codepoints.  (Bug#23833)
9215 2016-06-23  Alan Mackenzie  <acm@muc.de>
9217         Make typing into incomplete C++ raw strings work, and make it work fast enough
9219         * lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-state-pp-to-literal):
9220         Put `save-match-data' around calls to `looking-at' to enable the use of the
9221         match data in higher level functions.
9223         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations)
9224         (c-font-lock-cut-off-declarators): Use `limit' rather than `(point-max)' as a
9225         limit to speed up handling of C++ raw strings.
9227 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9229         Fix handling of LWINDOW key on MS-Windows
9231         * src/w32fns.c (funhook): Correct a typo which broke handling of
9232         the LWINDOW key.  (Bug#23830)
9234 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9236         Update Unicode data files from Unicode 9.0.0
9238         * admin/unidata/copyright.html:
9239         * admin/unidata/BidiBrackets.txt:
9240         * admin/unidata/UnicodeData.txt: Update from Unicode 9.0.0, just
9241         released.
9243 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9245         Fix test for whether the '.el' file is newer than '.elc'
9247         * src/lread.c (Fload): Don't overwrite the last character of the
9248         file name in FOUND with 'c', unless the file name ended in ".elc"
9249         to begin with.  Don't treat empty files as byte-compiled.  See
9250         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00463.html
9251         for more details of the problem this caused.
9253 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9255         Fix 'insert-file-contents' when REPLACE is non-nil
9257         * src/fileio.c (maybe_move_gap): New function to move the gap to
9258         the end of a buffer, if it isn't there already.
9259         (Finsert_file_contents): Call 'maybe_move_gap' before using
9260         conversion_buffer's text as a C 'char' array.  (Bug#23659)
9261         * src/coding.c (decode_eol): Compute the byte increment before
9262         calling del_range_2, because the latter can invalidate the pointer
9263         to buffer text.
9265 2016-06-22  Ken Brown  <kbrown@cornell.edu>
9267         Avoid compiler warning
9269         * src/w32fns.c (Fx_show_tip): Don’t jump over auto initialization.
9271 2016-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
9273         * lisp/emacs-lisp/syntax.el (syntax-propertize): Flush extended region.
9275 2016-06-22  Ken Brown  <kbrown@cornell.edu>
9277         Fix last change to FRAME_INTERNAL_BORDER_WIDTH
9279         * src/w32fns.c (x_set_internal_border_width): Don’t use
9280         FRAME_INTERNAL_BORDER_WIDTH(), which is now a function call, as an
9281         lvalue.
9283 2016-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9285         Improve --without-x GCC pacification
9287         * src/composite.c (autocmp_chars):
9288         * src/conf_post.h (DebPrint) [HAVE_NTGUI && !DebPrint && !EMACSDEBUG]:
9289         Use simpler ((void) 0) for no-op expression returning void.
9290         * src/dispextern.h [HAVE_WINDOW_SYSTEM]:
9291         Include fontset.h, for face_for_char.
9292         (FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_FOR_CHAR):
9293         Now inline functions instead of macros.  This avoids the need for
9294         all those casts to void.
9295         (FACE_SUITABLE_FOR_ASCII_CHAR_P): Omit 2nd (unused) arg.
9296         All uses changed.
9297         * src/frame.c (Ficonify_frame, Fset_frame_position):
9298         * src/xdisp.c (Fmove_point_visually, show_mouse_face):
9299         * src/xdisp.c (note_mode_line_or_margin_highlight)
9300         (note_mouse_highlight):
9301         Assume HAVE_WINDOW_SYSTEM for simplicity, since the code should
9302         now work either way without generating warnings.
9303         * src/frame.c (display_available) [HAVE_WINDOW_SYSTEM]: New function.
9304         (window_system_available) [HAVE_WINDOW_SYSTEM]: Move to frame.h.
9305         (decode_window_system_frame): Use check_window_system instead of
9306         rolling the code ourself.  Return needed only if HAVE_WINDOW_SYSTEM.
9307         (decode_window_system_frame, check_window_system):
9308         Merge the HAVE_WINDOW_SYSTEM and !HAVE_WINDOW_SYSTEM versions into one.
9309         * src/frame.c (Ficonify_frame, Fset_frame_position):
9310         * src/xdisp.c (show_mouse_face, define_frame_cursor1)
9311         (note_mouse_highlight):
9312         Narrow the scope of the HAVE_WINDOW_SYSTEM #ifdef;
9313         this is a better way to pacify GCC.
9314         * src/xdisp.c (x_set_left_fringe, x_set_right_fringe)
9315         (x_set_right_divider_width, x_set_bottom_divider_width):
9316         * src/xfns.c (x_set_internal_border_width):
9317         Don’t use what are now function calls as lvalues.
9318         * src/frame.h (WINDOW_SYSTEM_RETURN): New macro.
9319         (decode_window_system_frame, check_window_system):
9320         Use it, to avoid the need for duplicate declarations.
9321         (window_system_available): Now an inline function.
9322         (display_available): New decl.
9323         (frame_dimension): New inline function.
9324         (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
9325         (FRAME_RIGHT_FRINGE_WIDTH, FRAME_TOTAL_FRINGE_WIDTH)
9326         (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
9327         (FRAME_BOTTOM_DIVIDER_WIDTH):
9328         Use it, to avoid the need for duplicate definitions.
9329         Now inline functions instead of macros.
9330         * src/gnutls.c (gnutls_log_function2i): Remove.
9331         * src/gnutls.h (GNUTLS_LOG2i): Use ‘message’ directly.
9332         This avoids complaints about gnutls_log_function2i being defined
9333         and not used on older platforms that do not need to call GNUTLS_LOG2i.
9334         * src/image.c (DefaultDepthOfScreen) [0]: Remove unused macro.
9335         * src/lisp.h (AUTO_STRING_WITH_LEN): Revert change from ‘type id =
9336         expr’ to ‘type id; id = expr’, as this would suppress valid
9337         jump-misses-init diagnostics.  Let’s find a better way to address
9338         the problem.
9339         * src/vm-limit.c (__MALLOC_HOOK_VOLATILE):
9340         Define only if needed.
9341         * src/xdisp.c (handle_single_display_spec):
9342         Simplify fringe_bitmap computation.
9343         (define_frame_cursor1): Do nothing unless in a window system.
9344         All callers changed and simplified.
9345         * src/xfaces.c (realize_default_face):
9346         Use a simpler way to pacify GCC when a return value is not used
9347         on some platforms.
9349 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
9351         Ensure undo-boundary after all commands
9353         * lisp/simple.el (undo-auto--boundaries): Ensure an undo-boundary after
9354           every command whether it (apparently) changes the buffer or not.
9356         See Bug#23785 for discussion.
9358 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
9360         Fix vertical layout calculations when newline has line-height property
9362         * src/xdisp.c (move_it_in_display_line_to): Reset the iterator's
9363         'constrain_row_ascent_descent_p' flag after processing the
9364         newline, similar to what 'display_line' does.  Without this, the
9365         flag remains set once set by x_produce_glyphs, and causes the
9366         vertical layout calculations to go awry, because Emacs thinks the
9367         screen lines have zero height.  (Bug#23850)
9369 2016-06-20  Ken Brown  <kbrown@cornell.edu>
9371         Fix compiler warnings in Cygwin-w32 build
9373         * src/conf_post.h (DebPrint) [!EMACSDEBUG]: Add empty do-while
9374         loop to avoid compiler warnings about empty body of 'if'
9375         statement.
9377         * src/image.c [HAVE_NTGUI] (DefaultDepthOfScreen): Disable unused
9378         macro.
9379         (x_create_bitmap_from_data): Declare 'frame'.
9380         (x_create_bitmap_from_file): Don't declare unused variable
9381         'dpyinfo'.
9383         * src/lisp.h (AUTO_STRING_WITH_LEN): Avoid initialization to
9384         prevent "jump-misses-init" compiler warnings.
9386         * src/w32fns.c (check_w32_winkey_state): Define and use only if
9387         WINDOWSNT.
9388         (Fx_show_tip): Declare 'f'.
9389         (Fx_file_dialog): Declare 'filter_a' only if not NTGUI_UNICODE.
9390         (w32_strerror): Use format specifier %d for sprintf argument of
9391         type int.
9392         (emacs_abort): Cast sprintf argument of type DWORD to unsigned
9393         int, and use format specifier %x, for compatibility with Cygwin.
9394         (unicode_append_menu) [NTGUI_UNICODE]:
9395         * src/w32menu.c [NTGUI_UNICODE] (get_menu_item_info)
9396         (set_menu_item_info, unicode_append_menu)
9397         (unicode_message_box):
9398         * src/menu.c [NTGUI_UNICODE] (unicode_append_menu): Define as
9399         functions rather than macros to avoid "address will always
9400         evaluate as true" compiler warnings.
9402         * src/w32font.c (w32_to_x_charset): Use format specifier %d for
9403         sprintf argument of type int.
9405         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Cast
9406         sprintf argument of type int to unsigned int to match %X format
9407         specifier.
9408         (w32_scroll_bar_handle_click):
9409         (w32_horizontal_scroll_bar_handle_click): Declare 'f'.
9411         * src/w32term.h (FRAME_DISPLAY_INFO): Explicitly discard unused
9412         argument.
9414 2016-06-20  Ken Brown  <kbrown@cornell.edu>
9416         Fix compiler warnings in no-window-system-build
9418         * src/composite.c (autocmp_chars): Declare and set 'f' only if
9419         HAVE_WINDOW_SYSTEM.
9421         * src/dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P)
9422         (FACE_FOR_CHAR): Explicitly discard unused arguments.
9424         * src/font.c (font_open_entity): Declare 'min_width' where it is
9425         first set, and only if HAVE_WINDOW_SYSTEM.
9427         * src/frame.c [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame):
9428         Define _Noreturn version to avoid "suggest attribute noreturn"
9429         compiler warning.
9430         (check_window_system): Declare as _Noreturn.
9431         (Ficonify_frame):
9432         (Fset_frame_position): Don’t declare and set 'f'.
9434         * src/frame.h [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame)
9435         (check_window_system):  Add _Noreturn prototypes.
9436         (FRAME_FRINGE_COLS, FRAME_TOTAL_FRINGE_WIDTH)
9437         (FRAME_LEFT_FRINGE_WIDTH, FRAME_RIGHT_FRINGE_WIDTH)
9438         (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
9439         (FRAME_BOTTOM_DIVIDER_WIDTH): Explicitly discard unused argument.
9441         * src/xdisp.c (handle_single_display_spec): Declare
9442         'fringe_bitmap' only if HAVE_WINDOW_SYSTEM.
9443         (append_space_for_newline): Declare 'g' where it is first set.
9444         (Fmove_point_visually): Declare and set 'target_is_eol_p' only if
9445         HAVE_WINDOW_SYSTEM.
9446         (show_mouse_face): Declare and set 'f' and 'phys_cursor_on_p' only
9447         if HAVE_WINDOW_SYSTEM.
9448         (note_mode_line_or_margin_highlight):
9449         (note_mouse_highlight): Declare and set 'cursor' and 'pointer'
9450         only if HAVE_WINDOW_SYSTEM.
9452         * src/xfaces.c (realize_default_face): Declare and set 'face' only
9453         if HAVE_X_WINDOWS.  Remove redundant #ifdef.
9455 2016-06-20  Michael Albinus  <michael.albinus@gmx.de>
9457         Weaken test conditions in filenotify-tests.el
9459         * test/lisp/filenotify-tests.el (file-notify--test-with-events):
9460         Fix thinko in test.
9461         (file-notify-test02-events, file-notify-test04-file-validity)
9462         (file-notify-test07-backup)
9463         (file-notify-test08-watched-file-in-watched-dir): Make test
9464         conditions more weak.  (Bug#23618)
9466 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
9468         Minor ABLOCKS_BUSY cleanups in alloc.c
9470         * src/alloc.c (ABLOCKS_BUSY): Rename arg to avoid potential clash
9471         with member ‘abase’ in definiens.
9472         (lisp_align_malloc, lisp_align_free): Use bool for boolean.
9473         Avoid compiler warning with fewer casts.
9474         (lisp_align_free): Check busy-field values; this can help the
9475         compiler a bit when optimizing, too.
9477 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
9479         ASCII-fy coding-system-for-read used for Git commands
9481         * lisp/vc/vc-git.el (vc-git--asciify-coding-system):
9482         New function.
9483         (vc-git-diff, vc-git-annotate-command): Use it.
9485 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
9487         Prohibit multibyte characters in url-http-data
9489         It didn't work anyway, but this makes any such errors more obvious
9490         by catching them earlier.
9492         * lisp/url/url-http.el (url-http-create-request):
9493         Use string-to-unibyte (bug#23750).
9495 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
9497         Fix setting a range of char-table slots in a singular case
9499         * src/chartab.c (char_table_set_range): Start the loop from the
9500         first character of the block to which FROM belongs.  (Bug#23797)
9502         * test/src/chartab-tests.el: New test file.
9504 2016-06-19  Alan Mackenzie  <acm@muc.de>
9506         Fix CC Mode fontification problem apparent in test file decls-6.cc.
9508         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Recognize
9509         "bar (gnu);" as a declarator only when the construct is directly inside a
9510         class (etc.) called "bar".
9511         (c-directly-in-class-called-p): New function.
9513 2016-06-19  Alan Mackenzie  <acm@muc.de>
9515         c-renarrow-state-cache: take care when new point is inside old brace pair.
9517         Also add display of point-min to the c-parse-state debugging output.
9519         * lisp/progmodes/cc-engine.el (c-renarrow-state-cache): When the new
9520         point is inside an old recorded brace pair, clear the cache.
9521         (c-debug-parse-state): Output the value of point-min.
9523 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9525         Rename ALIGN to pointer_align
9527         * src/alloc.c (pointer_align): Rename from ALIGN.
9528         This fixes Bug#23764 in a simpler way.
9530 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9532         Merge from origin/emacs-25
9534         d1efbaf Fix documentation of completion functions
9535         65c96cc Clarify documentation of 'font-lock-maximum-decoration'
9536         2ad3d01 * doc/misc/cl.texi (Usage): Add some more details.
9537         b49cb0a Fbackward_prefix_chars: stay within buffer bounds
9539 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9541         Merge from origin/emacs-25
9543         2317c61 Fix last todo-mode change
9544         5d4d8a3 Improve last todo-mode fix
9545         d7084f2 Fix todo-mode use of minibuffer completion keymap (bug#23695).
9546         27dec52 * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23...
9547         f526191 * lisp/emacs-lisp/nadvice.el (advice--make-docstring): Avoid ...
9548         e881070 * lisp/help-fns.el (describe-function-1): Avoid reporting adv...
9549         d308aa1 Minor grammar fix (bug#23746)
9550         20de667 Doc fixes for grammar and typos (bug#23746)
9551         a67a4e5 * doc/lispref/processes.texi (Process Buffers): Minor rewordi...
9552         27f440e Add cross-reference to ELisp manual
9553         10802d8 ; make change-history-commit
9554         4b2d77d * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bu...
9555         12e009e Restore initial undo boundary with viper
9556         291fe0a Revert "Fix viper undo breakage from undo-boundary changes"
9557         6921f4a Fix dbus crash on 32-bit Cygwin
9559 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9561         Merge from origin/emacs-25
9563         9ae514a * etc/AUTHORS: Update the AUTHORS file
9564         3ca428e add entries to authors.el
9565         66d556b Fix eldoc-related freezes in python mode
9566         d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
9567         27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
9568         a813487 Fix undo boundary in recursive edit (Bug#23632)
9569         1f85b7c Doc fixes re alist-get.  (Bug#23548)
9570         ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
9571         56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
9572         4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
9573         a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
9574         601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
9576 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9578         * lisp/emacs-lisp/map.el (map-contains-key): Better docstring
9580 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9582         Fix seq-contains
9584         Make sure seq-contains return the element of the sequence instead of t.
9586         * lisp/emacs-lisp/seq.el (seq-contains): Fix the function.
9587         * test/lisp/emacs-lisp/seq-tests.el: Add a regression test.
9589 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9591         Add new function map-do
9593         * lisp/emacs-lisp/map.el (map-do, map--do-alist, map--do-array): New
9594           functions.
9595         * test/lisp/emacs-lisp/map-tests.el: Add a unit test for map-do.
9597 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9599         Add seq-do-indexed
9601         * lisp/emacs-lisp/seq.el (seq-do-indexed): New function.
9602         * test/lisp/emacs-lisp/seq-tests.el: Add a unit test for seq-do-indexed.
9604 2016-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
9606         map.el (map-merge*): Use `map-into' at beginning rather than end
9608         * lisp/emacs-lisp/map.el (map-merge): Use `map-into' for the first map,
9609         and don't use of an intermediate alist.
9610         (map-merge-with): Same, plus use `cl-callf' to try and avoid performing
9611         3 lookups per inner iteration.
9613 2016-06-16  Mark Oteiza  <mvoteiza@udel.edu>
9615         * lisp/window.el (switch-to-buffer-preserve-window-point): Bump :version.
9617 2016-06-15  Alan Mackenzie  <acm@muc.de>
9619         Speed up CC Mode's font locking by taking some code out of a hot loop.
9621         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove code which
9622         tests for bare declarators.
9623         (c-font-lock-cut-off-declarators): New function.
9624         (c-complex-decl-matchers): insert c-font-lock-cut-off-declarators.
9626 2016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9628         Automatically find vars and functions via definition-prefixes
9630         * lisp/help-fns.el (help-definition-prefixes): New var and function.
9631         (help--loaded-p, help--load-prefixes, help--symbol-completion-table):
9632         New functions.
9633         (describe-function, describe-variable): Use them.
9635         * lisp/emacs-lisp/radix-tree.el (radix-tree--prefixes)
9636         (radix-tree-prefixes, radix-tree-from-map): New functions.
9638 2016-06-15  Michal Nazarewicz  <mina86@mina86.com>
9640         Automatically detect whether .h file is C or C++
9642         * lisp/progmodes/cc-mode.el (c-or-c++-mode): A new function which
9643         analyses contents of the buffer to determine whether it looks like C++
9644         source code and based on that enables c-mode or c++-mode.
9645         (c-or-c++-mode--regexp): Regular expression which, when matches
9646         a buffer, signals file is C++.
9648 2016-06-15  Alan Mackenzie  <acm@muc.de>
9650         Parse compound identifiers in C++ member initialization lists.
9652         * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): New function.
9653         (c-back-over-member-initializer-braces, c-back-over-list-of-member-inits)
9654         (c-back-over-member-initializers): Call c-back-over-compound-identifier rather
9655         than c-simple-skip-symbol-backward.
9657 2016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9659         Advertize set-keymap-parent as replacement for copy-keymap
9661         * doc/lispref/keymaps.texi (Creating Keymaps):
9662         * src/keymap.c (Fcopy_keymap): Advertize set-keymap-parent as replacement.
9664 2016-06-15  Ted Zlatanov  <tzz@lifelogs.com>
9666         * generic-x.el (ansible-inventory-generic-mode): Warn if value is missing
9668 2016-06-15  Tim Chambers  <tbc@alum.mit.edu>  (tiny change)
9670         Add new ansible-inventory-generic-mode (Bug#23762)
9672         * lisp/generic-x.el (ansible-inventory-generic-mode): Add new mode.
9674 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9676         Fix ifdef-vs-if typo with RANDR13_LIBRARY
9678         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
9679         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
9680         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
9682 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9684         Port to platforms where char * has top bit set
9686         This fixes a five-year-old FIXME comment.  Although I don’t know
9687         of a platform where this is a problem in practice, better safe
9688         than sorry.
9689         * src/doc.c (Fdocumentation): If SUBRP, simply use doc as integer,
9690         as it is now an integer, not char *.
9691         (store_function_docstring): Offset is now EMACS_INT, not ptrdiff_t;
9692         this is a file offset and EMACS_INT is better if --with-wide-int.
9693         If SUBRP, simply store the offset rather than negating it and
9694         converting it to char *.
9695         * src/lisp.h (struct Lisp_Subr.doc): Now EMACS_INT, not char *.
9697 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9699         Remove recursion from store_function_docstring
9701         * src/doc.c (store_function_docstring):
9702         Refactor to avoid the need for C-level recursion.
9704 2016-06-14  Ken Brown  <kbrown@cornell.edu>
9706         Remove system-specific -I switch from Cygwin-w32 build
9708         Suggested by Eli Zaretskii in discussion of bug#18302.
9710         * src/image.c [HAVE_NTGUI]: Remove the unused macro
9711         PIXEL_ALREADY_TYPEDEFED.  On Cygwin, include "noX/xpm.h" instead of
9712         "X11/xpm.h".
9714         * configure.ac [CYGWIN && HAVE_W32]: Change the xpm test to use
9715         "noX/xpm.h".  Don't add a -I switch to CPPFLAGS.
9717 2016-06-14  Noam Postavsky  <npostavs@gmail.com>
9719         Make python.el work in Emacs 24
9721         * lisp/progmodes/python.el: Bump version.
9722         (python-define-auxiliary-skeleton): Only use format-message if
9723         fbound (Bug#23126).
9725 2016-06-13  Ken Brown  <kbrown@cornell.edu>
9727         Avoid compiler warning
9729         * src/w32fns.c (deliver_wm_chars): Add 'const' to declaration of
9730         'type_CtrlAlt'.
9732 2016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9734         Call tzset after setting TZ
9736         * src/editfns.c (tzlookup): Call tzset after setting TZ, so that
9737         the setting change propagates into Emacs local time (Bug#23600).
9738         (emacs_setenv_TZ): Clarify comments.
9740 2016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9742         Update texinfo.tex
9744         * doc/misc/texinfo.tex: Update from gnulib.
9746 2016-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9748         New macro GNUC_PREREQ for GCC version
9750         * src/conf_post.h (GNUC_PREREQ): New macro.
9751         Change uses of __GNUC_MINOR__ and __GNUC_PATCHLEVEL__ to use this
9752         macro instead, for clarity and consistency.
9753         (PRINTF_ARCHETYPE): New macro.  Define it to __gnu_printf__ only
9754         if glibc, since non-GNU platforms don’t necessarily support GNU
9755         printf formats.
9756         (ATTRIBUTE_FORMAT_PRINTF): Use it.
9758 2016-06-12  Nicolas Petton  <nicolas@petton.fr>
9760         * lisp/emacs-lisp/seq.el (seq-drop): Better list implementation
9762 2016-06-12  Eli Zaretskii  <eliz@gnu.org>
9764         Fix printf-related compilation warnings on MinGW
9766         * src/conf_post.h (ATTRIBUTE_FORMAT_PRINTF) [__MINGW32__]: Use
9767         '__ms_printf__', not '__gnu_printf__', as the latter is not what
9768         MS 'printf' supports, and causes bogus compilation warnings.
9769         * src/lisp.h (pI) [__MINGW32__]: Define to "I64", as MS 'printf'
9770         doesn't support the "ll" modifier.
9772 2016-06-11  Paul Eggert  <eggert@cs.ucla.edu>
9774         emacs_strerror cleanups
9776         * src/buffer.c, src/emacs.c, src/lread.c: Don’t include coding.h;
9777         no longer needed, now that emacs_strerror is declared by lisp.h.
9778         * src/coding.c (emacs_strerror): Remove; moved to emacs.c.
9779         * src/coding.h (emacs_strerror) [emacs]: Remove decl; moved
9780         to lisp.h.
9781         * src/emacs.c (emacs_strerror): Move here from coding.c.  Do not
9782         convert result string; this is now the caller’s responsibility,
9783         as some need conversion and others don’t.
9784         * src/fileio.c (report_file_errno, report_file_notify_error):
9785         Use emacs_strerror rather than rolling it ourselves.
9786         * src/lisp.h (emacs_strerror): Move decl here from coding.h.
9787         * src/lread.c (dir_warning): Just call emacs_strerror rather than
9788         both strerror and emacs_strerror.  Convert its result from
9789         locale-coding-system, since it no longer does that conversion.
9790         * src/sound.c (sound_perror):
9791         * src/sysdep.c (emacs_perror, str_collate):
9792         Use emacs_strerror, not strerror.
9794 2016-06-10  David Reitter  <david.reitter@gmail.com>
9796         Prevent compiler warning for unused arguments
9798         * lisp/international/ucs-normalize.el
9799         (ucs-normalize-hfs-nfd-pre-write-conversion):
9800         Prevent compiler warning for unused arguments, add coment.
9802 2016-06-10  Paul Eggert  <eggert@cs.ucla.edu>
9804         Catch malloc_get_state, malloc_set_state failure
9806         This should help insulate Emacs better from configuration screwups.
9807         Future versions of the GNU C library are planned to deprecate
9808         these functions, but will continue to support them in
9809         already-built-and-dumped Emacs executables.
9810         * src/alloc.c (malloc_initialize_hook) [DOUG_LEA_MALLOC]:
9811         Abort if malloc_set_state fails.
9812         (alloc_unexec_pre) [DOUG_LEA_MALLOC]:
9813         Report malloc_get_state failure, and exit.
9815 2016-06-10  Eli Zaretskii  <eliz@gnu.org>
9817         Show returned value after gdb-mi "finish" command
9819         * lisp/progmodes/gdb-mi.el (gdb-stopped): Display the expected
9820         "Value returned" message in response to "finish", when not
9821         produced by GDB/MI.  (Bug#23720)
9823 2016-06-10  David Reitter  <david.reitter@gmail.com>
9825         Simplify pre-write-conversion for utf-8-hfs coding system
9827         * lisp/international/ucs-normalize.el
9828         (ucs-normalize-hfs-nfd-pre-write-conversion): Refactor.
9830         May address an issue where Emacs consumed large amounts of CPU
9831         because of neverending toolbar updating (which was caused
9832         by, but also called this function).
9834 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
9836         Revert "Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2"
9838         * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
9839         to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
9840         Monnier.  (Bug#19185, Bug#20398)
9842         This reverts commit 72166f2f3dba18f1217c666574032f5a0351ed65.
9844         That commit did more harm than good (Bug#23571).
9846 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9848         Port __builtin_assume_aligned to Sun C 5.13
9850         * src/conf_post.h (__builtin_assume_aligned):
9851         Fix typo: the extra arg did not conform to C99.
9853 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9855         Prefer getsockopt to getpeername on non-MS-Windows
9857         * admin/CPP-DEFINES: Remove HAVE_GETPEERNAME.
9858         * configure.ac: Don’t check for getpeername.
9859         * src/process.c (wait_reading_process_output) [!WINDOWSNT]:
9860         Use getsockopt even if not GNU/Linux, as the platforms where
9861         getsockopt used to hang are no doubt long dead.
9863 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9865         Fix XFASTINT of non-fixnum in process status
9867         * src/process.c (decode_status): 3rd arg is now Lisp_Object *,
9868         not int *, and is not decoded.  All uses changed.
9869         (status_message): Do not assume ‘failed’ code is an integer.
9870         * src/process.h: Document codes better.
9872 2016-06-09  Glenn Morris  <rgm@gnu.org>
9874         Make messcompat.el obsolete.
9876         * lisp/obsolete/messcompat.el: Move here from lisp/gnus.
9877         * doc/misc/message.texi (Compatibility): Remove section.
9879 2016-06-09  Glenn Morris  <rgm@gnu.org>
9881         Leading "*" in the doc of defvars is long obsolete.
9883         * lisp/plstore.el (plstore-encrypt-to):
9884         * lisp/cedet/semantic/lex-spp.el
9885         (semantic-lex-spp-macro-max-length-to-save):
9886         * lisp/cedet/semantic/symref.el (semantic-symref-tool):
9887         * lisp/cedet/semantic/bovine/el.el
9888         (semantic-elisp-store-documentation-in-tag):
9889         * lisp/cedet/semantic/wisent/comp.el (wisent-verbose-flag)
9890         (wisent-expected-conflicts):
9891         * lisp/cedet/semantic/wisent/wisent.el (wisent-parse-verbose-flag):
9892         * lisp/gnus/gnus-agent.el (gnus-category-menu-hook):
9893         * lisp/gnus/gnus-group.el (gnus-group-listing-limit):
9894         * lisp/gnus/gnus-srvr.el (gnus-server-menu-hook)
9895         (gnus-browse-menu-hook):
9896         * lisp/gnus/message.el (message-shoot-gnksa-feet):
9897         * lisp/gnus/mm-decode.el (mm-path-name-rewrite-functions):
9898         * lisp/gnus/mm-util.el (mm-extra-numeric-entities):
9899         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
9900         * lisp/gnus/mml.el (mml-generate-multipart-alist):
9901         * lisp/gnus/nndraft.el (nndraft-required-headers):
9902         * lisp/gnus/nnheader.el (nnheader-max-head-length)
9903         (nnheader-head-chop-length, nnheader-file-name-translation-alist)
9904         (nnheader-directory-separator-character)
9905         (nnheader-pathname-coding-system):
9906         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system)
9907         (nnmail-active-file-coding-system):
9908         * lisp/gnus/nnrss.el (nnrss-file-coding-system):
9909         * lisp/gnus/nntp.el (nntp-record-commands):
9910         * lisp/gnus/score-mode.el (gnus-score-edit-done-hook)
9911         (gnus-score-mode-hook, gnus-score-menu-hook):
9912         * lisp/mail/rfc2047.el (rfc2047-header-encoding-alist)
9913         (rfc2047-allow-irregular-q-encoded-words)
9914         (rfc2047-allow-incomplete-encoded-text):
9915         * lisp/mh-e/mh-alias.el (mh-alias-system-aliases):
9916         * lisp/mh-e/mh-e.el (mh-mail-header-separator, mh-x-mailer-string):
9917         * lisp/mh-e/mh-scan.el (mh-scan-format-mh, mh-scan-format-nmh):
9918         * lisp/net/pop3.el (pop3-password):
9919         * lisp/play/animate.el (animate-n-steps):
9920         * lisp/progmodes/cc-vars.el (c-old-style-variable-behavior):
9921         Convert from defvar with leading * to defcustom.
9924         * lisp/emulation/viper-init.el (viper-heading-end):
9925         * lisp/gnus/mm-url.el (mm-url-html-entities):
9926         * lisp/gnus/nnmaildir.el (nnmaildir-article-file-name):
9927         * lisp/mh-e/mh-e.el (mh-invisible-header-fields-compiled):
9928         * lisp/net/tramp-adb.el (tramp-adb-method): Remove leading * from doc.
9930         * lisp/gnus/messcompat.el: Mark (pointless) file not for compilation.
9931         (message-from-style, message-interactive, message-indentation-spaces)
9932         (message-signature, message-signature-file):
9933         Remove settings that match the defaults.
9934         (message-setup-hook, message-mode-hook, message-default-headers)
9935         (message-send-hook, message-send-mail-function):
9936         Just use setq rather than redefining.
9938         * lisp/gnus/nnrss.el (nnrss):
9939         * lisp/mail/rfc2047.el (rfc2047):
9940         * lisp/play/animate.el (animate): New custom groups.
9942 2016-06-09  Glenn Morris  <rgm@gnu.org>
9944         Remove obsolete leading * from defcustom, defface doc strings.
9946         * lisp/cedet/ede/linux.el, lisp/cedet/ede/project-am.el:
9947         * lisp/cedet/ede/simple.el, lisp/cedet/semantic/bovine/c.el:
9948         * lisp/cedet/semantic/complete.el, lisp/cedet/semantic/db.el:
9949         * lisp/cedet/semantic/decorate/include.el:
9950         * lisp/cedet/semantic/decorate/mode.el, lisp/cedet/semantic/format.el:
9951         * lisp/cedet/semantic/ia.el, lisp/cedet/semantic/idle.el:
9952         * lisp/cedet/semantic/imenu.el, lisp/cedet/semantic/lex-spp.el:
9953         * lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/sb.el:
9954         * lisp/cedet/srecode/fields.el, lisp/ecomplete.el:
9955         * lisp/gnus/gnus-agent.el, lisp/gnus/gnus-art.el:
9956         * lisp/gnus/gnus-async.el, lisp/gnus/gnus-cache.el:
9957         * lisp/gnus/gnus-cite.el, lisp/gnus/gnus-delay.el:
9958         * lisp/gnus/gnus-diary.el, lisp/gnus/gnus-dup.el:
9959         * lisp/gnus/gnus-fun.el, lisp/gnus/gnus-group.el:
9960         * lisp/gnus/gnus-kill.el, lisp/gnus/gnus-msg.el:
9961         * lisp/gnus/gnus-picon.el, lisp/gnus/gnus-salt.el:
9962         * lisp/gnus/gnus-score.el, lisp/gnus/gnus-start.el:
9963         * lisp/gnus/gnus-sum.el, lisp/gnus/gnus-topic.el:
9964         * lisp/gnus/gnus-util.el, lisp/gnus/gnus-uu.el, lisp/gnus/gnus-win.el:
9965         * lisp/gnus/gnus.el, lisp/gnus/mail-source.el, lisp/gnus/message.el:
9966         * lisp/gnus/mm-url.el, lisp/gnus/mm-uu.el, lisp/gnus/mml.el:
9967         * lisp/gnus/nndiary.el, lisp/gnus/nnir.el, lisp/gnus/nnmail.el:
9968         * lisp/gnus/smiley.el, lisp/gnus/smime.el, lisp/mail/mail-extr.el:
9969         * lisp/mh-e/mh-e.el, lisp/net/mailcap.el, lisp/net/pop3.el:
9970         * lisp/net/starttls.el, lisp/progmodes/cc-vars.el:
9971         * lisp/progmodes/cperl-mode.el, test/manual/cedet/tests/test.el:
9972         Remove obsolete leading * from defcustom, defface doc strings.
9974 2016-06-09  Eli Zaretskii  <eliz@gnu.org>
9976         Fix copying text properties by 'format'
9978         * src/editfns.c (styled_format): Fix copying text properties from
9979         the format specification to the produced string representation.
9980         (Bug#23730)
9981         (Fformat) Doc fix.
9983         * doc/lispref/strings.texi (Formatting Strings): Document that
9984         text properties from the format specifiers are also copied to the
9985         produced string.
9987 2016-06-09  Alan Mackenzie  <acm@muc.de>
9989         Handle C++ raw strings.
9991         * lisp/progmodes/cc-engine.el (c-raw-string-pos, c-depropertize-raw-string)
9992         (c-depropertize-raw-strings-in-region,
9993         c-before-change-check-raw-strings)
9994         (c-propertize-raw-string-opener, c-after-change-re-mark-raw-strings): New
9995         functions.
9997         * lisp/progmodes/cc-fonts.el (c-basic-matchers-before): Insert a clause for
9998         c-font-lock-raw-strings.
9999         (c-font-lock-raw-strings): New function.
10001         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Insert
10002         c-before-change-check-raw-strings into the C++ value, and c-depropertize-CPP
10003         into the values for C, C++, and Objective C.
10004         (c-before-font-lock-functions): Insert c-after-change-re-mark-raw-strings into
10005         the C++ value.
10007         * lisp/progmodes/cc-mode.el (c-old-BEG, c-old-END): New variables.
10008         (c-depropertize-CPP): New function, extracted from
10009         c-neutralize-syntax-in-and-mark-CPP.
10010         (c-neutralize-syntax-in-and-mark-CPP): Remove the call to
10011         c-clear-char-property-with-value for 'syntax-table value '(1) at the beginning
10012         of the function.
10013         (c-after-change): Set c-old-BEG and c-old-END to the current values of
10014         c-new-BEG and c-new-END.
10016 2016-06-09  Daiki Ueno  <ueno@gnu.org>
10018         epg: don't use obsolete function
10020         * lisp/epg.el (epg-sign-string, epg-encrypt-string): Remove
10021         redundant configuration check, which is now done in
10022         `epg-make-context'.
10024 2016-06-09  Daiki Ueno  <ueno@gnu.org>
10026         epg: don't start pinentry if it is useless
10028         * lisp/epg.el (epg--start): Don't start pinentry server if the
10029         session is non-interactive or pinentry-mode is set.
10031 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10033         Replace IF_LINT by NONVOLATILE and UNINIT
10035         Inspired by a suggestion from RMS in: http://bugs.gnu.org/23640#58
10036         * .dir-locals.el (c-mode): Adjust to macro changes.
10037         * src/conf_post.h (NONVOLATILE, UNINIT): New macros (Bug#23640).
10038         (IF_LINT): Remove.  All uses replaced by the new macros.
10040 2016-06-08  Michal Nazarewicz  <mina86@mina86.com>
10042         Remove ‘ert-with-function-mocked’ macro in favour of ‘cl-letf’ macro
10044         * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): Remove macro
10045         in favour of ‘cl-letf’ macro which is more generic.  All existing
10046         uses are migrated accordingly.  The macro has not been included in
10047         an official release yet so it should be fine to delete it.
10049 2016-06-08  Glenn Morris  <rgm@gnu.org>
10051         * test/lisp/emacs-lisp/package-tests.el
10052         (package-test-update-archives-async): Try re-enabling on hydra.
10054 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10056         * src/fileio.c (auto_save_error): Omit unused local.
10058 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10060         Simplify overflow check via INT_SUBTRACT_WRAPV
10062         * src/editfns.c (check_tm_member): Simplify integer overflow check.
10064 2016-06-07  Glenn Morris  <rgm@gnu.org>
10066         Try to avoid hangs and stray procs in network-stream-tests.  (Bug#23560)
10068         * test/lisp/net/network-stream-tests.el (connect-to-tls-ipv4-wait)
10069         (connect-to-tls-ipv4-nowait, connect-to-tls-ipv6-nowait):
10070         Ensure gnutls-serv process gets killed.
10071         (echo-server-nowait, connect-to-tls-ipv4-nowait):
10072         Limit the amount of time we might wait.
10074 2016-06-07  Glenn Morris  <rgm@gnu.org>
10076         Reduce allout.el's pollution of the namespace.
10078         * lisp/allout.el (allout-set-regexp): Rename from set-allout-regexp.
10079         Keep old name as obsolete alias.
10080         (allout-produce-mode-menubar-entries, allout-nullify-prefix-data)
10081         (allout-solicit-char-in-string)
10082         (allout-count-trailing-whitespace-region, allout-regexp-sans-escapes):
10083         Rename to add an "allout-" prefix.
10085 2016-06-07  Glenn Morris  <rgm@gnu.org>
10087         * configure.ac (emacs_config_features): Add CANNOT_DUMP.
10089 2016-06-07  Glenn Morris  <rgm@gnu.org>
10091         Misc small webjump updates.
10093         * lisp/net/webjump.el (webjump): Add custom group.
10094         (webjump-sample-sites): Make it a constant.
10095         Remove explicit, old list of GNU ftp mirrors.
10096         (webjump-state-to-postal-alist): Make it a constant.
10097         (webjump-sites): Make it a defcustom.
10098         (webjump-to-iwin): Update for changed remote service.
10100 2016-06-07  Glenn Morris  <rgm@gnu.org>
10102         Do not hard-code port for package test server.  (Bug#23708)
10104         * test/lisp/emacs-lisp/package-resources/package-test-server.py:
10105         Do not hard-code port.
10106         * test/lisp/emacs-lisp/package-tests.el (package-test-update-archives-async):
10107         Update for the above change.
10109 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10111         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
10113 2016-06-07  Glenn Morris  <rgm@gnu.org>
10115         * src/fileio.c (auto_save_error): Use display-warning.  (Bug#23703)
10117 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10119         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
10120         Fix non-file-visiting-buffer case.  (Bug#22678)
10122 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10124         Port --enable-gcc-warnings to clang 3.7.0
10126         * configure.ac: Add -Wno-tautological-compare to avoid bogus
10127         warnings about 0 <= rlim.rlim_max.  Remove flags that no longer
10128         seem to be needed, at least in Fedora 23 x86-64.
10130 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10132         Use __builtin_assume_aligned on untagged Lisp vals
10134         * src/conf_post.h (__has_builtin, __builtin_assume_aligned):
10135         New macros, for compilers not already defining them.
10136         (__has_builtin___builtin_assume_aligned): New macro.
10137         * src/lisp.h (lisp_h_XUNTAG): Use __builtin_assume_aligned.
10138         This shrinks text space by 0.2% on x86-64 with GCC 6.1.
10140 2016-06-07  Glenn Morris  <rgm@gnu.org>
10142         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
10143         aliases as the type of their targets.
10145 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10147         * lisp/simple.el (process-menu-mode, list-processes--refresh):
10148         Include PID.  (Bug#21725)
10150 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10152         Merge from origin/emacs-25
10154         6e3adf8 Fix crash in syntax.c after GC
10155         973ce5a Improve squiggly heredoc support in non-SMIE Ruby mode
10156         9d5cceb Fix doc string quoting
10157         0b33a23 Fix mouse dragging of vertical dividers with scroll bars on l...
10158         a5d05f4 * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
10160 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10162         Merge from origin/emacs-25
10164         604f656 * test/automated/viper-tests.el (viper-test-undo-kmacro): Del...
10165         20eb531 * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
10166         a7a2244 * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
10167         07bd972 * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): Fix...
10169 2016-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10171         Use standard Unicode names for Thai, Lao
10173         * lisp/language/lao-util.el, lisp/language/thai-util.el:
10174         Don’t override standard Unicode character name (Bug#23698).
10176 2016-06-06  Glenn Morris  <rgm@gnu.org>
10178         * lisp/man.el (Man-reference-regexp, Man-default-man-entry):
10179         Handle U+2010 hyphen at eol, as used when LANG=en_US.utf8.
10181 2016-06-06  Michael Albinus  <michael.albinus@gmx.de>
10183         Some fixes in filenotify-tests.el for cygwin
10185         * test/lisp/filenotify-tests.el (file-notify--test-timeout):
10186         Reintroduce value for cygwin, it's needed on slow systems.
10187         (file-notify--wait-for-events): Move up definition.
10188         (file-notify--test-no-descriptors): Use `file-notify--wait-for-events'.
10189         (file-notify--test-with-events-check, file-notify--test-with-events)
10190         (file-notify-test08-watched-file-in-watched-dir):
10191         Use :random rather than `random.
10192         (file-notify-test06-many-events): Do not skip for cygwin.
10194 2016-06-05  Juri Linkov  <juri@linkov.net>
10196         * src/casefiddle.c (Fupcase_region): Add arg ‘region-noncontiguous-p’.
10198         If non-nil, operate on multiple chunks.  (Bug#23655)
10200         * src/search.c (Freplace_match): Use Qnil for new arg of Fupcase_region.
10202 2016-06-05  Juri Linkov  <juri@linkov.net>
10204         * lisp/wdired.el (wdired-next-line, wdired-previous-line): Add "^"
10206         to interactive spec to handle shift-selection.  (Bug#23642)
10208 2016-06-05  Michael Albinus  <michael.albinus@gmx.de>
10210         Improve robustness of filenotify-tests.el (Bug#23618)
10212         * test/lisp/filenotify-tests.el (file-notify--test-no-descriptors)
10213         (file-notify--test-no-descriptors-explainer)
10214         (file-notify--test-cleanup-p): New defuns.
10215         (file-notify--test-cleanup): Don't check for
10216         `file-notify--test-event' anymore, that's done in
10217         `file-notify--test-no-descriptors'.
10218         (file-notify--test-with-events-check)
10219         (file-notify--test-with-events): Handle the `random' marker.
10220         (file-notify--test-with-events-explainer): Improve readability.
10221         (file-notify-test00-availability)
10222         (file-notify-test01-add-watch, file-notify-test02-events)
10223         (file-notify-test03-autorevert)
10224         (file-notify-test04-file-validity)
10225         (file-notify-test05-dir-validity)
10226         (file-notify-test06-many-events, file-notify-test07-backup)
10227         (file-notify-test08-watched-file-in-watched-dir)
10228         (file-notify-test09-sufficient-resources): Check also
10229         `file-notify--test-cleanup-p'.
10230         (file-notify-test04-file-validity)
10231         (file-notify-test05-dir-validity): Use `ignore' as handler.
10232         (file-notify-test05-dir-validity)
10233         (file-notify-test06-many-events): Delete directory finally.
10234         (file-notify-test08-watched-file-in-watched-dir): Add `random' marker.
10236 2016-06-05  Stephen Berman  <stephen.berman@gmx.net>
10238         man.el: Fix links on hyphenated words (bug#23647)
10240         * lisp/man.el (Man-bgproc-sentinel): Make links work on
10241         hyphenated words.
10243 2016-06-05  K. Handa  <handa@gnu.org>
10245         Add category 'j' to more characters.
10247         * lisp/international/characters.el: Add category 'j' (Japanese)
10248         to characters in japanese-jisx0213.2004-1.
10250 2016-06-04  Tino Calancha  <f92capac@gmail.com>
10252         isearch-edit-string resumes multi isearches
10254         * lisp/isearch.el (with-isearch-suspended): Remember and restore
10255         multi-isearch variables.  (Bug#21663)
10257 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
10259         Fix Eshell display when RTL characters are involved
10261         * lisp/eshell/esh-mode.el (eshell-mode): Set
10262         'bidi-paragraph-direction' to 'left-to-right'.  (Bug#23652)
10264 2016-06-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
10266         Make ses-jump with completing input.
10268         * lisp/ses.el (ses-jump): Make symbol input completing against list of
10269           named cells.
10271 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10273         Port angle-bracket TZ settings to MS-Windows
10275         * doc/lispref/os.texi (Time Zone Rules): Document MS-Windows
10276         lack of support for numeric time zone abbreviations.
10277         * src/w32.c (sys_putenv): Convert angle-bracket TZ syntax
10278         to MS-compatible syntax if possible, and to "ZZZ" otherwise.
10279         Problem reported by Kazuhiro Ito (Bug#23600).
10281 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10283         Avoid delving into Git internals for version
10285         * lisp/loadup.el (exec-path): Set it to nil later, so that
10286         emacs-repository-get-version can invoke git commands in the PATH.
10287         * lisp/version.el (emacs-repository--version-git-1): Remove.
10288         (emacs-repository-get-version): Let Git do it rather than
10289         delving into Git internals.
10291 2016-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10293         * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Expand less
10295 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10297         Fix emacs-repository-get-version with packed .git
10299         * lisp/version.el (emacs-repository-get-version):
10300         Parse .git/packed-refs if it exists.
10301         Problem reported by Martin Rudalics in:
10302         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00554.html
10304 2016-06-01  Michael Albinus  <michael.albinus@gmx.de>
10306         Minor change in tramp.texi
10308         * doc/misc/tramp.texi (Password handling): Do not discuss
10309         anymore how to get password-cache.el.  It is bundled with
10310         Emacs.
10312 2016-06-01  Alan Mackenzie  <acm@muc.de>
10314         Correct fontification and indentation of C++'s "constexpr" expressions
10316         * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "constexpr".
10317         (c-modifier-kwds): Add "constexpr".
10319 2016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
10321         Cosmetic change to kinsoku-eol.  (tiny change)
10323         * lisp/international/kinsoku.el (kinsoku-eol): Make the
10324         order of characters match with the comments.
10326 2016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
10328         Add HIRAGANA ITERATION MARK to japanese-kana-table.  (tiny change)
10330         * lisp/language/japan-util.el (japanese-kana-table): Add an
10331         entry for HIRAGANA ITERATION MARK (U+309D).
10332         (japanese-alpha-numeric-table): Fix docstring.
10334 2016-05-31  K. Handa  <handa@gnu.org>
10336         Fix incomplete handling of translation table in a coding system.
10338         * coding.c (get_translation): New arg NCHARS.  Even if TRANS
10339         is an alist, return a character or a vector of character.
10340         (produce_chars): Adjust for the above change.
10341         (consume_chars): Likewise.
10343 2016-05-31  Michael Albinus  <michael.albinus@gmx.de>
10345         Improve robustness for out-of-band copy in Tramp
10347         * lisp/net/tramp-adb.el (tramp-adb-execute-adb-command)
10348         * lisp/net/tramp-cmds.el (tramp-append-tramp-buffers)
10349         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
10350         Cosmetic changes.
10352         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
10353         Use local `default-directory'.  Simplify command to send.
10354         Don't check return code, this was already done in
10355         `tramp-process-actions'.
10356         (tramp-get-inline-coding): Don't set `default-directory'.
10358         * lisp/net/tramp.el (tramp-action-out-of-band):
10359         Throw `out-of-band-failed'.
10360         (tramp-process-actions): Handle `out-of-band-failed'.
10361         (tramp-call-process, tramp-call-process-region):
10362         Use local `default-directory'.
10364 2016-05-31  Paul Eggert  <eggert@cs.ucla.edu>
10366         Merge from origin/emacs-25
10368         788c9b6 ; Spelling fix
10369         25c4a30 * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-li...
10370         0992ec3 Correct cl-flet usage (Bug#22317)
10371         50caae3 Release MH-E manual version 8.6
10372         602bb40 Update MH-E's documentation about HTML renderers
10373         89018f0 Fx the we->the typo
10374         845ee57 Restore frames into the current display by default
10375         ee28b4c * lisp/recentf.el (recentf-open-files-item): Quick fix for (b...
10376         01c3cd1 etc/TODO: Remove out-of-place issue
10377         5e18486 Clarify doc string of 'file-name-sans-extension'
10378         bffda22 Fix the MSDOS build
10379         f907f98 * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Ca...
10380         1a2ffd0 * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23...
10381         f7ffc4b Fix infloop in 'number-sequence'
10382         4ab2673 ; Spelling and punctuation fixes in comments
10383         71c152e * lisp/emacs-lisp/find-func.el (find-function-library):
10385 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10387         * lisp/emacs-lisp/autoload.el: Use radix-tree.
10389          (autoload--make-defs-autoload): Rewrite.
10390         (autoload--split-prefixes-1): Remove.
10391         (autoload-def-prefixes-max-entries): Rename from
10392         autoload-defs-autoload-max-size.
10393         (autoload-popular-prefixes): Remove.
10394         (autoload-def-prefixes-max-length): New const.
10396         * lisp/emacs-lisp/radix-tree.el: New file.
10398 2016-05-30  Ken Brown  <kbrown@cornell.edu>
10400         * src/conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Increase.
10402 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10404         Omit IF_LINT code that no longer seems needed
10406         Nowadays GCC is smarter, or the Emacs code has mutated, or both,
10407         and now is as good a time as any to remove uses of IF_LINT that
10408         now seem to be unnecessary.
10409         * lib-src/emacsclient.c (set_local_socket):
10410         * lib-src/movemail.c (main) [MAIL_USE_MAILLOCK && HAVE_TOUCHLOCK]:
10411         * src/buffer.c (fix_start_end_in_overlays, fix_overlays_before):
10412         * src/casefiddle.c (casify_region):
10413         * src/charset.c (load_charset_map):
10414         * src/coding.c (decode_coding_object, encode_coding_object):
10415         * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10416         (cons_to_unsigned, cons_to_signed):
10417         * src/frame.c (make_frame, x_set_frame_parameters):
10418         * src/keyboard.c (read_event_from_main_queue):
10419         * src/regex.c (regex_compile):
10420         * src/syntax.c (back_comment):
10421         * src/window.c (Frecenter):
10422         * src/xfaces.c (Fx_list_fonts):
10423         Remove IF_LINT that no longer seems necessary.
10424         * src/image.c (png_load_body, jpeg_load_body): Simplify use of IF_LINT.
10425         * src/keyboard.c (read_char): Use IF_LINT (volatile) rather than
10426         a pragma dance to pacify GCC -Wclobbered.
10427         * src/xdisp.c (x_produce_glyphs): Rewrite to avoid need for IF_LINT.
10429         * src/xterm.c (x_connection_closed): Now _Noreturn, which should
10430         mean we do not need IF_LINT any more.
10431         (x_io_error_quitter): Now _Noreturn.  Put an 'assume (false)’
10432         at the end, to forestall warnings from older compilers.
10434 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10436         Port --enable-gcc-warnings to Cygwin, FreeBSD
10438         These platforms have a bug where _Noreturn is empty when 'lint' is
10439         defined.  Problem reported by Ken Brown (Bug#23640).
10440         * configure.ac (GCC_LINT): Rename from 'lint'.
10441         * src/conf_post.h (IF_LINT): Use GCC_LINT, not just 'lint’.
10443 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10445         Update from gnulib
10447         This incorporates:
10448         2016-05-30 Use GCC_LINT, not lint
10449         2016-05-29 secure_getenv: Port to many more platforms.
10450         * doc/misc/texinfo.tex, lib/secure_getenv.c, lib/verify.h:
10451         * m4/secure_getenv.m4: Copy from gnulib.
10453 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10455         * lisp/emacs-lisp/pcase.el: Undo last change's spurious changes
10457         * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates): Add `atom'.
10459 2016-05-30  Ken Brown  <kbrown@cornell.edu>
10461         * src/regex.c (IF_LINT): Remove; it’s in conf_post.h
10463 2016-05-30  Michael Albinus  <michael.albinus@gmx.de>
10465         Fix Bug#23631 for Tramp
10467         * lisp/net/tramp-adb.el (tramp-adb-handle-file-name-all-completions)
10468         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions)
10469         * lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions):
10470         Fix caching problems.
10472         * lisp/net/tramp-sh.el (tramp-perl-file-name-all-completions): Simplify.
10474         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
10475         Move duplicate deletion ...
10476         (tramp-smb-handle-file-name-all-completions): ... here.
10478         * lisp/net/tramp.el (tramp-handle-file-name-completion):
10479         Handle `completion-ignored-extensions'.  (Bug#23631)
10481         * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
10482         Test also `completion-regexp-list' and `completion-ignored-extensions'.
10484 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
10486         * lisp/wid-edit.el (link): Remove :follow-link property (bug#22434)
10488         * lisp/recentf.el (recentf-dialog-mode-map): Remove unecessary mapping.
10490 2016-05-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10492         Fix up remainder of the mml property change
10494         * lisp/gnus/message.el (message-send-mail): Use the renamed
10495         mml-buffer-substring-no-properties-except-some function.
10496         (message-send-news): Ditto.
10498 2016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
10500         Allow preserving EXIF rotations when sending HTML messages
10502         * lisp/gnus/mml.el (mml--possibly-alter-image): Allow image
10503         rotation if you have exiftool installed and the image format
10504         supports it.
10505         (mml-expand-html-into-multipart-related): Use it.
10506         (mml-buffer-substring-no-properties-except-some): Renamed and
10507         copy display properties, too.
10509 2016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
10511         Make message-toggle-image-thumbnails work better
10513         * lisp/gnus/message.el (message-toggle-image-thumbnails): Use
10514         `insert-image' instead of `put-image' to make it possible to
10515         edit the resulting text in a sensible manner.
10517 2016-05-29  Alan Mackenzie  <acm@muc.de>
10519         Rationalize the use of c-new-BEG and c-new-END in CC Mode.
10521         Remove the now redundant c-old-BOM and c-old-EOM.
10523         * lisp/progmodes/cc-engine.el (c-macro-cache-syntactic): Change and simplify
10524         meaning.
10525         (c-macro-cache-no-comment): New variable.
10526         (c-invalidate-macro-cache, c-beginning-of-macro, c-end-of-macro): incorporate
10527         the new c-macro-cache-no-comment.
10528         (c-syntactic-end-of-macro): Make better use of c-macro-cache-syntactic.
10529         (c-no-comment-end-of-macro): New function.
10531         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
10532         c-extend-font-lock-region-for-macros to C/C++/ObjC value.
10534         * lisp/progmodes/cc-mode.el (c-old-BOM, c-old-EOM): Remove.
10535         (c-extend-region-for-CPP): Put results in c-new-BEG/END rather than
10536         c-old-BOM/EOM.
10537         (c-extend-font-lock-region-for-macros): Simplify meaning, no longer returning
10538         a cons for the new region, since the function is now called as an after-change
10539         function.  No longer adjust c-new-END for the length of inserted/deleted
10540         text.  Move the size restrictions on macros to here from
10541         c-neutralize-syntax-in-and-mark-CPP.
10542         (c-neutralize-syntax-in-and-mark-CPP): No longer adjust c-new-BEG/END here.
10543         Use c-no-comment-end-of-macro rather than c-syntactic-end-of-macro to find the
10544         upper boundary to "neutralize" syntactically obtrusive characters.
10545         (c-change-expand-fl-region): Don't set c-new-END to next BOL when already at
10546         one.
10548 2016-05-28  Ken Brown  <kbrown@cornell.edu>
10550         Avoid compiler warnings
10552         * src/cygw32.c (chdir_to_default_directory): Use "void" as
10553         argument list.  Use SSDATA instead of SDATA.
10555         * src/unexcw.c (fixup_executable): Use %td as format specifier for
10556         argument of type ptrdiff_t.  Use %zu for argument of type size_t.
10558 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
10560         Fix 'next-line' and 'previous-line' during keyboard macro
10562         * lisp/simple.el (line-move-visual): Handle the case when point
10563         moves outside of the visible portion of the buffer while executing
10564         a keyboard macro.  (Bug#13452)  (Bug#23551)  (Bug#23555)
10566 2016-05-28  Alan Mackenzie  <acm@muc.de>
10568         C++ Mode: attribute in class declaration fouls up indentation.  Fix!
10570         * lisp/progmodes/cc-engine.el (c-looking-at-decl-block): Add code to skip
10571         back over noise clauses and attribute clauses.
10573         * lisp/progmodes/cc-langs.el (c-paren-nontype-key): New language variable.
10575 2016-05-28  Ken Olum  <kdo@cosmos.phy.tufts.edu>
10577         Prevent locked-file errors in Rmail
10579         * lisp/mail/rmail.el (rmail-get-new-mail-1): Lock file before
10580         calling 'rmail-insert-inbox-text'.  Unlock if
10581         'rmail-insert-inbox-text' doesn't modify buffer.
10582         (rmail-insert-inbox-text): Remove lock-checking code.  (Bug#17706)
10584 2016-05-28  Michael Albinus  <michael.albinus@gmx.de>
10586         Sync with Tramp repository.
10588         * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
10589         * lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process)
10590         * lisp/net/tramp-smb.el (tramp-smb-handle-start-file-process):
10591         Create BUFFER if it doesn't exist.  Reported by Nikolay
10592         Kudryavtsev <nikolay.kudryavtsev@gmail.com>.
10594         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-attributes)
10595         (tramp-gvfs-file-attributes-with-gvfs-ls-regexp)
10596         (tramp-gvfs-file-attributes-with-gvfs-info-regexp): New defconst.
10597         (tramp-gvfs-get-directory-attributes)
10598         (tramp-gvfs-get-root-attributes)
10599         (tramp-gvfs-get-file-attributes): New defun.
10600         (tramp-gvfs-handle-file-attributes)
10601         (tramp-gvfs-handle-file-name-all-completions): Use them.
10602         (tramp-gvfs-handle-file-directory-p): Use `file-truename'.
10603         (tramp-gvfs-maybe-open-connection): Set :noquery flag for process.
10604         (tramp-gvfs-send-command): Add locale settings to `process-environment'.
10605         (top): Suppress D-Bus error messages during zeroconf initialization.
10607         * lisp/net/tramp.el (tramp-unknown-id-string)
10608         (tramp-unknown-id-integer): New defconst.
10609         (tramp-check-cached-permissions)
10610         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes)
10611         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
10612         (tramp-convert-file-attributes, tramp-get-remote-uid)
10613         (tramp-get-remote-gid): Use them.
10615         * lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
10616         Rename from `tramp-color-escape-sequence-regexp'.
10617         (tramp-sh-handle-insert-directory)
10618         (tramp-convert-file-attributes): Adapt callees.
10619         (tramp-device-escape-sequence-regexp): New defconst.
10620         (tramp-wait-for-output): Use it.  Reported by Matthías Páll
10621         Gissurarson <icetritlo@gmail.com>.
10623         * lisp/net/tramp-smb.el (tramp-smb-handle-file-name-all-completions):
10624         Simplify.
10626         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
10627         (tramp-test28-shell-command):
10628         Use `tramp-display-escape-sequence-regexp'.
10630 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10632         Don’t document declare-function internals
10634         Suggested by Stefan Monnier in:
10635         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00618.html
10636         * doc/lispref/functions.texi (Declaring Functions):
10637         * lisp/subr.el (declare-function):
10638         * lisp/emacs-lisp/bytecomp.el:
10639         (byte-compile-macroexpand-declare-function):
10640         Document as (fn file &optional arglist fileonly)
10641         even though it is really (fn file &rest args).
10643 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10645         * src/puresize.h (BASE_PURESIZE): Increase it some more.
10647 2016-05-27  Glenn Morris  <rgm@gnu.org>
10649         * src/puresize.h (BASE_PURESIZE): Increase it by a little bit.
10651         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Tweak previous to
10652         avoid build failure.
10654 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10656         Port to platforms where rlim_max < 0
10658         * src/emacs.c (main): Do not treat a negative rlim_max as a limit;
10659         this can happen if a special value like RLIM_INFINITY is negative.
10661 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10663         Robustify stack-size calculation
10665         * src/emacs.c: Include getpagesize.h.
10666         (main): Check for integer overflow when computing stack size.
10667         Round new rlim_cur to pagesize boundary on all platforms, as this
10668         is easy and would have prevented Bug#23622.  If setrlimit
10669         fails, use current limit to determine re_max_failures.
10671 2016-05-27  Ken Brown  <kbrown@cornell.edu>
10673         Adjust filenotify-tests on Cygwin
10675         * test/lisp/filenotify-tests.el (file-notify--test-timeout):
10676         Remove special case for Cygwin.
10677         (file-notify-test07-backup): Update expected results on Cygwin.
10679 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10681         Improve define-function omitted-arg documentation
10683         * doc/lispref/functions.texi (Declaring Functions):
10684         * lisp/subr.el (declare-function):
10685         Be clearer when documenting omitted args for define-function.
10687 2016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10689         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add docstring to accessors.
10691 2016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10693         * lisp/subr.el (definition-prefixes): Expand docstring
10695         * lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
10696         Remove unused function.
10698 2016-05-27  Phillip Lord  <phillip.lord@russet.org.uk>
10700         Fix broken viper deactivation
10702         * lisp/emulation/viper.el (viper--deactivate-advice-list): Destructure
10703           args to advice-remove.
10704           (viper--advice-add): Use cons not list.
10706         Addresses bug#23625
10708 2016-05-27  Mark Oteiza  <mvoteiza@udel.edu>
10710         Preserve buffer point in windows by default (Bug#4041).
10712         * doc/lispref/windows.texi: Mention new default.
10713         * etc/NEWS: Mention new default.
10714         * lisp/window.el (switch-to-buffer-preserve-window-point): Default to t.
10716 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10718         Fix byte-compiler pacification for declare-function
10720         Problem reported by Michael Heerdegen in:
10721         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00590.html
10722         * lisp/emacs-lisp/bytecomp.el:
10723         (byte-compile-macroexpand-declare-function):
10724         Revert signature to previous value.
10725         * lisp/subr.el (declare-function): Change signature to
10726         match the reverted signature used in the byte compiler.
10728 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10730         Update texinfo.tex
10732         This fixes Bug#23611 in a different (and presumably better) way.
10733         * doc/misc/texinfo.tex: Update from gnulib.
10735 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10737         Pacify 'make check-declare'
10739 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10741         Repair damage from emacs-25 merge
10743         * test/lisp/character-fold-tests.el:
10744         Remove, as it was renamed to test/lisp/char-fold-tests.el.
10745         * test/lisp/emulation/viper-tests.el:
10746         Rename from test/automated/viper-tests.el.
10748 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10750         Merge from origin/emacs-25
10752         c3489d0 * lisp/w32-fns.el (set-message-beep, w32-get-locale-info) (w3...
10753         a4d882c Correct old cell name unbinding when renaming cell.
10754         6c12c53 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
10755         0be6725 Document problem: slow screen refresh on missing font.
10756         853b9b9 * admin/admin.el (add-release-logs): Basic check of existing ...
10757         5fa80cf * build-aux/gitlog-to-emacslog: Handle empty generated Change...
10758         3c79e51 * admin/admin.el (add-release-logs): Generate ChangeLog if ne...
10759         42275df * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
10760         3f4a9d9 * admin/authors.el (authors): First update the ChangeLog.
10761         897fb6f ; 'Changes from the pre-25.1 API' copyedits
10762         825ca25 Rename vc-stay-local back to vc-cvs-stay-local
10763         4efb3e8 * doc/emacs/files.texi (Comparing Files): * doc/emacs/trouble...
10764         b995d1e * doc/misc/eww.texi (Advanced): Fix xref.
10765         2e589c0 Fix cross-references between manuals
10766         f3d2ded * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to ...
10767         906c810 ; * admin/release-process: Move etc/HISTORY from here... ; * ...
10768         bea1b65 * admin/admin.el (add-release-logs): Also update etc/HISTORY.
10769         503e752 ; * CONTRIBUTE: Fix a typo.
10770         fbfd478 Avoid aborting due to errors in arguments of 'set-face-attrib...
10771         bdfbe6d ; * admin/release-process: Copyedits.
10772         44a6aed ; * test/automated/data-tests.el: Standardize license notice.
10773         c33ed39 ; * test/automated/viper-tests.el: Standardize license notice.
10774         df4a14b Add automated test for viper-tests.el
10775         c0139e3 Fix viper undo breakage from undo-boundary changes
10776         920d76c Fix reference to obsolete fn ps-eval-switch
10777         18a9bc1 Do not trash symlinks to init file
10778         2671179 Don't print the "decomposition" line for control chars in wha...
10779         869092c Bring back xterm pasting with middle mouse
10780         5ab0830 Provide workaround for xftfont rendering problem
10781         c9f7ec7 * lisp/desktop.el: Disable restore frameset if in non-graphic...
10782         30989a0 Mention GTK+ problems in etc/PROBLEMS
10783         421e3c4 * lisp/emacs-lisp/package.el (package-refresh-contents):
10784         dadfc30 Revert "epg: Add a way to detect gpg1 executable for tests"
10785         e41a5cb Avoid errors with Czech and Slovak input methods
10786         d4ae6d7 epg: Add a way to detect gpg1 executable for tests
10787         ebc3a94 * lisp/emacs-lisp/package.el: Fix free variable warnings.
10788         6e71295 * lisp/emacs-lisp/package.el (package--with-response-buffer):
10789         c45d9f6 Improve documentation of 'server-name'
10790         3b5e38c Modernize ASLR advice in etc/PROBLEMS
10791         1fe1e0a * lisp/char-fold.el: Rename from character-fold.el.
10793 2016-05-26  Eli Zaretskii  <eliz@gnu.org>
10795         Avoid byte-compiler warnings due to 'declare-function'
10797         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
10798         (w32-get-valid-locale-ids):
10799         * lisp/progmodes/js.el (ido-mode): Specify arglist in
10800         'declare-function' forms, to avoid byte-compiler warnings.
10802 2016-05-26  Glenn Morris  <rgm@gnu.org>
10804         * lisp/info.el (Info-default-directory-list): Don't check /share,info.
10806         No-one puts info pages there.  If /share does exist, it's likely to
10807         contain remote file systems where access could be slow.
10809 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10811         Merge from origin/emacs-25
10813         2d76405 etc/AUTHORS: Update the AUTHORS file
10815 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10817         Merge from origin/emacs-25
10819         06cb28f Fix bug#23462: Crash when iconifying frame on OS X.
10821 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10823         Merge from origin/emacs-25
10825         939eb75 Fix bug in default setting of 'ps-paper-type'
10827 2016-05-26  Glenn Morris  <rgm@gnu.org>
10829         * lisp/info.el (Info-default-directory-list): Remove obsolete suffixes.
10831 2016-05-26  Michael Albinus  <michael.albinus@gmx.de>
10833         Fix Bug#23614.
10835         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
10836         Let-bind `process-coding-system-alist' in order to suppress
10837         the value for "cmdproxy".
10839         * lisp/net/tramp.el (tramp-encoding-shell):
10840         `w32-shell-name' is a function.
10841         (tramp-encoding-command-switch)
10842         (tramp-encoding-command-interactive): Use `w32-shell-dos-semantics'.
10844         * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
10845         Suppress some tests on MS Windows.  (Bug#23614)
10847 2016-05-26  Stephen Berman  <stephen.berman@gmx.net>
10849         hl-line.el: Fix flickering of highlighted line (bug#23510)
10851         * lisp/hl-line.el (hl-line-maybe-unhighlight)
10852         (global-hl-line-highlight-all)
10853         (global-hl-line-maybe-unhighlight): New functions.
10854         (hl-line-overlay-buffer): New variable.
10855         (hl-line-mode): Use it.  Replace hl-line-unhighlight on
10856         pre-command-hook by hl-line-maybe-unhighlight on
10857         post-command-hook, to prevent hl-line from flickering.
10858         Adjust document string.
10859         (global-hl-line-mode): Use global-hl-line-highlight-all to
10860         simultaneously highlight the current line in all live windows.
10861         Replace global-hl-line-unhighlight on pre-command-hook by
10862         global-hl-line-maybe-unhighlight on post-command-hook, to
10863         prevent global-hl-line from flickering.  Remove
10864         global-hl-line-unhighlight from change-major-mode-hook on
10865         disabling the mode.  Adjust document string.
10867 2016-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
10869         Make autoloads populate a new definition-prefixes table
10871         * lisp/subr.el (definition-prefixes): New hash table.
10872         (register-definition-prefixes): New function.
10874         * lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): New var.
10875         (autoload--split-prefixes-1, autoload--split-prefixes)
10876         (autoload--make-defs-autoload): New functions.
10877         (autoload-defs-autoload-max-size, autoload-popular-prefixes): New vars.
10878         (autoload-generate-file-autoloads): Obey autoload-compute-prefixes.
10879         (update-directory-autoloads): Don't touch loaddefs.el if the set of
10880         autoloads hasn't changed (i.e. if only the timestamp would change).
10882         * lisp/loadup.el: Purify definition-prefixes.
10884         * lisp/w32-fns.el: Keep name space clean.
10885         (w32-set-default-process-coding-system): Rename from
10886         set-default-process-coding-system.
10887         (w32-set-system-coding-system): Rename from set-w32-system-coding-system.
10889 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10891         Allow network-stream-tests to work for out-of-tree builds
10893         * test/lisp/net/network-stream-tests.el
10894         (network-stream-tests--datadir): New defconst.
10895         (make-tls-server): Use it.
10897 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10899         Fix failing echo-server-nowait test
10901         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
10902         Specify IPv4 for the client, to match the family of the server.
10903         (Bug#23606)
10905 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10907         Allow shr-tests to work for out-of-tree builds
10909         * test/lisp/net/shr-tests.el (shr-tests--datadir): New defconst.
10910         (shr-test, rendering): Use it.
10912 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10914         Update allowable arguments for open-network-stream
10916         * src/coding.c (Ffind_operation_coding_system): Allow t as a
10917         target for open-network-stream.  (Bug #23540)
10919 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
10921         Make js-mode's syntax highlighting work again
10923         * lisp/progmodes/js.el (js-mode): Fix the assigned
10924         font-lock-defaults value (bug#23603).
10926 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10928         * lisp/progmodes/cc-mode.el: Add minor comments
10930         (c-change-expand-fl-region): Mark args as unused.
10932 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10934         * lisp/url/url-http.el: Use lexical-binding
10936         (url-http-simple-after-change-function): Use buffer-size rather than `nd'.
10937         (url-http-wait-for-headers-change-function): Remove unused var
10938         `content-length'.
10939         (url-http): Remove unused vars `host' and `port'.
10941 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10943         * lisp/widget.el (define-widget): Use `declare' (which does work now).
10945         (widget-plist-member): Mark as obsolete.
10947 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10949         * lisp/image.el: Use lexical-binding
10951         (image-scaling-factor, imagemagick-types-inhibit)
10952         (imagemagick-enabled-types): Remove redundant :group.
10953         (image--get-image): Apply de-Morgan and use car-safe.
10954         (image-compute-scaling-factor): Use the argument.
10956 2016-05-23  Glenn Morris  <rgm@gnu.org>
10958         * lisp/image.el (image--get-image): Remove nonsensical code.
10960         * lisp/image.el (image--get-image): Avoid requiring a library for
10961         one trivial operation.
10963 2016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
10965         Don’t use only last protocol from getaddrinfo
10967         Problem reported by Ken Brown in:
10968         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00483.html
10969         * src/process.c (conv_addrinfo_to_lisp): New function.
10970         (connect_network_socket): Arg is now a list of addrinfos, not
10971         merely IP addresses.  All uses changed.  Use protocol from
10972         each addrinfo.
10973         (Fmake_network_process): Accumulate protocols into addrinfos
10974         rather than just using the last one found.
10975         (check_for_dns): Accumulate protocols here, too.
10976         * src/process.h (struct Lisp_Process): Remove ai_protocol;
10977         no longer needed.
10979 2016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
10981         Fix seq requirement that broke bootstrap
10983         * lisp/image.el (image--get-image): Require seq here, not at the
10984         top level, to avoid ‘(require seq) while preparing to dump’ while
10985         bootstrapping.  Suggested by Tino Calancha in:
10986         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00477.html
10988 2016-05-22  Nicolas Petton  <nicolas@petton.fr>
10990         Add missing dependencies to seq.el
10992         * lisp/emacs-lisp/find-func.el:
10993         * lisp/ibuffer.el:
10994         * lisp/image.el: Require seq.
10996 2016-05-22  Alp Aker  <alp@food52.com>
10998         * src/process.c (SOCK_NONBLOCK): Fix typo.
11000 2016-05-22  Etienne Prud’homme  <e.e.f.prudhomme@gmail.com>
11002         Add completion of colors in CSS mode
11004         * lisp/textmodes/css-mode.el (css-value-class-alist): Add CSS colors
11005         from "CSS Color Module Level 3".
11007         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
11008         Update test.
11010 2016-05-21  Paul Eggert  <eggert@cs.ucla.edu>
11012         Prefer SOCK_NONBLOCK to O_NONBLOCK
11014         * src/process.c (SOCK_NONBLOCK): Define to 0 if not already defined.
11015         (connect_network_socket): Create the socket with SOCK_NONBLOCK, to
11016         avoid an fcntl with O_NONBLOCK if SOCK_NONBLOCK works.  Put the
11017         SOCK_DGRAM check a bit later, to keep the logic cleaner, as
11018         the order does not matter here.
11020 2016-05-21  Alan Third  <alan@idiocy.org>
11022         Fix bug#16856, cursor leaves garbage in fringe on OS X.
11024         * src/nsterm.m (ns_draw_window_cursor): Prevent the cursor from
11025         being drawn outside the text area.
11027 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
11029         Fix compiler warnings in the MinGW build
11031         * configure.ac [mingw32]: Don't add -Wpointer-sign, and add
11032         -Wno-pointer-sign, to keep the noise level down.
11034         * nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
11035         -Wredundant-decls, as that produces a lot of noise due to
11036         redeclaration of time-related functions by gnulib.
11037         * nt/runemacs.c (set_user_model_id): Fix argument type of
11038         'SetCurrentProcessExplicitAppUserModelID'.
11040         * src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
11041         declare 'dpyinfo', as it is unused.
11042         (xpm_load): Fix warnings about pointer signedness.
11043         * src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
11044         prototypes.
11045         (sys_spawnve): Avoid warnings about discarding 'const' qualifier.
11046         (sys_select): Provide prototype.
11047         (g_b_init_compare_string_w): Move declaration to file scope.
11048         * src/w32heap.c (dumped_data_commit): Now static.
11049         (FREEABLE_P): Avoid warnings about pointer comparison with integer.
11050         (mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
11051         * src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
11052         (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
11053         Provide prototypes.
11054         * src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
11055         redundant prototypes.
11056         (w32_get_internal_run_time, map_w32_filename): Provide prototype.
11057         (init_environment, sys_ctime): Avoid warnings about discarding
11058         'const' qualifier.
11059         Include utimens.h.
11060         (sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
11061         (sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
11062         (sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
11063         prototypes.
11064         (sys_rename_replace): Use %d to avoid compiler warnings.
11065         (_wsa_errlist): Make the message text 'const char *', to avoid
11066         compilation warnings.
11067         (dynlib_reset_last_error): Move prototype to file scope.
11068         (w32_get_resource): First argument is now 'const char *'.
11069         * src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
11070         (otf_features): Second argument is no 'const char *'.
11071         * src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
11072         (x_set_window_size): Remove redundant prototypes.
11073         (XChangeGC, XGetGCValues, w32_draw_underwave)
11074         (w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
11075         (x_calc_absolute_position, x_destroy_window): Now static.
11076         (menubar_selection_callback): Move prototype to file scope.
11077         * src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
11078         declaration.
11079         (w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
11080         (w32font_full_name): Fix warnings about implicit conversion of
11081         'float' to 'double'.
11082         * src/w32reg.c (w32_get_rdb_resource): Fix warnings about
11083         discarding 'const' qualifier.
11084         * src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
11085         (set_frame_menubar): Remove redundant prototypes.
11086         (menubar_selection_callback, w32_menu_display_help): Provide
11087         prototypes.
11088         (simple_dialog_show): Avoid warnings about discarding 'const'
11089         qualifier.
11090         * src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
11091         (free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
11092         (x_set_tool_bar_lines, x_set_internal_border_width): Remove
11093         redundant prototypes.
11094         (current_popup_menu): Remove redundant declaration.
11095         (colormap_t): Member 'name' is now 'const char *'.
11096         (add_system_logical_colors_to_map): Fix signed/unsigned warnings.
11097         (x_decode_color, x_set_border_pixel)
11098         (x_clear_under_internal_border, x_set_name, hook_w32_key)
11099         (reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
11100         static.
11101         (w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
11102         (w32_msg_worker, w32_last_error): Provide prototypes.
11103         (funhook, lookup_vk_code): Avoid warnings about missing
11104         parentheses.
11105         (x_default_font_parameter, Fw32_notification_notify): Avoid
11106         warnings about discarding 'const' qualifier.
11107         (Fx_create_frame): Avoid warnings about empty body of 'else'.
11108         (x_screen_planes): Ifdef away unused function.
11109         (Fx_show_tip): Remove unused variables.
11110         (Fw32_battery_status): Avoid warnings about implicit promotion
11111         from float to double.
11112         (Fw32_notification_notify): Initialize 'timeout'.
11113         * src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
11114         define the TIMER_SETTIME_RUNNING value if it will be used.
11115         * src/w32notify.c (send_notifications): Ifdef away an empty if
11116         clause.  Remove unused variable.
11117         (watch_end, watch_completion): Provide prototypes.
11118         * src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
11119         * src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
11120         warning with pointer signedness.
11121         * src/gnutls.c (gnutls_x509_crt_get_signature)
11122         (gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
11123         don't load them from the GnuTLS library, as they are no longer
11124         used.
11125         * src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
11126         define, as it's unused.
11127         * src/unexw32.c (open_input_file, open_output_file)
11128         (close_file_data): Remove redundant prototypes.
11129         (_start): provide prototype.
11130         (mainCRTStartup): Move prototype to file level.
11131         (find_section): Use type-cast to shut up compiler warnings.
11132         (offset_to_section, relocate_offset): Now static.
11133         (find_section): First argument is now a 'const char *'.
11134         (offset_to_section): Ifdef away, as it's unused.
11135         * src/w32heap.h (find_section): Adjust prototype.
11136         * src/dynlib.c (dynlib_reset_last_error): Provide prototype.
11137         * src/dired.c (directory_files_internal_w32_unwind): Avoid
11138         warnings about missing prototypes.
11139         (is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
11140         (directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
11141         signedness.
11142         * src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
11143         Fix warnings about pointer signedness.
11144         * src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
11145         unused.
11146         * src/sysdep.c (_getpid): Remove redundant prototype.
11147         (sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
11148         [!MSDOS]: Don't define 'st', it's unused.
11149         (init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
11150         (str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
11151         * src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
11152         n_to_read, as it is not used.
11153         (MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
11154         * src/w32font.h (syms_of_w32font): Remove redundant prototype.
11155         * src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
11156         * src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
11157         not used by DOS_NT builds, to avoid compiler warnings.
11158         * src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
11159         declaration.
11160         * src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
11161         up compiler warnings.
11162         * src/w32term.h (x_set_window_size, x_get_focus_frame)
11163         (x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
11164         (x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
11165         (x_free_frame_resources, x_real_positions)
11166         (display_x_get_resource): Remove redundant prototypes.
11168         * lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
11169         (sys_rename, gettimeofday): Provide prototypes.
11170         * lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
11171         declarations.
11172         * lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
11173         (xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
11174         (close_winsock, initialize_sockets, w32_set_user_model_id)
11175         (w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
11176         prototypes.
11177         (w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
11178         difference.
11179         (w32_set_user_model_id): Update prototype of
11180         SetCurrentProcessExplicitAppUserModelID to avoid compiler
11181         warnings.
11182         (start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
11183         shut up compiler warnings.
11184         * lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
11186 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
11188         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
11190         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
11191         wrap on a whitespace character if it's followed by another
11192         whitespace character.  When returning under WORD_WRAP for a screen
11193         line that is continued, restore to wrap point when atpos/atx
11194         position would be displayed on the next screen line due to
11195         line-wrap.  (Bug#23570)
11197 2016-05-21  Puneeth Chaganti  <punchagan@muse-amuse.in>
11199         * lisp/svg.el (svg-create): Fix a typo: xmlsn -> xmlns.  (Bug#23589)
11201 2016-05-20  Andrew Hyatt  <ahyatt@gmail.com>
11203         Added tests for dos unibyte decoding.
11205         The underlying bug was previously fixed by Eli Zaretskii in commit
11206         c8109d9c4057d8cac79e2c139758cadd410e7446.
11208 2016-05-20  Philipp Stephani  <phst@google.com>
11210         Fix handling of ‘mouse-on-link-p’.
11212         If ‘mouse-on-link-p’ returns a string or vector, the first element
11213         is to be used as new event.  Translation to ‘mouse-2’ should only
11214         happen if the return value is not a string or vector.  See
11215         docstring of ‘mouse-on-link-p’ and Bug#23288.
11217         * lisp/mouse.el (mouse--down-1-maybe-follows-link): Process return
11218         value of ‘mouse-on-link-p’ according to documentation.
11220         * test/lisp/mouse-tests.el (bug23288-use-return-value)
11221         (bug23288-translate-to-mouse-2): Tests for Bug#23288.
11223 2016-05-20  Daiki Ueno  <ueno@gnu.org>
11225         epg: Add a way to detect gpg1 executable for tests
11227         Fixes bug#23561.
11229         * test/automated/epg-tests.el
11230         (epg-tests-program-alist-for-passphrase-callback): New
11231         constant.
11232         (epg-tests-find-usable-gpg-configuration): New function,
11233         renamed from `epg-tests-gpg-usable'.  All callers changed.
11234         (epg-tests-gpg-usable): Remove.
11236         * lisp/epg-config.el (epg-config--program-alist): Factor out
11237         constructor element to...
11238         (epg-config--configuration-constructor-alist): ...here.
11239         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
11240         and add PROGRAM-ALIST argument.
11242 2016-05-19  Mark Oteiza  <mvoteiza@udel.edu>
11244         Put point at beginning of display-time-world buffer.
11246         If display-time-world decides to popup vertically from the bottom of the
11247         frame and scroll-margin is nonzero, the top of the buffer contents are
11248         hidden due to scroll.
11249         * lisp/time.el (display-time-world-display): Move point to point-min
11250         after inserting contents.
11252 2016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11254         Allow null entries in face and image cache
11256         Problem reported by Tino Calancha (Bug#23580).
11257         * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID):
11258         Don’t assume that the result is non-null.
11259         * src/xdisp.c (fill_image_glyph_string):
11260         Restore check that image pointer is non-null.
11262 2016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11264         Fix flyspell highlighting
11266         Problem reported by Jim Meyering (Bug#23575).
11267         * src/xdisp.c (extend_face_to_end_of_line):
11268         Fix typo in previous change.
11270 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
11272         * lisp/server.el (server-name): Add autoload cookie.  (Bug#23576)
11274 2016-05-18  Sam Steingold  <sds@gnu.org>
11276         python-describe-at-point: add and bind
11278 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11280         ‘make check-declare’ now chatters less
11282         * etc/NEWS: Document this.
11283         * lisp/emacs-lisp/check-declare.el (check-declare-locate):
11284         Return relative names, not absolute.
11285         (check-declare-scan, check-declare-verify, check-declare-warn)
11286         (check-declare-file, check-declare-directory):
11287         Generate less chatter.  Use relative file names rather than
11288         absolute.  Don’t give up on computing a good file name for a
11289         diagnostic merely because the function name was bad.  Make
11290         malformed declarations more noticeable.  Don’t warn about
11291         "ext:..." declarations if check-declare-ext-errors is nil.
11292         (check-declare-errmsg): Remove.
11293         (check-declare-warn): New optional arg LINE.
11294         (check-declare-files): Put status into mode line rather than
11295         chattering.
11297 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11299         Pacify byte-compiler for byte-compile-macroexpand-declare-function
11301         * lisp/emacs-lisp/bytecomp.el: Change signature of
11302         byte-compile-macroexpand-declare-function to match that of
11303         declare-function.
11305 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11307         Pacify byte-compiler for with-wrapper-hook
11309         * lisp/subr.el (subr--with-wrapper-hook-no-warnings):
11310         New macro, split out from with-wrapper-hook.
11311         * lisp/abbrev.el (abbrev--default-expand):
11312         * lisp/minibuffer.el (completion--in-region):
11313         * lisp/simple.el (buffer-substring--filter):
11314         * lisp/subr.el (with-wrapper-hook):
11315         Use it.
11317 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11319         Pacify byte-compiler in lisp/url
11321         * lisp/url/url-misc.el, lisp/url/url-file.el (mm-disable-multibyte):
11322         Add decl.
11324 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11326         Port --enable-gcc-warnings to GCC 6.1
11328         * configure.ac (WERROR_CFLAGS): Omit -Wunused-const-variable=2.
11329         * lib-src/etags.c (LOOKING_AT, LOOKING_AT_NOCASE):
11330         Omit test whether pointer plus a constant equals a null pointer.
11331         * src/alloc.c (compact_small_strings):
11332         Avoid pointer arithmetic on null pointers.
11333         * src/alloc.c (mark_face_cache):
11334         * src/fontset.c (free_realized_fontsets, Fset_fontset_font):
11335         * src/fringe.c (draw_fringe_bitmap_1)
11336         (Fset_fringe_bitmap_face):
11337         * src/macfont.m (macfont_draw):
11338         * src/msdos.c (IT_set_face, IT_clear_screen):
11339         * src/nsfont.m (nsfont_draw):
11340         * src/nsterm.h (FRAME_DEFAULT_FACE):
11341         * src/nsterm.m (ns_draw_window_cursor)
11342         (ns_draw_vertical_window_border, ns_draw_window_divider)
11343         (ns_dumpglyphs_box_or_relief)
11344         (ns_maybe_dumpglyphs_background, ns_dumpglyphs_image)
11345         (ns_dumpglyphs_stretch):
11346         * src/w32term.c (w32_draw_vertical_window_border)
11347         (w32_draw_window_divider, x_set_mouse_face_gc):
11348         * src/xdisp.c (estimate_mode_line_height, init_iterator)
11349         (handle_face_prop, handle_single_display_spec, pop_it)
11350         (CHAR_COMPOSED_P, get_next_display_element)
11351         (next_element_from_display_vector, extend_face_to_end_of_line)
11352         (fill_gstring_glyph_string,BUILD_COMPOSITE_GLYPH_STRING):
11353         * src/xfaces.c (Finternal_merge_in_global_face, Fface_font)
11354         (lookup_named_face):
11355         * src/xterm.c (x_draw_vertical_window_border)
11356         (x_draw_window_divider, x_set_mouse_face_gc):
11357         Prefer FACE_OPT_FROM_ID to FACE_FROM_ID when the result might be null.
11358         * src/xterm.c (try_window_id):
11359         Redo loop to convince GCC 6.1 that it is null pointer safe.
11360         (x_color_cells):
11361         Use eassume as necessary to pacify GCC 6.1.
11362         * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID): Now returns non-null.
11363         (FACE_OPT_FROM_ID, IMAGE_OPT_FROM_ID): New macro, with the old
11364         behavior of the non-_OPT macro, to be used when the result
11365         might be a null pointer.
11366         * src/dispnew.c (buffer_posn_from_coords, marginal_area_string)
11367         [HAVE_WINDOW_SYSTEM]:
11368         * src/intervals.h (INTERVAL_WRITABLE_P):
11369         * src/term.c (turn_off_face):
11370         * src/xdisp.c (get_glyph_face_and_encoding, fill_image_glyph_string)
11371         (produce_image_glyph, produce_xwidget_glyph):
11372         * src/xfaces.c (lookup_named_face):
11373         Remove unnecessary test for null pointer.
11374         * src/keyboard.c (read_char): Suppress bogus -Wclobbered warning.
11375         * src/process.c (would_block): New function.
11376         (server_accept_connection, wait_reading_process_output, send_process):
11377         Use it.
11378         * src/xdisp.c (get_window_cursor_type, note_mouse_highlight):
11379         Prefer IMAGE_OPT_FROM_ID to IMAGE_FROM_ID when the result
11380         might be null.
11382 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11384         Sync from gnulib
11386         This incorporates:
11387         2016-05-17 manywarnings: update for GCC 6.1
11388         2016-05-13 intdiv0, memmem, nocrash, strcasestr, strstr: no exit
11389         * m4/manywarnings.m4, m4/nocrash.m4: Copy from gnulib.
11391 2016-05-16  Glenn Morris  <rgm@gnu.org>
11393         * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
11394         Include more details on hydra.
11396 2016-05-16  Alan Mackenzie  <acm@muc.de>
11398         Tidy up redundant code in cc-vars.el caused by mistake in emacs-25 -> master
11400 2016-05-16  Alan Mackenzie  <acm@muc.de>
11402         Fix spurious fontification of "for (; a * b;)" in CC Mode.
11404         This fixes bug #7918 (again).
11406         * lisp/progmodes/cc-engine.el (c-delq-from-dotted-list): New function.
11407         (c-forward-decl-or-cast-1): Return a 4 element list in place of the previous
11408         cons cell - additionally, return a flag indicating whether the declaration
11409         parsed might have been an expression, and the position of the type identifier
11410         in the said declaration.
11412         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): When
11413         c-forward-decl-or-cast-1 has indicated it might have parsed an expression,
11414         check for it being a spurious declaration in a "for" statement.
11416 2016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
11418         Pacify ‘make check-declare’
11420         * lisp/cedet/srecode/insert.el (data-debug-new-buffer)
11421         (data-debug-insert-stuff-list, data-debug-insert-thing):
11422         * lisp/emulation/viper-ex.el (viper-change-state-to-vi)
11423         (viper-change-state-to-emacs):
11424         * lisp/emulation/viper-macs.el (viper-change-state-to-vi):
11425         * lisp/org/ob-asymptote.el (orgtbl-to-generic):
11426         * lisp/org/ob-awk.el (orgtbl-to-generic):
11427         * lisp/org/ob-core.el (org-edit-src-code, orgtbl-to-generic):
11428         * lisp/org/ob-emacs-lisp.el (orgtbl-to-generic):
11429         * lisp/org/ob-exp.el (org-element-context):
11430         * lisp/org/ob-gnuplot.el (org-time-string-to-time)
11431         (orgtbl-to-generic):
11432         * lisp/org/ob-haskell.el (org-export-to-file):
11433         * lisp/org/ob-latex.el (org-create-formula-image)
11434         (org-latex-compile):
11435         * lisp/org/ob-python.el (run-python):
11436         * lisp/org/ob-sh.el (orgtbl-to-generic):
11437         * lisp/org/ob-tangle.el (org-link-escape, org-back-to-heading):
11438         * lisp/org/org-colview.el (org-agenda-redo):
11439         * lisp/org/org-feed.el (url-retrieve-synchronously):
11440         * lisp/org/org-info.el (Info-find-node):
11441         * lisp/org/org-list.el (org-previous-line-empty-p):
11442         * lisp/org/org-macs.el (org-string-match-p):
11443         * lisp/org/org.el (org-beamer-mode):
11444         Fix prototype to match current definition.
11445         * lisp/emacs-lisp/advice.el (function-called-at-point):
11446         * lisp/progmodes/prolog.el (compilation-shell-minor-mode):
11447         Fix typo: extra '.
11448         * lisp/emacs-lisp/cl-generic.el (cl-defmethod):
11449         Insert ,' to pacify check-declare.
11450         * lisp/org/ob-comint.el (tramp-flush-directory-property):
11451         * lisp/org/ob-tangle.el (org-babel-update-block-body):
11452         * lisp/org/org-bibtex.el (org-babel-trim):
11453         * lisp/org/org-pcomplete.el (org-export-backend-options):
11454         * lisp/org/org-protocol.el (org-publish-get-project-from-filename):
11455         Fix file name in declare-function.
11456         * lisp/org/ob-comint.el (with-parsed-tramp-file-name)
11457         * lisp/org/ob-core.el (with-parsed-tramp-file-name):
11458         * lisp/org/org.el (org-beamer-mode):
11459         * lisp/url/url-http.el (gnutls-negotiate):
11460         Append ‘t’ to declare-function, since the declaration isn’t a defun.
11461         * lisp/org/ob-core.el (show-all):
11462         Declare outline-show-all instead, since it is the
11463         non-obsolete version of this function.
11464         (org-save-outline-visibility): Remove; not needed.
11465         * lisp/org/ob-scheme.el (run-geiser, geiser-mode)
11466         (geiser-eval-region, geiser-repl-exit):
11467         * lisp/org/ox-org.el (htmlize-buffer):
11468         Prepend "ext:" to file name, since it is not part of Emacs.
11469         * lisp/org/ob-sh.el (org-babel-comint-in-buffer)
11470         * lisp/org/org-gnus.el (nnimap-group-overview-filename):
11471         Remove decl, since function was removed.
11472         * lisp/org/ob-sh.el (org-babel-comint-with-output):
11473         * lisp/org/org-macro.el (org-with-wide-buffer):
11474         Omit unnecessary (and mismatching) decl.
11475         * lisp/org/org-agenda.el (calendar-absolute-from-iso):
11476         * lisp/org/org-clock.el (calendar-iso-to-absolute):
11477         Declare calendar-iso-to-absolute instead, since it is the
11478         non-obsolete version of this function.
11479         * lisp/org/org-compat.el (w32-focus-frame):
11480         Remove decl, since function is now obsolete.
11482 2016-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
11484         :max-width/height fixes for shr after the scaling changes
11486         * lisp/net/shr.el (shr-rescale-image): Ensure that we respect
11487         max-width and max-height even after the scaling changes done
11488         earlier this year.
11490 2016-05-14  Eli Zaretskii  <eliz@gnu.org>
11492         Fix reading minibuffer input in viper-mode
11494         * lisp/emulation/viper-cmd.el (viper-read-string-with-history):
11495         Restore an assignment to viper-initial that got lost when
11496         viper-cmd.el was switched to lexical-binding.  (Bug#23536)
11498 2016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
11500         Port autogen.sh to Git 2.4
11502         Problem reported by Michael Brand in:
11503         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00367.html
11504         * autogen.sh (git_config): Don't assume that git rev-parse
11505         groks --git-common-dir.
11507 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11509         Merge from origin/emacs-25
11511         6de0715 Properly reject malformed or empty package sigs
11512         edae7d9 Remove buggy non-native image scrolling
11514 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11516         Improve display of tex-verbatim and Info quoted
11518         Problem reported by Glenn Morris (Bug#19889).
11519         * doc/emacs/display.texi (Standard Faces):
11520         * doc/lispref/display.texi (Basic Faces):
11521         * etc/NEWS: Mention fixed-pitch-serif.
11522         * lisp/faces.el (face-font-family-alternatives):
11523         New family alias Monospace Serif.
11524         (fixed-pitch-serif): New face, which uses the new family.
11525         * lisp/info.el (Info-quoted):
11526         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
11527         * test/lisp/legacy/font-parse-tests.el (font-parse-tests--data):
11528         Add test case for Monospace Serif.
11530 2016-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
11532         * lisp/net/sieve-mode.el: Handle the text:... notation
11534         Get rid of redundant :group keywords.
11535         (sieve-mode-syntax-table): Move initialization into declaration.
11536         (sieve-syntax-propertize, sieve-syntax-propertize-text): New functions.
11537         (sieve-mode): Use them.
11539 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11541         Tweak check-declare-directory performance
11543         * lisp/emacs-lisp/check-declare.el (check-declare-directory):
11544         Use ‘find ... -exec ... +’ for speed.
11546 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11548         Sync from gnulib
11550         This incorporates a spelling fix, plus:
11551         2016-05-09 Fix undefined behaviour in gettext.h
11552         * lib/gettext.h, lib/mktime.c:
11553         Copy from gnulib.
11555 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11557         Merge from origin/emacs-25
11559         9c2a1a2 * doc/misc/texinfo.tex: Sync from gnulib.
11560         66cd4d8 * lisp/emacs-lisp/find-func.el (find-feature-regexp) (find-al...
11561         1a5a05c Do not mistake colon at the end of regexp for slash symbol
11562         4c5a00b Make package-install-from-buffer not move point
11563         9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion"
11564         f79c352 Redo the fix for bug#21839
11565         8d2f78c Don't treat JS spread as contination method call
11567 2016-05-12  Chris Feng  <chris.w.feng@gmail.com>
11569         Correct server/client address
11571         * src/process.c (Fmake_network_process): :local is for servers and :remote
11572         is for clients.
11574 2016-05-12  Ken Brown  <kbrown@cornell.edu>
11576         Autosave buffers on logout if HAVE_NTGUI
11578         * src/w32fns.c (w32_wnd_proc): Pass a WM_ENDSESSION message on to
11579         w32_read_socket.
11581         * src/w32term.c (w32_read_socket): Create an event of type
11582         END_SESSION_EVENT if a WM_ENDSESSION message is received.
11584         * src/termhooks.h [HAVE_NTGUI]: New event kind END_SESSION_EVENT.
11586         * src/keyboard.c [HAVE_NTGUI] (syms_of_keyboard): New symbol
11587         `end-session'.
11588         (kbd_buffer_get_event): Return an end-session event if an event of
11589         type END_SESSION_EVENT is read.
11590         (keys_of_keyboard): Bind the end-session event to kill-emacs in
11591         special-event-map.  (Bug#23483)
11593 2016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11595         * lisp/cedet/semantic/{db-el,symref}.el: Mark unused vars
11597         * lisp/cedet/semantic/db-el.el: Use _ to mark unused vars.
11598         (object-print): Use cl-call-next-method instead of call-next-method.
11599         * lisp/cedet/semantic/symref.el: Use _ to mark unused vars.
11601 2016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11603         * lisp/cedet/semantic: Silence some warnings
11605         * lisp/cedet/semantic/db-el.el (emacs-lisp-mode)
11606         (semanticdb-get-database-tables): Use make-instance to silence warnings.
11608         * lisp/cedet/semantic/symref.el: Require semantic/find since we use
11609         some macros from there.  Silence compilation warnings:
11610         Replace initargs with slot names in oref/oset.
11611         Move `SYMREF TOOLS' section earlier so definitions precede their use.
11613 2016-05-12  Lars Ingebrigtsen  <larsi@gnus.org>
11615         Support srcset in <img>
11617         * lisp/net/shr.el (shr--preferred-image): Allow <img> tags
11618         with srcset specifiers (bug#23459).
11620 2016-05-12  Michael Albinus  <michael.albinus@gmx.de>
11622         Do not autoload some functions of tramp.el
11624         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11625         Autoload a shortened version of this function, avoid recursive load.
11626         (tramp-completion-file-name-handler-alist)
11627         (tramp-completion-mode-p)
11628         (tramp-completion-handle-expand-file-name)
11629         (tramp-completion-handle-file-name-all-completions)
11630         (tramp-completion-handle-file-name-completion): Do not autoload.
11632 2016-05-12  Michael Albinus  <michael.albinus@gmx.de>
11634         Avoid recursive load of tramp.el
11636         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11637         Autoload a shortened version of this function, avoid recursive load.
11639 2016-05-11  Michael Albinus  <michael.albinus@gmx.de>
11641         Fix a problem of tramp-tests on hydra.
11643         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
11644         Nullify `tramp-default-method' due to hydra.
11646 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11648         Pacify byte-compiler in lisp/vc
11650         * lisp/vc/vc-bzr.el, lisp/vc/vc-cvs.el, lisp/vc/vc-hg.el:
11651         * lisp/vc/vc-rcs.el, lisp/vc/vc-src.el:
11652         Declare functions defined elsewhere, to forestall “might not
11653         be defined at runtime” warnings.
11655 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11657         Merge from origin/emacs-25
11659         d0d9f55 Allow newlines inside cl function arglists
11660         963541a Publicize cl--generic-all-functions
11661         3c581d5 ; Fix typo
11662         e58f900 Add some "safe-local-variable" declarations for compatibility...
11664 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11666         'text-quoting-style' now affects only ` and '
11668         Change 'text-quoting-style' so that it no longer affects
11669         formatting of curved quotes in format arguments to functions like
11670         'message'.  In particular, when this variable's value is 'grave',
11671         all quotes in formats are output as-is.
11672         * doc/lispref/help.texi (Keys in Documentation):
11673         * doc/lispref/strings.texi (Formatting Strings):
11674         * doc/lispref/tips.texi (Documentation Tips):
11675         * etc/NEWS:
11676         * src/doc.c (syms_of_doc): Document this.
11677         * lisp/help-fns.el (describe-function-1):
11678         * src/doc.c (text_quoting_style, Fsubstitute_command_keys)
11679         (syms_of_doc):
11680         * src/editfns.c (styled_format): Omit now-unnecessary code.
11681         * src/lisp.h (LEAVE_QUOTING_STYLE): Remove.
11683 2016-05-10  Alan Mackenzie  <acm@muc.de>
11685         Revert "Fix spurious fontification of "for (; a * b;)" in CC Mode."
11687         This reverts commit 89d1776b81ab552192ee41f13ce84ff86bda4556.  It is
11688         being reverted because it slowed down CC Mode's fontification too much
11689         (factor ~3).  It was the fix to bug #7918.
11691 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
11693         Move "Recent messages" earlier in report-emacs-bug
11695         * lisp/mail/emacsbug.el (report-emacs-bug): Move the "Recent
11696         messages" part earlier so that users can see it and remove it
11697         if they want.
11699 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11701         Pacify byte compiler in tramp.el
11703         * lisp/net/tramp.el (tramp-time-diff): Use `tramp-compat-funcall'.
11705 2016-05-09  Paul Eggert  <eggert@cs.ucla.edu>
11707         Merge from origin/emacs-25
11709         3b47898 Fix doc string in `insert'
11710         b479dea * doc/misc/emacs-mime.texi (time-date): Document now-builtins...
11711         cd27f73 Say 'All results processed' at the end
11712         4ffec91 Document automatic adjustment of process' logical window dime...
11713         dc66271 ; Fix typos and stylistic glitches in NEWS
11715 2016-05-09  Alan Mackenzie  <acm@muc.de>
11717         CC Mode now uses the new :after-hook feature of define-derived-mode
11719         It now runs internal variable setting functions after the mode hooks, no
11720         longer runs the mode hooks twice, and declares the configuration variables for
11721         noise macros and macros with semicolons as safe variables (when given suitable
11722         arguments).
11724         Fixes bug #16759 and bug #23476.
11726         * .dir-locals: Put the c-noise-macros-with-paren-names setting back into the C
11727         Mode value.
11729         * lisp/progmodes/cc-mode.el: (c-basic-common-init): Remove the call to
11730         c-make-macro-with-semi-re.
11731         (c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode): Move
11732         c-make-noise-macro-regexps and c-make-macro-with-semi-re (where appropriate)
11733         and c-update-modeline into the :after-hook form.  Remove the explicit settings
11734         of the syntax table, the abbreviation table and the local key map, since they
11735         duplicate forms generated by define-derived-mode.  Remove the explicit
11736         invocation of each mode's mode hook, since they duplicate ones generated by
11737         define-derived-mode.
11739         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
11740         functions.
11741         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
11742         save-local-variable property c-string-list-p.
11743         (c-macro-names-with-semicolon): give the save-local-variable property
11744         c-string-or-string-list-p.
11746         * doc/misc/cc-mode.texi: (Macros with ;, Noise Macros): Note that it's not
11747         necessary to call the regexp generating functions after setting the pertinent
11748         configuration values in a mode hook.
11750 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
11752         Fix the jit-lock-fontify-now test names
11754         * test/lisp/jit-lock-tests.el
11755         (jit-lock-fontify-now-mends-the-gaps)
11756         (jit-lock-fontify-now-does-not-refontify-unnecessarily):
11757         Fix the test names.
11759 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11761         Extend completion candidates in tramp.el
11763         * lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
11764         (tramp-get-completion-function): Use it.
11766 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11768         Revert e2f785991d0c696fbb2bc2f331f888d979b8da82 for tramp.el
11770         * lisp/net/tramp.el (tramp-time-diff): Revert previous change due to backwards
11771         compatibility.
11773 2016-05-08  Dmitry Gutov  <dgutov@yandex.ru>
11775         Emulate interactive mode
11777         * test/lisp/jit-lock-tests.el (jit-lock-tests--setup-buffer)
11778         (jit-lock-does-not-refontify-unnecessarily):
11779         Bind noninteractive to nil (bug#23278).
11781 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
11783         Simplify now that float-time etc. are built-in
11785         This was prompted by warnings about calls to now-obsolete functions.
11786         * lisp/calendar/time-date.el (encode-time-value):
11787         Use setq rather than a recursive call, to avoid a warning
11788         about calling this obsolete function.
11789         * lisp/calendar/time-date.el (encode-time-value)
11790         (with-decoded-time-value, time-to-seconds, time-to-number-of-days):
11791         * lisp/erc/erc.el (erc-emacs-time-to-erc-time):
11792         * lisp/net/rcirc.el (rcirc-float-time):
11793         * lisp/org/org-compat.el (org-float-time):
11794         Simplify now that time-add and float-time are now built-in.
11795         * lisp/calendar/time-date.el (time-add, time-subtract, time-less-p):
11796         * lisp/net/newst-backend.el (time-add):
11797         * lisp/org/org.el (time-subtract):
11798         Remove backward-compatibility definitions; they are now built-in.
11799         * lisp/calendar/timeclock.el (timeclock-time-to-seconds)
11800         (timeclock-seconds-to-time):
11801         * lisp/net/rcirc.el (rcirc-float-time):
11802         * lisp/org/org-compat.el (org-float-time):
11803         Now obsolete, since callers can just use float-time and
11804         seconds-to-time.  All uses changed.
11805         * lisp/emacs-lisp/ert.el (ert-results-pop-to-timings):
11806         * lisp/gnus/gnus-art.el (article-lapsed-string):
11807         * lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
11808         * lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
11809         * lisp/gnus/nndiary.el (nndiary-compute-reminders):
11810         * lisp/net/tramp.el (tramp-time-diff):
11811         * lisp/org/org-clock.el (org-clock-timestamps-change):
11812         Prefer the time-subtract builtin to the subtract-time alias.
11813         * lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
11814         * test/lisp/character-fold-tests.el (character-fold--speed-test):
11815         Prefer the float-time builtin to the time-to-seconds alias.
11816         * lisp/org/org-agenda.el, lisp/org/org-clock.el, lisp/org/org-list.el:
11817         * lisp/org/org-timer.el, lisp/org/org.el:
11818         Adjust to org-float-time deprecation.
11820 2016-05-08  Alan Mackenzie  <acm@muc.de>
11822         Add :after-hook facility to define-derived-mode.
11824         This allow a form to be evaluated _after_ a major mode's hooks have been run.
11825         It is needed to solve some problems in CC Mode, including bug #16759 and
11826         bug #23476.
11828         * lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
11829         `:after-hook', and generate the requisite code for it.
11830         (derived-mode-make-docstring): Take account of the possibility of :after-hook.
11832         * lisp/subr.el (delayed-after-hook-forms): New variable.
11833         (run-mode-hooks): As the last thing evaluate the forms in
11834         delayed-after-hook-forms.
11836         * doc/lispref/modes.texi (Derived Modes): Document :after-hook.
11837         (Mode Hooks): Document the new feature in run-mode-hooks.
11839         * etc/NEWS: Note the new feature.
11841 2016-05-08  Michael Albinus  <michael.albinus@gmx.de>
11843         Fix recursive load of tramp.elc
11845         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11846         Check also for `tramp-completion-mode-p'.
11847         (tramp-completion-mode, tramp-completion-mode-p): Autoload them.
11849 2016-05-07  Paul Eggert  <eggert@cs.ucla.edu>
11851         Prefer grep -E/-F to egrep/fgrep
11853         POSIX marked egrep and fgrep as legacy apps in SUSv2 (1997) and
11854         withdrew them in SUSv3 (2001), and these days grep -E and grep -F
11855         are probably more portable.
11856         * lib-src/etags.c (main):
11857         * lisp/eshell/em-unix.el (eshell-grep, eshell/egrep)
11858         (eshell/fgrep):
11859         * lisp/cedet/semantic/symref.el (semantic-symref-find-text):
11860         * lisp/eshell/esh-var.el (eshell-apply-indices):
11861         * lisp/progmodes/ada-xref.el (ada-xref-search-with-egrep)
11862         (ada-find-in-src-path):
11863         * lisp/textmodes/ispell.el (ispell-grep-command):
11864         (ispell-lookup-words):
11865         Use or document grep -E and grep -F instead of egrep and fgrep.
11866         * lisp/textmodes/ispell.el (ispell-grep-options):
11867         Use -Ei on all platforms, not just MS-Windows.
11869 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
11871         Avoid unnecessary work if a chunk is empty
11873         * lisp/jit-lock.el (jit-lock-fontify-now): Avoid unnecessary work
11874         if a chunk is empty (bug#23278).
11876 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
11878         * test/lisp/jit-lock-tests.el: New file.
11880 2016-05-07  Michael Albinus  <michael.albinus@gmx.de>
11882         Continue to fix Bug#10085
11884         * lisp/net/tramp.el (tramp-completion-file-name-handler-alist)
11885         <expand-file-name>: Add handler.
11886         (tramp-completion-handle-expand-file-name): New defun.
11887         (tramp-handle-file-name-as-directory): Handle completion mode case.
11889         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
11890         Fix test.
11891         (tramp-test24-file-name-completion): Extend test.
11893 2016-05-07  Alan Mackenzie  <acm@muc.de>
11895         Revert change 8e4595a... due to annoyance it causes the development team.
11897         Change 8e4595a438fe85dd109756886cdeaeea2e665afb from 2016-04-30 17:28:24
11898         +0000 was an enhancement to .dir-locals to allow correct fontification
11899         of certain macro constructs.
11901         * .dir-locals.el: Remove the two forms for C Mode dealing with noise macros.
11903 2016-05-07  Alan Mackenzie  <acm@muc.de>
11905         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): Give it a version number.
11907 2016-05-07  Simen Heggestøyl  <simenheg@gmail.com>
11909         Add tests for CSS mode completion
11911         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values)
11912         (css-test-property-values-no-duplicates)
11913         (css-test-value-class-lookup): Use `seq-sort'.
11914         (css-mode-tests--completions): New helper function for retrieving CSS
11915         completions.
11916         (css-test-complete-bang-rule, scss-test-complete-bang-rule)
11917         (css-test-complete-property-value, css-test-complete-pseudo-class)
11918         (css-test-complete-pseudo-element, css-test-complete-at-rule)
11919         (scss-test-complete-at-rule, css-test-complete-property)
11920         (css-test-complete-selector, css-test-complete-nested-selector)
11921         (scss-test-complete-nested-selector): New tests.
11923 2016-05-06  Alan Mackenzie  <acm@muc.de>
11925         Add an option in Edebug to prevent pauses after `h', 'f', and `o'.
11927         Requested by Paul Pogonyshev.  Also add in documentation for Edebug config
11928         variables which was missing.
11930         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): New customizable option.
11931         (edebug--display-1): Test edebug-sit-on-break before pausing 1 second.
11933         * doc/lispref/edebug.texi (Jumping): Document the effect of the new option.
11934         (Edebug Options): Document the new option.  Also add documentation for
11935         edebug-eval-macro-args, edebug-print-length, edebug-print-level,
11936         edebug-print-circle, edebug-sit-for-seconds.
11938         * etc/NEWS: Note the new feature.
11940 2016-05-07  Jorgen Schaefer  <contact@jorgenschaefer.de>
11942         scheme.el: Turn literal tabs into \t
11944         * lisp/progmodes/scheme.el: The last change to turn tabs into spaces
11945         also caught some literal tabs in character classes. Fix this by
11946         adding \t to those classes.
11948 2016-05-07  Tino Calancha  <f92capac@gmail.com>
11950         Make 'backtab' work in table-mode on text terminals
11952         * lisp/textmodes/table.el (table-cell-bindings): Bind 'backtab'
11953         explicitly.  (Bug#23456)
11955 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
11957         Try to speed-up display of many all-blank lines
11959         * src/bidi.c (bidi_initialize): Use anchored regexps for
11960         paragraph start and paragraph separator sequences.  (Bug#23457)
11962 2016-05-06  Alan Mackenzie  <acm@muc.de>
11964         Correct hack-local-variables change from Thu May 5 11:05:49 2016 +0000
11966         Prevent hack-local-variables being called from the fundamental-mode mode call
11967         early in normal-mode.  This fixes bug #23460 and bug #23463.
11969         * lisp/files.el (normal-mode) Replace call to fundamental-mode with calls to
11970         the things it calls, with the exception of hack-local-variables.
11972         * etc/NEWS: Add an entry to note the calling of hack-local-variables at each
11973         major mode initialization.
11975 2016-05-06  Paul Eggert  <eggert@cs.ucla.edu>
11977         Port xref-tests to master branch
11979         Also, add a test to make this problem less likely in the future.
11980         * test/Makefile.in (check-no-automated-subdir): New rule.
11981         (check, check-expensive, check-maybe): Depend on it.
11982         * test/automated/data/xref/file1.txt: Rename to ...
11983         * test/data/xref/file1.txt: ... here.
11984         * test/automated/data/xref/file2.txt: Rename to ...
11985         * test/data/xref/file2.txt: ... here.
11986         * test/automated/xref-tests.el: Rename to ...
11987         * test/lisp/progmodes/xref-tests.el: ... here.
11988         (xref-tests-data-dir): Use EMACS_TEST_DIRECTORY.
11990 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
11992         Merge from origin/emacs-25
11994         50650cb Doc fixes for fclist and grep
11995         5e814e0 Minor doc fixes for quoting
11996         3347a73 `nreverse' the marker pairs list
11997         1a4127d Use save-excursion in xref-location-marker more
11998         ab3ba91 shell-quote-argument DIR when appropriate
11999         922c7a3 Rework xref-query-replace-in-results
12000         3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
12001         0932b94 Fix todo-mode bug involving archived items (bug#23447)
12002         e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
12003         adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
12004         4d8fd9c Handle "empty line" regexp in xref searches
12005         f559b37 Add tests for xref-collect-matches
12006         6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
12007         6f82d8e Clear buffer-undo-list when showing xrefs
12008         c68a091 Note the quote translation in `message' in section "incompati...
12009         52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
12010         93703c5 (Common Keywords): Correct what missing :group means
12011         79e5800 Improve documentation of Dired's 'A' and 'Q' commands
12012         2ea2a2f Doc fixes for quoting
12013         8544b98 posnp doc clarification
12014         805204f Mention what a missing :group does
12015         ec554d7 Fix documentation of dired-aux search/replace commands
12017 2016-05-05  Simen Heggestøyl  <simenheg@gmail.com>
12019         Support completion of HTML tags in CSS selectors
12021         * lisp/textmodes/css-mode.el (css--html-tags): New variable holding a
12022         list of HTML tags for completion.
12023         (css--nested-selectors-allowed): New variable for determining whether
12024         nested selectors are allowed in the current mode.
12025         (css--complete-selector): New function for completing part of a CSS
12026         selector.
12027         (css-completion-at-point): Support completion of selectors.
12028         (scss-mode): Allow nested selectors.
12030 2016-05-05  Lars Ingebrigtsen  <larsi@gnus.org>
12032         Make `R' in eww work more reliably
12034         * lisp/net/eww.el (eww-score-readability): Protect against
12035         null children.
12037 2016-05-05  Alan Mackenzie  <acm@muc.de>
12039         Call hack-local-variables from major modes rather than from file visiting
12041         This prevents file/directory local variables from being lost when the major
12042         mode is set or changed.
12044         This fixes bug #15577 and bug #23407.
12046         * lisp/files.el (normal-mode): Call `hack-local-variables' when the major mode
12047         function hasn't already done so.
12048         (hack-local-variables): Rename parameter `mode-only' to `handle-mode', make
12049         its previous non-nil setting be t, and introduce the following action for a
12050         non-nil non-t value: apply all settings apart from `mode'.
12052         * lisp/subr.el (run-mode-hooks): call `hack-local-variables' for buffers
12053         which are visiting files.
12055         * doc/emacs/custom.texi (File Variables): Note that setting a major mode also
12056         sets file variables.
12057         (Directory Variables): Note that `mode', `eval', and `unibyte' can be set as
12058         dir local variables, but `coding' can't.
12060         * doc/lispref/modes.texi (Major Mode Conventions): Say that `run-mode-hooks'
12061         also calls `hack-local-variables'.
12062         (Auto Major Mode): Say that `find-file' no longer runs `hack-local-variables',
12063         as from 25.2.  Remove vagueness from `normal-mode' and `set-auto-mode' by
12064         saying that the mode IS SET, not merely "selected" or "chosen".
12065         (Mode Hooks): Document change to `run-mode-hooks'.
12067         * doc/lispref/variables.texi (File Local Variables): Document change to
12068         `hack-local-variables'.
12070 2016-05-05  Michael Albinus  <michael.albinus@gmx.de>
12072         tramp-sh.el: Work around a stat bug
12074         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
12075         stat versions which produce shell quoted output.  See also
12076         coreutils Bug#23422.
12078 2016-05-04  Noam Postavsky  <npostavs@gmail.com>
12080         Fix autogen.sh for separate worktrees
12082         * autogen.sh: Use the $hooks variable in the $sample_hooks loop, instead
12083         of assuming .git/hooks is a directory.
12085 2016-05-04  Alan Mackenzie  <acm@muc.de>
12087         Allow `text-quoting-style' to be `leave', i.e. no translation of quotes.
12089         * lisp/help-fns.el (describe-function-1): Don't set coding system to UTF-8
12090         when text-quoting-style is `leave'.
12092         * src/lisp.h (enum text_quoting_style): Add identifier LEAVE_QUOTING_STYLE.
12094         * src/doc.c (syms_of_doc): New symbol "leave".  Amend doc string of
12095         `text_quoting_style'.
12096         (text_quoting_style): Handle `leave' by returning LEAVE_QUOTING_STYLE.
12097         (Fsubstitute_command_keys): Don't translate quotes when quoting_style is
12098         LEAVE_QUOTING_STYLE.
12100         * src/editfns.c (styled_format): Set quoting_style to -1 when
12101         text-quoting-style is `leave'.
12103 2016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12105         * lisp/emulation/viper(-cmd)?.el: Use lexical-binding.
12107         * lisp/emulation/viper-cmd.el: Use lexical-binding.
12108         (viper-change-state-to-vi, viper-change-state-to-emacs): Allow dummy
12109         args, for use in advice-add.
12110         (viper--init-message): Rename from init-message.
12111         (viper-minibuffer-standard-hook): Adjust accordingly.
12112         (viper-undo): Remove unused var `modified'.
12113         (viper-read-string-with-history, viper-set-searchstyle-toggling-macros):
12114         Don't use dynamic vars as args.
12115         (viper-submit-report): Clarify use of dynamic vars.
12117         * lisp/emulation/viper.el: Use lexical-binding and nadvice.
12118         Remove redundant :group keywords.  Group the (if viper-mode) at top-level.
12119         Use add-function rather than a `(lambda ...).
12120         (viper--advice-list): New var.
12121         (viper--advice-add, viper--deactivate-advice-list): New funs.
12122         (viper-go-away, viper-set-hooks, viper-non-hook-settings): Use them.
12123         (viper-non-hook-settings): Don't hook into find-file any more.
12125 2016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12127         * lisp/vc/ediff-util.el: Use lexical-binding.
12129         * lisp/progmodes/js.el (js-syntax-propertize): Recognize shebang line.
12131 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12133         Add an animation sanity check
12135         * lisp/image.el (image-multi-frame-p): Give up on animations
12136         if it seems like they are too slow (bug#23431).
12138 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12140         abbrev-tests.el fix
12142         * test/lisp/abbrev-tests.el (abbrev-table-p-test): Don't check
12143         internal implementation detail.
12145 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12147         (shr-rescale-image): Clarify logic slightly
12149         * lisp/net/shr.el (shr-rescale-image): Clarify logic slightly.
12151 2016-05-02  Martin Rudalics  <rudalics@gmx.at>
12153         Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2
12155         * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
12156         to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
12157         Monnier.  (Bug#19185, Bug#20398)
12159 2016-05-02  Lee Bochicchio  <lboc.home@gmail.com>
12161         Add more abbrev tests
12163         * test/lisp/abbrev-tests.el
12164         (clear-abbrev-table-test): Use `abbrev-expansion'
12165         (abbrev-table-empty-p-test, list-abbrevs-test)
12166         (prepare-abbrev-list-buffer-test, insert-abbrevs-test)
12167         (edit-abbrevs-test, define-abbrevs-test)
12168         (read-write-abbrev-file-test)
12169         (abbrev-edit-save-to-file-test): New tests (bug#23139).
12171 2016-05-02  Philipp Stephani  <p.stephani2@gmail.com>  (tiny change)
12173         Allow eval-ing named character literals
12175         * lisp/progmodes/elisp-mode.el (elisp--preceding-sexp): Skip over
12176         named character literals.
12177         * test/lisp/progmodes/elisp-mode-tests.el
12178         (elisp--preceding-sexp--char-name): Add test for skipping over
12179         named character literals (bug#23354).
12181 2016-05-02  Aaron Conole  <aconole@redhat.com>
12183         Call va_end in boot_error
12185         * src/gnutls.c (boot_error): A recent change added a function
12186         to signal an error or return an error code. That function uses
12187         a variadic argument list to populate an error message
12188         string. However, it missed calling va_end after using the
12189         variadic argument list.
12191           Copyright-paperwork-exempt: yes
12193 2016-05-02  Aaron Conole  <aconole@bytheb.org>
12195         Fix the call to set_network_coding_system
12197         * src/process.c (Fmake_network_process): A recent commit
12198         modified the set_network_socket_coding_system function to take
12199         arguments host, service, and name. However, those arguments
12200         appear to be swapped.
12202           Copyright-paperwork-exempt: yes
12204 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
12206         Revert "alas, a map can have only one parent"
12208         This reverts commit d05806fda1cbba2db112bc783597fbe9d27175b2.
12210         This had already been fixed by using `make-composed-map'.  And
12211         we don't want image-map to inherit from special-mode-map, anyway.
12213 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
12215         Merge from origin/emacs-25
12217         bf21c84 Fix quoting problem in cc-engine debug message
12218         8f36614 Add electric-quote-string unit test
12219         6280531 Don’t electrically quote ‘'’ in Python
12220         fd7b430 `nreverse' Grep hits before passing them to xref--convert-hits
12222 2016-05-02  Sam Steingold  <sds@gnu.org>
12224         alas, a map can have only one parent
12226         * lisp/image-mode.el (image-model-map): Cannot have two parents.
12227         * lisp/image.el (image-map): Inherit from `special-mode-map'.
12229 2016-05-02  Michael Albinus  <michael.albinus@gmx.de>
12231         Fix Bug#10085
12233         * lisp/net/tramp.el (tramp-find-foreign-file-name-handler):
12234         Add optional arguments OPERATION and COMPETION.  Handle
12235         `file-name-as-directory', `file-name-directory' and
12236         `file-name-nondirectory' also in completion mode.
12237         (tramp-file-name-handler): Use it.  (Bug#10085)
12239         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
12240         Extend test.
12242 2016-05-01  Martin Rudalics  <rudalics@gmx.at>
12244         * src/minibuf.c (read_minibuf): Use CONSP instead of Fconsp.
12246 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12248         Tweak .gitignore
12250         * .gitignore: Remove leim/changed.misc, leim/changed.tit,
12251         as these files are no longer created.  Add gmon.out, for
12252         -pg profiling.  Sort.
12254 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12256         Sync from gnulib
12258         This incorporates:
12259         2016-05-01 mktime: port to stricter signed overflow checking
12260         2016-05-01 mktime: speed up DEBUG_MKTIME benchmarks
12261         2016-05-01 mktime: resurrect DEBUG_MKTIME testing
12262         2016-05-01 mktime: simplify DEBUG_MKTIME
12263         2016-05-01 Port mktime_internal offset to unsigned time_t
12264         2016-04-27 xstrtol: prohibit monstrosities like "1bB"
12265         2016-04-13 mktime: improve integer overflow checking
12266         2016-04-13 intprops: check two's complement assumption
12267         2016-04-13 intprops, mktime, strtol: assume two's complement
12268         * lib/intprops.h, lib/mktime-internal.h, lib/mktime.c:
12269         * lib/strtol.c, lib/timegm.c, m4/mktime.m4, m4/std-gnu11.m4:
12270         Copy from gnulib.
12272 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12274         Merge from origin/emacs-25
12276         c695fb3 ; Spelling fixes
12277         03750c0 * doc/misc/texinfo.tex: Sync from gnulib.
12278         42fed3b * lisp/isearch.el (isearch-forward-symbol-at-point): Add isea...
12280 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12282         Merge from origin/emacs-25
12284         d8affa3 Use ‘T *restrict’ proto, not ‘T[restrict]’
12285         d38d2a8 Fix documentation of 'url-retrieve-synchronously'
12286         586b213 * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bu...
12288         # Conflicts:
12289         #       doc/misc/url.texi
12290         #       lisp/url/url.el
12292 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12294         Merge from origin/emacs-25
12296         16e5e8e Fix last change to isearch-update (bug#23406)
12297         b755d98 Autoload cursor-sensor-inhibit (bug#23406)
12298         b52ebd4 org-map-entries: Fix org-agenda-prepare-buffers call
12299         86aa409 Followup for last commit in the user manual
12300         7004459 Improve doc string of 'set-goal-column'
12301         ccdaf04 Fix the MSDOS build
12302         ffe701c Remove \= from format string (bug#18190)
12303         1c58fa1 Fix variable-pitch font on MS-Windows
12304         c6077bf Restore follow-scroll-up/down to scrolling by the combined si...
12305         b671e21 Revert unneeded change which harms syntactic parsing.  This f...
12306         48b24c9 Correct indentation of ids in a C++ enum after a protection k...
12307         5c3534f * lisp/window.el (window--process-window-list): No-op if no p...
12308         734fb3a Port dumping to NetBSD with PaX
12309         0255a70 Don't mistake `for' inside a function for a part of array com...
12311         # Conflicts:
12312         #       src/Makefile.in
12314 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12316         Merge from origin/emacs-25
12318         71fb0e0 Improve last change to vc-git-mode-line-string
12319         6858e77 Todo mode doc bug fix
12320         e55d0db Fix revision calculation in vc-git-mode-line-string
12321         ca87b34 ; Fix errant revert ccb75d7
12322         40bfebe Add Python 3.5 keyword "await"
12323         fa7886a Add new keywords of Python 3.5
12324         ccb75d7 Partially revert previous change.
12325         8ee168a ; * etc/NEWS: Update entry about color fonts on OS X with a w...
12326         b09ca27 Say why text-quoting-style is not a user option
12328 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12330         Merge from origin/emacs-25
12332         5a952eb Don't mention ~/.emacs.bmk literally in doc strings
12333         c338cf3 * etc/NEWS: Explain why multicolor font display is disabled o...
12334         c30d1b4 Port to Ubuntu 16.04 --enable-gcc-warnings
12336 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12338         Mention the `find-library-name' changes
12340 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12342         Fix text in menu in minor-mode-menu-from-indicator
12344         * lisp/mouse.el (minor-mode-menu-from-indicator): Don't
12345         capitalize "Off" in "Turn Off" (bug#11028).
12347 2016-05-01  David Engster  <deng@randomsample.de>
12349         gitmerge: Add cherry pick to gitmerge-skip-regexp
12351         * gitmerge.el (gitmerge-skip-regexp): Add "cherry picked from commit",
12352           which is the string appended by 'git cherry-pick -x'.
12354 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12356         Allow `global-set-key' to bind keys under the `M-o' map
12358         * lisp/subr.el (global-set-key): Allow binding keys under the
12359         `M-o' map (bug#9730).
12361 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12363         Add `size-indication-mode' to the menu on `mouse-1' "Top"
12365         * lisp/bindings.el (mode-line-column-line-number-mode-map):
12366         Add `size-indication-mode' to the menu (bug#5727).
12368 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12370         Allow finding libraries loaded manually outside the load-path
12372         * lisp/emacs-lisp/find-func.el (find-library--from-load-path):
12373         New function to find a library from a load path (bug#5661).
12374         (find-library-name): Use it.
12376         There are so many combinations of inputs and possibly entries in
12377         `load-history' that the code looks like an entry in a code obfuscation
12378         contest.  If anybody has a better implementation, please substitute.
12380         But remember that the input given may be foo, foo.el, foo.elc, and the
12381         entries in load-history may be foo.el, foo.elc and foo.el.gz, and we
12382         want to return only foo.el and foo.el.gz.  *phew*
12384 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12386         Allow minibuffer prompts to use faces
12388         * doc/lispref/minibuf.texi (Text from Minibuffer): Document
12389         `minibuffer-prompt-properties' and explain how faces work in
12390         the minibuffer prompt.
12392         * src/minibuf.c (read_minibuf): If `face' is in
12393         `minibuffer-prompt-properties', apply it to the end of the
12394         face list to allow users to have their own faces on the
12395         prompts (bug#16136).
12397 2016-05-01  Peter Feigl  <peter.feigl@nexoid.at>  (tiny change)
12399         Add R7RS syntax forms to scheme.el
12401         * lisp/progmodes/scheme.el (scheme-font-lock-keywords-2): Add
12402         a number of special forms introduced in R7RS-small.
12403         * lisp/progmodes/scheme.el (scheme-indent-function): Same.
12405 2016-05-01  Alan Third  <alan@idiocy.org>
12407         Implement horizontal scroll bars on NS
12409         * lisp/scroll-bar.el (horizontal-scroll-bars-available-p): Remove NS
12410         check.
12411         * lisp/term/ns-win.el: Remove custom NS scroll-bar handlers and bind
12412         scroll-bar mouse clicks to standard handlers.
12413         * src/nsterm.h (EmacsScroller): Add 'horizontal' property and rename
12414         pixel_height to pixel_length.
12415         * src/nsterm.m (x_set_window_size): Remove left-hand scroll-bar code. It
12416         caused scroll-bars to be over-drawn and the best working solution
12417         appears to be complete removal.
12418         (ns_set_horizontal_scroll_bar): Rewrite to handle horizontal scrollers
12419         correctly.
12420         (ns_set_vertical_scroll_bar): Set width to actual scroller width.
12421         (setFrame): Handle horizontal case.
12422         (dealloc): Handle horizontal case.
12423         (judge): Handle horizontal case.
12424         (setPosition): Rename pixel_height to pixel_length.
12425         (sendScrollEventAtLoc): Handle horizontal case.
12426         (mouseDown): Handle horizontal case and general tidy up of code.
12427         (mouseDragged): Handle horizontal case. Call sendScrollEventAtLoc with
12428         absolute pixel size instead of ratio.
12429         * src/window.h: Remove NS check.
12431 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
12433         tramp.texi: Revert last change due to backward compatibility
12435 2016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12437         Fix the buffer-count patch (Bug#23394)
12439         * src/buffer.c (Fgenerate_new_buffer_name): Increment count just
12440         once each time through the loop.  Reported by Lars Ingebrigtsen in:
12441         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00918.html
12443 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12445         cua-prefix-override-inhibit-delay doc fix
12447         * lisp/emulation/cua-base.el
12448         (cua-prefix-override-inhibit-delay): Typo fix in doc string
12449         (bug#23401).
12451 2016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12453         Fix generate-new-buffer-name increment typo
12455         Problem reported by Chaitanya Koparkar (Bug#23394).
12456         * src/buffer.c (Fgenerate_new_buffer_name): Increment count when
12457         generating a new buffer.  This fixes a typo I introduced in
12458         2014-04-05T00:04:58Z!eggert@cs.ucla.edu.
12460 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12462         global-eldoc-mode doc fix
12464         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
12465         specific about what "applicable" means (bug#23071).
12467 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12469         Make the legend in describe-categories a link
12471         * lisp/help-fns.el (describe-categories): Make the "see
12472         bottom" text a link (bug#22227).
12474 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12476         normal-top-level-add-subdirs-to-load-path doc fix
12478         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
12479         Doc fix (bug#21962).
12481 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12483         isearch-search-fun-function doc tweak
12485         * lisp/isearch.el (isearch-search-fun-function): Mention what
12486         the STRING parameter is (bug#21552).
12488 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12490         Fill some imenu--index-alist doc lines
12492         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
12494 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12496         Make describe-variable look up the variable in the current buffer
12498         * lisp/help-fns.el (describe-variable): Get the variable
12499         definition in the buffer we were called from (in case it only
12500         exists there) (bug#21252).
12502 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12504         Fmarker_position doc string clarification
12506         * src/marker.c (Fmarker_position): Clarify the doc string
12507         (bug#21231).
12509 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12511         Further define-obsolete-* doc fixups
12513         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
12514         Fix up last change.
12515         (define-obsolete-variable-alias): Ditto.
12517 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12519         Describe WHEN in all the define-obsolete- macros
12521         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
12522         Say more verbosely what WHEN is (bug#21225).
12523         (define-obsolete-function-alias): Describe the WHEN parameter.
12524         (define-obsolete-variable-alias): Ditto.
12526 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12528         Mention with-silent-modifications in the lispref manual
12530         * doc/lispref/text.texi (Changing Properties): Document
12531         with-silent-modifications (bug#21171).
12533 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12535         with-silent-modifications doc clarification
12537         * lisp/subr.el (with-silent-modifications): Rearrange the doc
12538         string a bit so that the most pertinent information is at the
12539         top (bug#21171).
12541 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12543         clear-visited-file-modtime doc string fix
12545         * lisp/files.el (clear-visited-file-modtime): Fix possibly
12546         confusing doc string wording (bug#21169).
12548 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12550         Document mode mode line variables
12552         * doc/lispref/modes.texi (Mode Line Variables): Document
12553         `mode-line-front-space, `mode-line-misc-info',
12554         `mode-line-end-spaces' (bug#21014).
12556 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12558         Add a cross ref to Optional Mode Line
12560         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
12561         reference to the Emacs mode line node that explains things
12562         like `display-time-string' (bug#21002).
12564 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12566         Add a doc string to display-time-string
12568         * lisp/time.el: Add a doc string to `display-time-string',
12569         because it's referred to in the manual, and is too mysterious
12570         otherwise (bug#21002).
12572 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12574         custom-buffer-style doc fix
12576         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
12577         value (bug#20724).
12579 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12581         Document how to check for ImageMagick support
12583         * doc/lispref/display.texi (ImageMagick Images): Say how to
12584         check for ImageMagick support, which isn't quite obvious
12585         (bug#20702).
12587 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12589         Minor doc fix for ImageMagick/SVG builds
12591         * doc/lispref/display.texi (SVG Images): Don't imply that you
12592         have to build Emacs yourself (bug#20702).
12593         (ImageMagick Images): Ditto.
12595 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12597         Rearrange the doc of query-replace slightly
12599         * lisp/replace.el (query-replace): Move the mention of the
12600         interactive prefix arg earlier so that users can find it
12601         (bug#20654).
12603 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12605         apropos-print doc fix
12607         * lisp/apropos.el (apropos-print): Document the undocumented
12608         parameters (bug#20520).
12610 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12612         completion-table-with-predicate doc string fix
12614         * lisp/minibuffer.el (completion-table-with-predicate): t ->
12615         non-nil in the doc string (bug#20460).
12617 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12619         Fill the completion-table-with-predicate doc string
12621         * lisp/minibuffer.el (completion-table-with-predicate): Fill
12622         the doc string (bug#20460).
12624 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12626         replace-match-maybe-edit doc clarification
12628         * lisp/replace.el (replace-match-maybe-edit): Say what
12629         MATCH-DATA is (bug#20304).
12631 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12633         add-timeout doc fix
12635         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
12636         value (bug#20181).
12638 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12640         Extremely minor doc fix in Choosing Window
12642         * doc/lispref/windows.texi (Choosing Window): There's only one
12643         action alist, I think (bug#20158).
12645 2016-04-30  Alan Mackenzie  <acm@muc.de>
12647         * .dir-locals:  Amend for correct fontification of *.[ch] containing "IF_LINT"
12649 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12651         Transform mentions of `eval-after-load' to `with-eval-after-load'
12653         * doc/lispref/loading.texi (Hooks for Loading): Update text to
12654         not mention `eval-after-load' (bug#20038).
12656 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12658         cursor-type doc fix
12660         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
12661         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
12663 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12665         Add a link from Tool Bar to Images
12667         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
12668         Images node (bug#19722).
12670 2016-04-30  Alan Mackenzie  <acm@muc.de>
12672         CC Mode: Recognize a noise macro with parens after a declarator's identifier
12674         * lisp/progmodes/cc-engine (c-forward-decl-or-cast-1): In the while loop
12675         following comment "Skip over type decl suffix operators." insert code also
12676         to check for noise macros with parentheses.
12678 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12680         (default-mode-line-format): More explicit obsolete info
12682         * lisp/subr.el (default-mode-line-format): Be more explicit in
12683         how default values are now handled (bug#19424).
12685 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12687         Fcompare_buffer_substrings doc string clarification
12689         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
12690         doc string clarification (bug#19255).
12692 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12694         insert-file-contents-literally doc fix
12696         * lisp/files.el (insert-file-contents-literally): Say that the
12697         parameters are explained in the other function (bug#18317).
12699 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12701         Fix custom types for cursor-in-non-selected-windows
12703         * lisp/cus-start.el (standard): Use the same custom types for
12704         cursor-in-non-selected-windows as for cursor-type (bug#19214).
12706 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12708         Doc clarification to mwheel-scroll
12710         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
12711         does not apply to Windows (bug#19209).
12713 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12715         Clarify the doc of eval-expression-print-format
12717         * lisp/simple.el (eval-expression-print-format): Doc
12718         clarification (bug#19114).
12720 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12722         (extended-command-suggest-shorter): Add a version string
12724         * lisp/simple.el (extended-command-suggest-shorter): Add a
12725         version string.
12727 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12729         Document extended-command-suggest-shorter
12731         * doc/emacs/m-x.texi (M-x): Mention
12732         extended-command-suggest-shorter (bug#19152).
12734 2016-04-30  Ivan Shmakov  <ivan@siamics.net>
12736         Add a variable to control "shorter command" suggestions
12738         * lisp/simple.el (extended-command-suggest-shorter): New variable (bug#19152).
12739         (execute-extended-command): Use it.
12741 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12743         Explictly explain that package-initialize loads the packages
12745         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
12746         in saying that `package-initialize' obviates adjusting the
12747         path or requiring the packages, as this is a question that
12748         apparently comes up now and then (bug#18829).
12750 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12752         Have the doc strings of `load-path' and `require' mention each other
12754         * src/fns.c (Frequire): Mention `load-path' and fill the doc
12755         string (bug#18829).
12757         * src/lread.c (syms_of_lread): Mention that `require' uses
12758         `load-path'.
12760 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12762         Doc fix for insert-pair-alist
12764         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
12765         COMMAND-CHAR is (bug#18809).
12767 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12769         Move doc of backup-directory-alist to the Backup node
12771         * doc/emacs/files.texi (Backup): Move the documentation of
12772         `backup-directory-alist' here from the "Single or Numbered
12773         Backups" node, because it doesn't seem to have much to do with
12774         numbering (bug#18692).
12776 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12778         Tiny doc clarification for create-fontset-from-fontset-spec
12780         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
12781         Clarify what the optional part is (bug#18686).
12783 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12785         Fill the doc string of font-lock-keywords
12787         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
12788         reorganise some explanations (bug#21427).
12790 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12792         Doc fix for font-lock-remove-keywords
12794         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
12795         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
12797 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12799         Clarify whitespace-style doc string
12801         * lisp/whitespace.el (whitespace-style): Doc clarification
12802         (bug#18296).
12804 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12806         No need to test for jka-compr
12808         * lisp/vc/ediff-util.el (ediff-file-compressed-p): jka-compr
12809         is always available; no need to test (bug#18204).
12811 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12813         Doc fixed for next-error-buffer-p
12815         * lisp/simple.el (next-error-buffer-p): Clarify doc string
12816         (bug#18202).
12818 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12820         Tiny doc fix
12822         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
12823         (and fill) (bug#18201).
12825 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12827         Doc fix
12829         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
12830         slightly (bug#18092).
12832 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12834         delsel doc touch ups
12836         * lisp/delsel.el (delete-selection-helper): Use non-nil
12837         instead of t and clarify function return values (bug#18089).
12839 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12841         Doc fixes for menu-bar.el
12843         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
12844         REGION parameter (bug#18028).
12845         (clipboard-kill-region): Ditto.
12847 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12849         Doc fix
12851         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
12853 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12855         Minor doc clarification
12857         * lisp/subr.el (y-or-n-p): Document the return value from "n"
12858         (bug#18024).
12860 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12862         Fill font-lock-mode doc string
12864         * lisp/font-core.el (font-lock-mode): Fill the text to make it
12865         narrower (bug#18008).
12867 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12869         Wrap the auto-generated doc string
12871         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
12872         string to make it less likely that we get overlong lines
12873         (bug#17999).
12875 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12877         Clarify hi-lock-find-patterns
12879         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
12880         (bug#17989).
12882 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12884         Warning fix in jit-lock-mode
12886         * lisp/jit-lock.el (jit-lock-mode): Don't issue a warning when
12887         turning the mode on in an indirect buffer, if this somehow has
12888         happened (bug#17738).
12890 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12892         Add a doc string to `winner-mode'
12894         * lisp/winner.el (winner-mode): Add a doc string based on the
12895         comments in the file (bug#17716).
12897 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12899         Doc fix for align-newline-and-indent
12901         * lisp/align.el (align-newline-and-indent): Mention that
12902         alignment is done by `align' (bug#17707).
12904 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12906         Cancel the eldoc timer when switching off eldoc mode
12908         * lisp/emacs-lisp/eldoc.el (eldoc-mode): Cancel the eldoc
12909         timer when switching off eldoc mode.  It will be restarted
12910         again if needed (bug#17582).
12912 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12914         Doc fix for `kbd'
12916         * lisp/subr.el (kbd): Describe more fully the format of the
12917         parameter (bug#17039).
12919 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12921         Add a sanity check to apropos-documentation-internal
12923         * lisp/apropos.el (apropos-documentation-internal): Add a
12924         sanity check to be less fragile in the presence of invalid
12925         data (bug#16725).
12927 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12929         Doc tweak
12931         * lisp/simple.el (use-empty-active-region): Doc tweak.
12932         There's only one region (bug#16513).
12934 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12936         Clarify `read-face-name' doc and tweak the code
12938         * lisp/faces.el (read-face-name): Clarify the documentation
12939         and allow a mix of faces and faces names in all cases
12940         (bug#16483).
12942 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12944         Remove ": ?" from the read-face-name prompt
12946         * lisp/faces.el (read-face-name): Remove ": ?" from the prompt
12947         to be more backwards compatible (bug#15909).
12949 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12951         Link from (emacs)Exiting to (lisp)Killing Emacs
12953         * doc/emacs/entering.texi (Exiting): Link to the lispref
12954         manual for further customisations (bug#15445).
12956 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12958         find-lisp doc touchups
12960         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
12961         string (bug#15047).
12962         (find-lisp-find-files): Clarify doc.
12964 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12966         Don't have the manual claim that it lists all CL incompatibilities
12968         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
12969         incompatibilities isn't exhaustive, so don't say that it is
12970         (bug#15171).
12972 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12974         Fix call of `kmacro-display'
12976         * lisp/kmacro.el (kmacro-view-ring-2nd): Fix call of
12977         `kmacro-display' (bug#15020).
12979 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12981         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
12983         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
12984         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
12985         (bug#14554).
12987 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
12989         Rename "Directory Search" menu to "Servers"
12991         * lisp/menu-bar.el (menu-bar-tools-menu): Rename "Directory
12992         Search" to "Directory Servers".  Suggested by Eli
12993         Zaretskii. (bug#14919).
12995         * lisp/net/eudc.el: Rename ditto throughout.
12997 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
12999         Remove uses of the unused to-end parameter from simple.el
13001         * lisp/simple.el (line-move-partial): Remove usages of the
13002         unused to-end parameter, and make it optional (bug#14844).
13003         (line-move): Remove use of the unused to-end parameter.
13005 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13007         Doc fix: _ chars are automatically removed.
13009         * lisp/cus-edit.el (custom-buffer-create): _ chars are
13010         automatically removed when displaying help, so fix the last
13011         doc change.
13012         (custom-buffer-create-other-window): Ditto.
13014 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13016         Doc string change to enable-recursive-minibuffers
13018         * src/minibuf.c (syms_of_minibuf): Mention
13019         minibuffer-depth-indicator-mode in the doc string to
13020         enable-recursive-minibuffers (bug#14147).
13022 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13024         Fix definition of nobreak-space
13026         * lisp/faces.el (nobreak-space): The definition to
13027         nobreak-space was inadvertantly changed by the previous checkin.
13029 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13031         Clarify the `interactive' doc string slightly
13033         * src/callint.c (Finteractive): Clarify the doc string slightly
13034           (bug#14577).
13036 2016-04-28  Drew Adams  <drew.adams@oracle.com>
13038         Make icomplete respect `completion-ignored-extensions'
13040         * lisp/icomplete.el (icomplete-completions): Heed
13041         `completion-ignored-extensions' (bug#12939).
13043 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13045         Make ibuffer not break on newline-embedded buffer names
13047         * lisp/ibuffer.el (name): When buffer names contain newlines,
13048         quote those newlines before displaying (bug#12378).
13050 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13052         Add a new face for non-breaking hyphen characters
13054         * doc/emacs/display.texi (Standard Faces): Mention nobreak-hyphen.
13055         (Text Display): Ditto.
13057         * lisp/faces.el (nobreak-hyphen): New face (bug#12048).
13059         * src/xdisp.c (get_next_display_element): Use it instead of
13060         the escape-glyph face.
13062         * src/xdisp.c (syms_of_xdisp): New symbil Qnobreak_hyphen.
13064 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13066         Make a menu less ambiguous
13068         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
13069         is about using modifier keys, not binding them (bug#10942).
13071 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13073         Make kill-emacs-query-functions into defcustom
13075         * lisp/files.el (save-buffers-kill-terminal): Mention
13076         `save-buffers-kill-emacs' (bug#10794).
13077         (kill-emacs-query-functions): Made into a defcustom.
13079 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13081         Have describe-variable output multi-line values better
13083         * lisp/help-fns.el (describe-variable): When printing
13084         multi-line expressions, display them prettier (bug#10723).
13086 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13088         Clean up custom-buffer-create code slightly
13090         * lisp/cus-edit.el (custom-buffer-create-other-window): Don't
13091         pass the unused description value on (for clarity) (bug#10540).
13092         (custom-buffer-create): Ditto
13094 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13096         Clarify some doc strings
13098         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
13099         Clarify doc string (bug#8693).
13100         (syntax-propertize): Clarify doc string.
13102 2016-04-28  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13104         Fix number-at-point in lisp buffers
13106         * lisp/thingatpt.el (number-at-point): Don't say that things
13107         like ?a are numbers in lisp mode buffers (bug#8634).
13109 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13111         Don't consider colons to be paragraphs starting chars in strings
13113         * lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Don't
13114         consider colons to start paragraphs in (doc) strings
13115         (bug#7751).
13117 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13119         Make `undo' of `C-x r t' put point where it should be
13121         * lisp/rect.el (string-rectangle): Make `undo' of a this
13122         command put point back where it was (bug#7522).
13124 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13126         Add some concept index entries for custom types
13128         * doc/lispref/customize.texi (Composite Types): Add concept
13129         index entries for restricted-sexp, radio and choice (bug#7385).
13131 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13133         Mention `lisp-indent-function' in the lispref manual
13135         * doc/lispref/macros.texi (Indenting Macros): Mention
13136         `lisp-indent-function' (bug#3393).
13138 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13140         Clarify doc string of internal compilation function
13142         * lisp/progmodes/compile.el (compilation-get-file-structure):
13143         Clarify doc string (bug#3137).
13145 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13147         Avoid having `C-x h' mark the prompt part of the minibuffer
13149         * lisp/simple.el (mark-whole-buffer): Don't mark the prompt
13150         part of the minibuffer (bug#2589).
13152 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13154         Allow a prefix argument to find-library to pop to a different window
13156         * lisp/emacs-lisp/find-func.el (find-library): Allow a prefix
13157         argument to pop to a different window (bug#2270).
13159 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13161         Move the diff command to "Operate" in ibuffer
13163         * lisp/ibuffer.el (ibuffer-mode-operate-map): Move the diff
13164         command to the "Operate" menu, and remove the customisation
13165         entry to make the "View" menu more logical (bug#1150).
13167 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13169         Make the minor modes in help buffers into buttons
13171         * lisp/help.el (describe-mode): Make the minor modes into
13172         buttons to enable easier documentation traversal (bug#1149).
13174 2016-04-27  Jorgen Schaefer  <contact@jorgenschaefer.de>
13176         Add a number of Python 3 exceptions
13178         * lisp/progmoes/python.el (python-font-lock-keywords): Clean up the exception
13179         list, adding a number of new Python 3 exceptions and moving some exceptions
13180         to the Python 2 and 3 list as Python 2.7 includes them.
13182 2016-04-26  Anders Lindgren  <andlind@gmail.com>
13184         Fix bug#22891: wrong terminal width when a fringe width is zero.
13186         When either fringe width is zero, Emacs reserved one column for a
13187         continuation glyph. Terminal windows does not take this into
13188         account when the frame is resized.
13190         * lisp/window.el (window-adjust-process-window-size): Use
13191         `window-max-chars-per-line' instead of `window-body-width'.
13192         * lisp/term.el (term-window-width): Remove function. (It does the
13193         same as `window-max-chars-per-line' but without recent bug fixes.)
13194         (term-mode): Use `window-max-chars-per-line' instead of
13195         `term-window-width'.
13197 2016-04-26  Simen Heggestøyl  <simenheg@gmail.com>
13199         Add completion of `calc()' in CSS mode
13201         * lisp/textmodes/css-mode.el (css-value-class-alist): Add `calc()' as
13202         a completion candidate for several value classes.
13203         (css--value-class-lookup): Return only unique results.
13205         * test/lisp/textmodes/css-mode-tests.el
13206         (css-test-property-values-no-duplicates)
13207         (css-test-value-class-lookup): Update to reflect the above changes.
13209 2016-04-26  Paul Eggert  <eggert@cs.ucla.edu>
13211         Fix socketd fd startup bug that I introduced
13213         Problem reported by Matthew Leach in:
13214         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00778.html
13215         * src/emacs.c (main): Indicate more clearly the coupling between
13216         the --daemon option and init_process_emacs.
13217         * src/lisp.h: Adjust to API changes.
13218         * src/process.c (set_external_socket_descriptor):
13219         Remove, replacing by ...
13220         (init_process_emacs): ... passing the socket FD here instead.
13221         All uses changed.
13223 2016-04-25  Tao Fang  <fangtao0901@gmail.com>
13225         Fix: (void-variable url-http-response-status)
13227         * lisp/url/url-http.el
13228         (url-https-proxy-after-change-function): Display the error
13229         message before doing the callback to avoid a void variable
13230         situation (bug#23290).
13232 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13234         smtpmail would say it's done before it is
13236         * lisp/mail/smtpmail.el (smtpmail-via-smtp): Move the sending
13237         of the data end marker from here... (bug#23020).
13238         (smtpmail-send-data): ... to here, so that we don't get a
13239         "Sending done" before we've sent the final "." (which can make
13240         the SMPT server reject the email.
13242 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13244         `url-retrieve-synchronously' now takes an optional timeout parameter
13246         * doc/misc/url.texi (Retrieving URLs): Document optional parameters.
13248         * lisp/url/url.el (url-retrieve-synchronously): Allow passing
13249         in a timeout parameter (bug#22940).
13251 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13253         Include "Retype" as a comint password prompt
13255         * lisp/comint.el (comint-password-prompt-regexp): Include
13256         "Retype" to catch "Retype password for [account]:" from the
13257         "pass" utility (bug#22942).
13259 2016-04-25  Alan Mackenzie  <acm@muc.de>
13261         Fix spurious fontification of "for (; a * b;)" in CC Mode.
13263         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Check for being
13264         inside the parens of a for statement and after a semicolon near the beginning
13265         of the lambda form.
13267 2016-04-25  Paul Eggert  <eggert@cs.ucla.edu>
13269         New function ‘char-from-name’
13271         This also fixes the mishandling of "\N{CJK COMPATIBILITY
13272         IDEOGRAPH-F900}", "\N{VARIATION SELECTOR-1}", etc.
13273         Problem reported by Eli Zaretskii in:
13274         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00614.html
13275         * doc/lispref/nonascii.texi (Character Codes), etc/NEWS: Document this.
13276         * lisp/international/mule-cmds.el (char-from-name): New function.
13277         (read-char-by-name): Use it.  Document that "BED" is treated as
13278         a name, not as a hexadecimal number.  Reject out-of-range integers,
13279         floating-point numbers, and strings with trailing junk.
13280         * src/lread.c (character_name_to_code): Call char-from-name
13281         instead of inspecting ucs-names directly, so that we handle
13282         computed names like "VARIATION SELECTOR-1".  Do not use an auto
13283         string, since char-from-name might GC.
13284         * test/src/lread-tests.el: Add tests for new behavior, and
13285         fix some old tests that were wrong.
13287 2016-04-25  Alan Mackenzie  <acm@muc.de>
13289         c-forward-<>-arglist no longer directly applies face properties in Java Mode.
13291         This allows the calling of c-restore-<>-properties from c-common-init without
13292         the test suite giving spurious errors.
13294         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist): Remove the form that
13295         sets face properties.
13296         (c-forward-<>-arglist-recur): Reformulate the bit that handles types inside
13297         template brackets using c-inside-<>-type-key.  Don't bind
13298         c-record-type-identifiers or c-record-found-types around the recursive call,
13299         allowing positions of found types to flow back to the caller.
13301         * lisp/progmodes/cc-langs.el (c-inside-<>-type-kwds, c-inside-<>-type-key):
13302         new lang consts/var.
13304         * lisp/progmodes/cc-mode.el (c-common-init): Don't remove
13305         c-restore-<>-properties from the list of functions called at mode
13306         initialization.
13308 2016-04-25  Jun Hao  <jun_hao@aol.com>
13310         Pass in port only if provided by caller in the OS X keychain
13312         * lisp/auth-source.el (auth-source-macos-keychain-search): Pass in
13313         port only if provided (bug#23374).
13315 2016-04-25  Alan Mackenzie  <acm@muc.de>
13317         Add fontification for a C declaration which looks like a function call.
13319         For example, "t1 *fn (t2 *b);".
13321         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add new variable
13322         at-decl-start, setting it to whether the putative decl starts immediately
13323         after ; or { or }.  Accept such a construct as a decl when at-decl-start is
13324         non-nil.
13326         * lisp/progmodes/cc-langs.el (c-pre-start-tokens): New language variable.
13328 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
13330         Don't mirror slashes in convert-standard-filename on MS-Windows
13332         * lisp/w32-fns.el (w32-convert-standard-filename): Don't mirror
13333         slashes into backslashes.  This avoids producing ugly file names,
13334         and is deemed no longer necessary, and should certainly be
13335         unrelated to which shell is in use.
13337 2016-04-24  Dmitry Gutov  <dgutov@yandex.ru>
13339         Revert the disputed VC change and update the tests
13341         * lisp/vc/vc-hooks.el (vc-working-revision):
13342         Remove the previous change.
13343         (vc-state): Same.  And update the old, incorrect comment about
13344         unregistered files
13345         (http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00526.html).
13347         * test/lisp/vc/vc-tests.el (vc-test--state): Remove the check
13348         calling `vc-state' on default-directory (VC state is undefined
13349         for directories).  Check that `vc-state' returns nil where it
13350         returned `unregistered' before.  Remove all checks comparing
13351         invocations with the backend passed in explictly and without.
13352         (vc-test--working-revision): Remove all checks comparing
13353         invocations with the backend passed in explictly and without.
13354         Update comments, and add a new one.
13356 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13358         * etc/NEWS: Grammar and punctuation improvements.
13360 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13362         Merge from origin/emacs-25
13364         9daf1cf * etc/NEWS: Improve wording of vc-git-log-output-coding-syste...
13365         0cd2e92 Don't kill ~/ if it's the top level directory
13366         4f40f5f describe-char: fix insert char documentation
13367         87ee542 (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
13369 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13371         Merge from origin/emacs-25
13373         960f90d * etc/AUTHORS: Update the AUTHORS file
13374         b21e9d4 * admin/update_autogen: Use #!/usr/bin/env bash
13376 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13378         Merge from origin/emacs-25
13380         78f9af7 ; ChangeLog fixes
13381         162e549 * admin/authors.el (authors-ignored-files): Additions.
13382         2b31a0c In x_set_window_size restore do_pending_window_change calls
13383         401857e Fix Alt-modified keys on some European MS-Windows keyboards
13384         a77cf24 Document 'help-go-forward'
13385         1ba947f Revert "Allow to customize names of executables used by grep.el"
13386         570e0fa Revert "Don't use 'find-program'"
13387         645f4ef Revert "Use 'grep-find-program' in check-declare.el"
13388         aa03257 Clarify documentation of 'dired-mark-files-containing-regexp'
13389         ce0d8c7 Make tmm-menubar work in correct order again
13390         b8d5a8f Remove the Meta-CVS VC backend
13392 2016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
13394         Don't let `css--property-values' return duplicates
13396         * lisp/textmodes/css-mode.el (css--property-values): Don't return
13397         duplicate values.
13399         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
13400         Take the above into account.
13401         (css-test-property-values-no-duplicates): Test that duplicates aren't
13402         returned by `css--property-values'.
13404 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13406         Call `make-composed-keymap' correctly
13408         * lisp/image-mode.el (image-mode-map): Call
13409         `make-composed-keymap' correctly.
13411 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13413         Use `make-composed-keymap' instead of copying the keymap
13415         * lisp/image-mode.el (image-mode-map): Use
13416         `make-composed-keymap' instead of copying the keymap.
13418 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13420         Make `q' etc work in image mode again
13422         * lisp/image-mode.el (image-mode-map): Restore
13423         special-mode-map as the parent keymap of image-mode-map (bug#23167).
13425 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13427         Fix typo in last url.texi checkin
13429 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13431         Make STARTTLS error messages better
13433         * lisp/net/network-stream.el (network-stream-open-starttls):
13434         Output a better error message when TLS negotiation fails while
13435         doing STARTTLS (bug#23027).
13437 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13439         Encode the shr tests files with trailing white space
13441 2016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
13443         Cache results of `css--property-values'
13445         * lisp/textmodes/css-mode.el (css--property-values): Cache computed
13446         values.
13448         * test/lisp/textmodes/css-mode-tests.el (css-test-property-value-cache):
13449         New regression test for the above.
13451 2016-04-24  Michael Albinus  <michael.albinus@gmx.de>
13453         Some improvements in vc
13455         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
13456         Check, whether FILE is registered.
13458         * lisp/vc/vc-rcs.el (vc-rcs-checkout-model): Return `locking'
13459         for nonexistent files.
13461         * test/lisp/vc/vc-tests.el (w32-application-type): Declare.
13462         (vc-test--revision-granularity-function)
13463         (vc-test--unregister-function): Use `vc-call-backend'.
13464         (vc-test--run-maybe-unsupported-function): New defmacro.
13465         (vc-test--register, vc-test--state, vc-test--working-revision)
13466         (vc-test--checkout-model): Use it.  Fix also expected results.
13467         (vc-test-src02-state, vc-test-rcs04-checkout-model): They pass now.
13469 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13471         Document the nil/default values of url-user-agent
13473         * doc/misc/url.texi (Customization): Document the nil/default
13474         values of url-user-agent.
13476 2016-04-24  Clément Pit--Claudel  <clement.pit@gmail.com>
13478         Compute User-Agent dynamically in url-http
13480         * url-http.el (url-http-user-agent-string): Compute User-Agent
13481         string dynamically.
13482         (url-http--user-agent-default-string): New function.
13484         * url-vars.el (url-privacy-level): Allow `emacs' in list of
13485         information not to send.
13486         (url-user-agent): Add nil and `default' options; do not
13487         pre-compute value.
13489 2016-04-24  Jun Hao  <jun_hao@aol.com>
13491         Handle auth-source items with special characters on OS X
13493         * lisp/auth-source.el
13494         (auth-source-macos-keychain-search-items): Handle keychain
13495         output correctly when has special chararcters (bug#22824).
13497 2016-04-24  Magnus Henoch  <magnus.henoch@gmail.com>
13499         Implement process-attributes for Darwin
13501         * src/sysdep.c (timeval_to_timespec, make_lisp_timeval)
13502         (system_process_attributes): Implement process-attributes
13503         for Darwin (bug#16579).
13505 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13507         Use Unicode literals instead of hex values
13509         * lisp/net/shr.el (shr-tag-bdo): Use Unicode literals instead
13510         of hex values for greater readability.
13511         (shr-tag-bdi): Ditto.
13513 2016-04-24  Steve Purcell  <steve@sanityinc.com>
13515         Allow _ characters in SQL prompts
13517         * lisp/progmodes/sql.el (sql-product-alist): Allow _
13518         characters in SQL prompts (bug#22596).
13520         Fixes issue 22596, whereby "_" is now not considered a word constituent
13521         character in sql-interactive-mode, so prompts like "foo_dev# " are not
13522         correctly detected. Rather than piggy-back on the symbol table, we
13523         explicitly match against alphanumeric chars or "_".
13525 2016-04-23  Glenn Morris  <rgm@gnu.org>
13527         When autoload-timestamps is nil, use a dummy timestamp rather than "t".
13529         * lisp/emacs-lisp/autoload.el (autoload--non-timestamp): New constant.
13530         (autoload-generate-file-autoloads, autoload-find-destination)
13531         (update-directory-autoloads): Use autoload--non-timestamp.
13533 2016-04-23  Glenn Morris  <rgm@gnu.org>
13535         * test/lisp/xt-mouse-tests.el: Move from test/automated/.
13537 2016-04-22  Jö Fahlke  <jorrit@jorrit.de>  (tiny change)
13539         Regexps for matching CMake output
13541         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add
13542         regexps for matching CMake output.
13543         * test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data): Add
13544         CMake test cases.
13545         * etc/compilation.txt (CMake): Add CMake examples.
13547 2016-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13549         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
13551         Fix docstring quotes.
13553 2016-04-21  Paul Eggert  <eggert@cs.ucla.edu>
13555         Improve character name escapes
13557         * doc/lispref/nonascii.texi (Character Properties):
13558         Avoid duplication of Unicode names.  Reformat examples to fit in
13559         narrow pages.
13560         * doc/lispref/objects.texi (General Escape Syntax):
13561         Simplify and better-organize explanation of \N{...} escapes.
13562         * src/character.h (CHAR_SURROGATE_PAIR_P): Remove; unused.
13563         (char_surrogate_p): New inline function.
13564         * src/lread.c: Do not include string.h; no longer needed.
13565         (invalid_character_name, check_scalar_value): Remove; the ideas
13566         behind these functions are now bundled into character_name_to_code.
13567         (character_name_to_code): Remove undocumented support for "CJK
13568         IDEOGRAPH-XXXX" names, as "U+XXXX" suffices.  Reject monstrosities
13569         like "\N{U+-0}" and null bytes in \N escapes.  Reject floating
13570         point in \N escapes instead of returning garbage.  Use
13571         AUTO_STRING_WITH_LEN to lessen pressure on the garbage collector.
13572         * test/src/lread-tests.el (lread-char-number, lread-char-name)
13573         (lread-string-char-number, lread-string-char-name):
13574         Test runtime behavior, not compile-time, as the test framework
13575         is not set up to test compile-time.
13576         (lread-char-surrogate-1, lread-char-surrogate-2)
13577         (lread-char-surrogate-3, lread-char-surrogate-4)
13578         (lread-string-char-number-2, lread-string-char-number-3):
13579         New tests.
13580         (lread-string-char-number-1): Rename from lread-string-char-number.
13582 2016-04-21  Philipp Stephani  <phst@google.com>
13584         Use 'ucs-names' for character name escapes
13586         * lread.c (invalid_character_name, check_scalar_value)
13587         (parse_code_after_prefix, character_name_to_code): New helper
13588         functions that use 'ucs-names' and parsing for CJK ideographs.
13589         (read_escape): Use helper functions.
13590         (syms_of_lread): New symbol 'ucs-names'.
13591         * test/src/lread-tests.el: New tests; fix a couple of bugs in
13592         existing tests.
13594 2016-04-21  Philipp Stephani  <phst@google.com>
13596         Minor cleanups for character name escapes
13598         * src/lread.c (init_character_names): Add missing 'void'.
13599         Remove top-level 'const'.
13600         (read_escape): Simplify loop a bit.  Remove top-level 'const'.
13602 2016-04-21  Philipp Stephani  <phst@google.com>
13604         Add documentation for character name escapes
13606 2016-04-21  Philipp Stephani  <phst@google.com>
13608         Implement named character escapes, similar to Perl
13610         * lread.c (init_character_names): New function.
13611         (read_escape): Read Perl-style named character escape sequences.
13612         (syms_of_lread): Initialize new variable 'character_names'.
13613         * test/src/lread-tests.el (lread-char-empty-name): Add test file
13614         for src/lread.c.
13616 2016-04-21  Fabrice Popineau  <fabrice.popineau@gmail.com>
13618         Avoid run-time dependency on libwinpthread DLL on MS-Windows
13620         * nt/mingw-cfg.site (ac_cv_search_clock_gettime)
13621         (ac_cv_func_clock_gettime, ac_cv_func_clock_settime): Force to not
13622         present, so that MinGW64 builds don't depend on libwinpthread.
13623         (Bug#22959)
13625 2016-04-21  Matthew Leach  <matthew@mattleach.net>
13627         Add LIBSYSTEMD to the list of supported features
13629         * configure.ac: Add LIBSYSTEMD to EMACS_CONFIG_FEATURES and print a
13630         message at the end of configure stating whether Emacs will be build
13631         with libsystemd support.
13633 2016-04-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
13635         Support absolute column movement in 'ansi-term'
13637         * lisp/term.el (term-handle-ansi-escape): Handle the "\E[G" sequence
13638         for absolute column movement.  (Bug#23303)
13640 2016-04-21  Jorgen Schaefer  <contact@jorgenschaefer.de>
13642         Add Python 3.5 keyword "await"
13644         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
13645         keyword.
13647 2016-04-20  Simen Heggestøyl  <simenheg@gmail.com>
13649         Add "keyframes" to list of CSS at-rules
13651         * lisp/textmodes/css-mode.el (css-at-ids): Add "keyframes" at-rule.
13653 2016-04-20  Phillip Lord  <phillip.lord@russet.org.uk>
13655         Prevent bootstrap autoload backup files
13657          * lisp/emacs-lisp/autoload (autoload-find-generated-file): Suppress
13658            backups in newly created file.
13660           (autoload-ensure-default-file): Function split into two.
13661           (autoload-ensure-file-writeable): New function from split.
13663           (Bug#23203)
13665 2016-04-20  Paul Eggert  <eggert@penguin.cs.ucla.edu>
13667         Fix org-timestamp-change typo
13669         Problem reported by Peter Münster (Bug#23299).
13670         * lisp/org/org.el (org-timestamp-change): Fix typo that relied
13671         on undocumented behavior in ‘encode-time’.  In practice the
13672         old code used local time, so use that.
13674 2016-04-19  Paul Eggert  <eggert@cs.ucla.edu>
13676         Avoid AC_PREPROC_IFELSE glitch in configure.ac
13678         Problem reported by Angelo Graziosi in:
13679         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00545.html
13680         * configure.ac (gl_gcc_warnings): Work around an Autoconf glitch:
13681         AC_PREPROC_IFELSE doesn’t generate a simple shell command.
13683 2016-04-19  Michael Albinus  <michael.albinus@gmx.de>
13685         autorevert: Resume with polling if file is deleted
13687         * lisp/autorevert.el: Use consistent wording in comments and
13688         docstrings.
13689         (auto-revert-mode): Add local function to `kill-buffer-hook'.
13690         (auto-revert-notify-handler): Improve handling of `stopped' event.
13692         * test/lisp/autorevert-tests.el
13693         (auto-revert-test02-auto-revert-deleted-file): New test.
13694         (auto-revert-test03-auto-revert-tail-mode)
13695         (auto-revert-test04-auto-revert-mode-dired): Rename them.
13697 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13699         Merge from origin/emacs-25
13701         5a0cbe5 Fix Bug#23276
13702         2007e32 Sync with upstream vhdl mode v3.38.1.
13703         b6d2552 Tweak configure.ac syntax in recent module patch
13705 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13707         Merge from origin/emacs-25
13709         ac00a92 Make sh-electric-here-document-mode accessible in sh-mode-hoo...
13710         3287f48 ; Add entry to MAINTAINERS
13711         b85981f * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from prev...
13712         0f33284 Make use of rectangle-preview custom variable.
13713         aa0d83a Make use of rectangle-preview face.
13714         33bef6e Use 'grep-find-program' in check-declare.el
13715         a8560e5 Improve "C-h S" for cl-lib symbols
13716         52e798b Fix minor issues with removing left or right fringes
13717         d6ffd64 Speed up redisplay in ansi-term mode
13718         4ab671c Simplify 8-bit character handling by terminal for 'raw-text'
13719         f3653ec * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bu...
13720         ab849b7 Fix w32 memory-management problem when extending buffer text
13722 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13724         Merge from origin/emacs-25
13726         32364bb substitute-command-keys keeps quotes’ text props
13727         567ab52 * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping ...
13728         24b87a1 Add semantic-symref-filepattern-alist entry for lisp-interact...
13729         cc0b713 Perform xref searches without visiting unopened files
13730         5045575 Revert "Prevent bootstrap autoload backup files"
13732 2016-04-18  Philipp Stephani  <p.stephani2@gmail.com>
13734         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
13736         so that it matches the actual implementation.
13737         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
13739 2016-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
13741         * lisp/textmodes/ispell.el: Compile with lexical-binding
13743         (declare-function): Don't define any more.
13744         (ispell-check-minver, ispell-looking-back): Tweak definition so that
13745         the compiler can obviously know that it's always defined.
13746         (ispell-debug-buffer): Declare var.
13747         (ispell-hunspell-fill-dictionary-entry)
13748         (ispell-parse-hunspell-affix-file, ispell-hunspell-add-multi-dic)
13749         (ispell-find-hunspell-dictionaries, ispell-set-spellchecker-params)
13750         (ispell-command-loop): Avoid add-to-list on local variables.
13752 2016-04-17  Paul Eggert  <eggert@cs.ucla.edu>
13754         Minor fixups for external socket launching
13756         * configure.ac (HAVE_LIBSYSTEMD): Change earliest version to 222.
13757         * doc/emacs/misc.texi (Emacs Server):
13758         * etc/NEWS: Spelling and doc fixes.
13759         * src/emacs.c (main) [HAVE_LIBSYSTEMD]:
13760         Check for sd_is_socket returning positive, not zero.
13761         * src/process.c (external_sock_fd): Instead of initializing here ...
13762         (init_process_emacs): ... initialize it here, so that it does the
13763         right thing after dump/restore.
13764         (connect_network_socket): Simplify socket_to_use test.
13766 2016-04-17  Simen Heggestøyl  <simenheg@gmail.com>
13768         Add HTML5 tags to HTML mode
13770         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 tags.
13771         (html-tag-help): Add short descriptions of those tags.
13773 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13775         Finish idna->puny changes in last Message patch
13777         * lisp/gnus/message.el (message-idna-to-ascii-rhs-1): Use puny
13778         instead of idna functions.
13780 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13782         Use puny.el instead of idna.el functions in Gnus
13784         * lisp/gnus/gnus-art.el (gnus-use-idna): Default to t (since
13785         Emacs comes with IDNA support built in).
13786         (article-decode-idna-rhs): Use `puny-decode-domain' instead of
13787         `idna-to-unicode'.
13789         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message): Ditto.
13791 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13793         Mention `message-use-idna' in NEWS
13795 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13797         Default `message-use-idna' to t
13799         * lisp/gnus/message.el (message-use-idna): Default to t (since
13800         Emacs comes with puny.el now).
13802 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13804         Extend battery.el to exotic power supply types
13806         * lisp/battery.el (battery-linux-sysfs-regexp): Rename from
13807         'battery--linux-sysfs-regexp' and make a defcustom. All users
13808         changed.  (Bug#23216)
13810 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13812         Add external socket launching support
13814         * src/process.c (connect_network_socket): Allow a pre-allocated socket
13815         descriptor to be used if passed to Emacs, avoiding the call to
13816         'socket' and 'bind'.
13817         (Fmake_network_process): Allow users to pass ':use-external-socket' in
13818         the parameter plist to use any sockets that have been passed to Emacs.
13819         (wait_reading_process_output): Call 'socket' and 'bind' every time.
13820         (syms_of_process): New symbol ':use-external-socket'.
13821         (set_external_socket_descriptor): New function.
13822         (external_sock_fd): New variable.
13823         * src/lisp.h: (set_external_socket_descriptor): New declaration.
13824         * src/emacs.c (main): Call 'sd_listen_fds' to read the number of sockets
13825         passed and call 'set_external_socket_descriptor' to set the external
13826         socket.
13827         * src/Makefile.in: Add libsystemd library and C flags to the Emacs
13828         compilation options.
13830         * configure.ac: Add new default-on option "systemd" and check for
13831         libsystemd at configure time.
13833         * lisp/server.el (server-start): Set ':use-external-socket' to 't' when
13834         calling 'make-network-process'.
13836         * etc/NEWS: Document new socket-passing functionality and the configure
13837         option to disable systemd interaction.
13839         * doc/emacs/misc.texi (Emacs Server): Document systemd socket passing
13840         functionality and provide systemd unit examples.
13841         * doc/lispref/processes.texi (Network Processes): Document new
13842         'make-network-process' option ':use-external-socket'.
13844 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13846         Don't spell-check argument of 'cref' TeX macro
13848         * lisp/textmodes/ispell.el (ispell-tex-skip-alists): Add the cref
13849         macro to skip spell-checking the cref macro argument.
13851 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13853         Simplify use of O_BINARY
13855         * src/callproc.c (call_process):
13856         * src/fileio.c (write_region):
13857         * src/filelock.c (read_lock_data):
13858         * src/image.c (x_find_image_fd):
13859         * src/lread.c (openp):
13860         * src/sysdep.c (init_random, emacs_fopen):
13861         * src/unexcw.c (unexec):
13862         Omit unnecessary use of O_BINARY, since emacs_open now arranges
13863         that for us.
13865 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13867         * src/indent.c (Fvertical_motion): Pacify GCC
13869         5.3.1 20160406 (Red Hat 5.3.1-6) on x86-64.
13871 2016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13873         Port ‘./autogen.sh git’ to non-clones
13875         Problem reported by Angelo Graziosi in:
13876         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00341.html
13877         * autogen.sh (do_git): Default to false when the arg is ‘all’ but
13878         there is no ‘.git’.
13879         (git_common_dir, hooks): New vars.
13880         (git_config, tailored_hooks, sample_hooks): Use them.
13882 2016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13884         Do not require that .git be a directory
13886         Problem reportyed by Phillip Lord.
13887         * admin/update_autogen, autogen.sh, build-aux/gitlog-to-emacslog:
13888         * configure.ac, make-dist:
13889         Do not require that .git be a directory, as 'git worktree' makes
13890         it a file and not a directory.
13892 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13894         Avoid now-obsolete function gmm-format-time-string
13896         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13897         Use format-time-string instead of obsolete function
13898         gmm-format-time-string.
13900 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13902         Support OFFSET and (OFFSET ABBR) time zone rules
13904         This simplifies Gnus and VC time zone support, by letting them
13905         feed the output of ‘current-time-zone’ and ‘decode time’ to
13906         primitives that accept time zone arguments.
13907         * doc/lispref/os.texi (Time Zone Rules, Time Conversion):
13908         * etc/NEWS:
13909         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13910         * lisp/org/org.el (org-timestamp-format):
13911         * src/editfns.c (Fformat_time_string, Fdecode_time):
13912         (Fcurrent_time_string, Fcurrent_time_zone, Fset_time_zone_rule):
13913         Document new behavior.
13914         * lisp/gnus/gmm-utils.el (gmm-format-time-string):
13915         * lisp/vc/add-log.el (add-log-iso8601-time-zone):
13916         Mark as obsolete, as it is now just an alias or narrow wrapper
13917         around format-time-string.
13918         * src/editfns.c (tzlookup): Also support integer OFFSET and
13919         list (OFFSET ABBR) as time zone rules.
13920         (Fencode_time): No longer need a special case for a cons ZONE.
13921         (Fcurrent_time_zone): If the time zone string is missing, compute
13922         it the same way the other new code does.
13924 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13926         Merge from origin/emacs-25
13928         ca50981 Improve time zone documentation
13929         c23c965 Prevent bootstrap autoload backup files
13930         9344612 Disable multicolor fonts on OS X since they are not supported...
13931         c41ce1c Capitalize “Universal Time” in documentation
13932         10597c9 Don't use 'find-program'
13934 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13936         Merge from origin/emacs-25
13938         b134c20 Sync with gnulib
13939         bb30fa9 Fix last change on 2016-01-02
13940         488a72f ; Spelling fixes
13941         9b1aab9 Port run-prolog EMACS to SWI-Prolog 7.2.3
13942         0e7bcec Avoid crashes due to unreasonably large or small text scaling
13943         85f257c Improve documentation of 'with-eval-after-load'
13944         668c7bc Improve handling of non-ASCII characters in Git log messages
13945         b570769 Remove undefined behavior in OS X dumper.
13946         97211f3 Fix clipping of xwidgets
13947         e87fbc0 Improve Lisp-level documentation of tooltips
13948         9f1786e Faces names should not end in "-face".
13949         3283271 * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
13950         a1f221b Comint and compile no longer set EMACS
13951         5c28890 * lisp/subr.el (read-key): Don't let the prompt linger (bug#2...
13952         a75b9a6 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
13953         c93ae7a Allow to customize names of executables used by grep.el
13954         f6497c6 Set locale encoding to UTF-8 when run from OS X GUI.
13955         7ad1d07 Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
13956         a3f1ac2 Avoid infinite loop in 'studlify-word'
13957         f36df4b Don’t recommend obsolete EMACS env var
13958         fb0b531 * lisp/emacs-lisp/package.el: Change from a few days ago need...
13960 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13962         Merge from origin/emacs-25
13964         96d9e78 Fix "Beginning of buffer" error in forward-page
13965         20686f7 Add a `transient' project type
13967 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13969         Merge from origin/emacs-25
13971         80128a7 Fix stability confusion in sort-tests
13972         1e4aa42 Avoid describe-key error with lambdas
13973         a05fb21 * lisp/emacs-lisp/package.el (package-install-selected-packag...
13974         f501116 Sync with gnulib
13975         c4963f9 Fix doc for Universal Time
13977 2016-04-10  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
13979         Fix alignement rule for CSS
13981         * lisp/align.el (align-rules-list): Support CSS properties that have
13982         multiple words.
13984 2016-04-10  Tassilo Horn  <tsdh@gnu.org>
13986         New custom option for overriding mailcap choices
13988         * lisp/net/mailcap.el (mailcap--get-user-mime-data): New function.
13989         (mailcap--set-user-mime-data): New function.
13990         (mailcap-user-mime-data): New customization option.
13991         (mailcap-select-preferred-viewer): New function.
13992         (mailcap-mime-info): Use it.
13994         * doc/misc/emacs-mime.texi (mailcap): Document `mailcap-user-mime-data'.
13996 2016-04-10  Michael Albinus  <michael.albinus@gmx.de>
13998         Fix Bug#23207
14000         * src/keyboard.c (read_char): Resume idle timers in case of
14001         dbus-event, file-notify-event and config-changed-event.
14002         Reported by Johan Claesson <johanclaesson@bredband.net>.  (Bug#23207)
14004 2016-04-09  Michael Albinus  <michael.albinus@gmx.de>
14006         Add vc-backend and vc-responsible-backend tests
14008         * lisp/vc/vc-hooks.el (vc-file-setprop, vc-file-getprop)
14009         (vc-file-clearprops): Use properties on absolute files.
14011         * test/lisp/vc/vc-tests.el (vc-test--unregister-function):
14012         Clear file properties.
14013         (vc-test--register): Add tests for `vc-backend' and
14014         `vc-responsible-backend'.  Catch other errors but `vc-not-supported'.
14015         (vc-test--state, vc-test--checkout-model): Catch other errors
14016         but `vc-not-supported'.
14017         (vc-test--working-revision): Fix test for RCS and SCCS.  Catch
14018         other errors but `vc-not-supported'.
14019         (vc-test-src02-state): Mark as an expected failure.
14021 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
14023         Minor improvements for hash function primitives
14025         * src/fns.c (hashfn_eql): Define in terms of hashfn_equal and
14026         hashfn_eq rather than reaching inside them.
14027         (hashtest_eq, hashtest_eql, hashtest_equal):
14028         Now constants with initializers.
14029         (syms_of_fns): Omit no-longer-needed initialization.
14030         * src/lisp.h (LISPSYM_INITIALLY): New macro.
14031         (DEFINE_LISP_SYMBOL): Use it.
14033 2016-04-08  Paul Pogonyshev  <pogonyshev@gmail.com>
14035         New primitives sxhash-eq, sxhash-eql
14037         * doc/lispref/hash.texi (Defining Hash), etc/NEWS: Document this.
14038         * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
14039         Add sxhash-equal, sxhash-eq, sxhash-eql.
14040         * lisp/subr.el (sxhash): Now an alias for sxhash-equal.
14041         * src/fns.c (Fsxhash_eq, Fsxhash_eql): New functions.n
14043 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
14045         Teach Dired support parallel execution of commands on MS-Windows
14047         * lisp/dired-aux.el (dired-shell-stuff-it): Support
14048         parallel-in-background execution of commands on MS-Windows.
14049         Test 'w32-shell-dos-semantics' instead of the underlying OS
14050         when determining whether addition of 'wait' is needed.
14052 2016-04-08  Tino Calancha  <f92capac@gmail.com>
14054         Make 'dired-do-shell-command' wait for all background jobs
14056         * lisp/dired-aux.el (dired-shell-stuff-it): Force POSIX shells to
14057         wait until all background jobs exit.  (Bug#23206).
14059 2016-04-07  Vivek Dasmohapatra  <vivek@etla.org>
14061         Prefer 'font-lock-face to 'face in erc where appropriate
14063         * lisp/erc/erc-button.el (erc-button-add-face): Prefer
14064         'font-lock-face to 'face where appropriate.
14065         * lisp/erc/erc-capab.el (erc-capab-identify-add-prefix)
14066         * lisp/erc/erc-dcc.el (erc-dcc-chat-parse-output)
14067         * lisp/erc/erc-goodies.el (erc-controls-propertize)
14068         * lisp/erc/erc-stamp.el (erc-format-timestamp)
14069         * lisp/erc/erc-track.el (erc-faces-in)
14070         * lisp/erc/erc.el (erc-load-irc-script-lines, erc-display-msg)
14071         (erc-display-command, erc-make-notice, erc-highlight-notice)
14072         (erc-format-my-nick, erc-format-@nick, erc-format-privmessage)
14073         (erc-display-prompt, erc-display-message-highlight)
14074         (erc-log-irc-protocol): Ditto.
14076         * test/lisp/erc/erc-track-tests.el: Converted asserts into ert
14077         tests.
14079 2016-04-06  Lele Gaifax  <lele@metapensiero.it>
14081         Add new keywords of Python 3.5
14083         Python 3.5, released in mid September 2015, introduced a few new
14084         keywords to better support asynchronous code, "async" and "await"
14085         in particular. See https://www.python.org/dev/peps/pep-0492/ for
14086         details. (Bug#21783)
14087         * lisp/progmodes/python.el (python-rx-constituents): Add async
14088         def/for/with as block-start and async def as defun.
14089         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
14090         def/for/with as keyword.
14091         * test/automated/python-tests.el (python-indent-after-async-block-1,
14092         python-indent-after-async-block-2, python-indent-after-async-block-3,
14093         python-nav-beginning-of-defun-3): New tests to test indentation and
14094         navigation for the async keyword.
14096 2016-04-05  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
14098         Support completion of at-rules in SCSS mode
14100         lisp/textmodes/css-mode.el (scss-at-ids): New defconst holding
14101         SCSS-specific at-rules.
14102         (css--at-ids): New buffer-local variable holding the list of at-rules
14103         for the current mode.
14104         (css--complete-at-rule): Retrieve at-rules from `css--at-ids`.
14105         (scss-mode): Set `css--at-ids'.
14107 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
14109         Enable GCC warnings in developer builds
14111         However, do not fail; just issue the warnings.  Add an option
14112         --enable-gcc-warnings=warn-only to configure, to implement this.
14113         * INSTALL, etc/NEWS: Document this.
14114         * configure.ac (gl_GCC_VERSION_IFELSE): New macro, from coreutils.
14115         (gl_gcc_warnings, WERROR_CFLAGS): Use it to add new option.
14116         Don’t treat --with-x-toolkit=no as a special case when configuring
14117         warnings.
14119 2016-04-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14121         Inhibit querying for the encoding of the headers when resending
14123         * lisp/gnus/message.el (message-resend): Inhibit querying for
14124         the encoding of the headers when resending.
14126 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14128         Prefer AUTO_STRING_WITH_LEN to make_formatted_string
14130         * src/buffer.c (Fgenerate_new_buffer_name):
14131         * src/filelock.c (get_boot_time):
14132         * src/minibuf.c (get_minibuffer):
14133         * src/process.c (make_process):
14134         * src/xdisp.c (ensure_echo_area_buffers):
14135         Prefer AUTO_STRING_WITH_LEN + sprintf to make_formatted_string
14136         when either will do.
14138 2016-04-04  Tao Fang  <fangtao0901@gmail.com>
14140         Allow URL using HTTPS proxies using CONNECT
14142         * lisp/url/url-http.el (url-http-find-free-connection): Allow
14143         using proxies (bug#11788).
14144         (url-http-end-of-document-sentinel): Ditto.
14145         (url-http): The protocol may change from http to https and
14146         vice versa.
14147         (url-https-proxy-connect): Allow using CONNECT proxies for https.
14149 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14151         New C macro AUTO_STRING_WITH_LEN
14153         Put a bit less pressure on the garbage collector by defining a
14154         macro that is like AUTO_STRING but also allows null bytes in strings,
14155         and by extending AUTO_STRING to work with any unibyte string.
14156         * src/alloc.c (verify_ascii): Remove; all uses removed.
14157         AUTO_STRING can now be used on non-ASCII unibyte strings.
14158         * src/lisp.h (AUTO_STRING): Now allows non-ASCII unibyte strings.
14159         (AUTO_STRING_WITH_LEN): New macro.
14160         * src/coding.c (from_unicode_buffer):
14161         * src/editfns.c (format_time_string):
14162         * src/emacs-module.c (module_make_string, module_format_fun_env):
14163         * src/fileio.c (Fexpand_file_name):
14164         * src/font.c (font_parse_family_registry):
14165         * src/ftfont.c (ftfont_get_charset):
14166         * src/keymap.c (silly_event_symbol_error):
14167         * src/menu.c (single_menu_item):
14168         * src/sysdep.c (system_process_attributes):
14169         Use AUTO_STRING_WITH_LEN if possible.
14170         * src/emacs-module.c (module_make_function):
14171         * src/fileio.c (report_file_errno, report_file_notify_error):
14172         * src/fns.c (Flocale_info):
14173         * src/sysdep.c (system_process_attributes):
14174         Use AUTO_STRING if possible.  This is doable more often now
14175         that AUTO_STRING works on any unibyte string.
14177 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14179         Port redirect-debugging-output to MS-Windows
14181         Suggested by Eli Zaretskii in:
14182         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00037.html
14183         * src/print.c [WINDOWSNT]: Include sys/socket.h.
14184         * src/w32.c (sys_dup2): Work around problem with MS-Windows _dup2.
14186 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14188         Port redirect-debugging-output to non-GNU/Linux
14190         Problem reported by Kylie McClain for musl in:
14191         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01592.html
14192         * etc/DEBUG, etc/NEWS: Mention this.
14193         * src/callproc.c (child_setup) [!MSDOS]:
14194         * src/dispnew.c (init_display):
14195         * src/emacs.c (main, Fdaemon_initialized):
14196         * src/minibuf.c (read_minibuf_noninteractive):
14197         * src/regex.c (xmalloc, xrealloc):
14198         Prefer symbolic names like STDERR_FILENO to magic numbers like 2,
14199         to make file-descriptor manipulation easier to follow.
14200         * src/emacs.c (relocate_fd) [!WINDOWSNT]: Remove; no longer needed
14201         now that we make sure stdin, stdout and stderr are open.  All uses
14202         removed.
14203         (main): Make sure standard FDs are OK.  Prefer symbolic names like
14204         EXIT_FAILURE to magic numbers like 1.  Use bool for boolean.
14205         * src/lisp.h (init_standard_fds): New decl.
14206         * src/print.c (WITH_REDIRECT_DEBUGGING_OUTPUT) [GNU_LINUX]:
14207         Remove; no longer needed.
14208         (Fredirect_debugging_output): Define on all platforms, not just
14209         GNU/Linux.  Redirect file descriptor, not stream, so that the code
14210         works even if stderr is not an lvalue.  Report an error if the
14211         file arg is neither a string nor nil.
14212         (syms_of_print): Always define redirect-debugging-output.
14213         * src/sysdep.c (force_open, init_standard_fds): New functions.
14215 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14217         Spelling fixes
14219 2016-04-03  John Wiegley  <johnw@newartisans.com>
14221         Revert "Add `r'/`l' grep command history commands"
14223         This reverts commit a32eea60ac90d367435860fe3a10bf843e6f497c.
14225 2016-04-03  John Wiegley  <johnw@newartisans.com>
14227         Revert "Restore the point in grep buffers when traversing the history"
14229         This reverts commit f7c5f79ca565d3ef3feeb1e0af5ca261f1bcf58a.
14231 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14233         Merge from origin/emacs-25
14235         787df9d ; * src/keyboard.c (read_char): Fix typos in a comment.
14237 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14239         Merge from origin/emacs-25
14241         b787d55 More format-time-string change fixups
14242         13c8f29 make-xwidget unused arg cleanup
14243         36e05f0 Remove unused arguments from make-xwidget
14244         1042217 Document incompatible changes in 'format-time-string'
14245         7228eb8 Improve documentation of byte-code objects
14246         0020047 Adapt calls to 'format-time-string' to changes in Emacs 25
14247         17b5152 Improve vc-diff with Git backend
14248         c28f87a (js--continued-expression-p): Special-case unary plus and minus
14249         2d02a5f ; * lisp/vc/vc-annotate.el (vc-annotate): Clarify commentary.
14250         9151f16 Prevent C++ Mode wrongly fontifying some identifiers near tem...
14251         b3b523c Avoid crashes due to insanely large columns in tabulated-list...
14252         a3daa34 Teach M-x disassemble a default argument.
14253         e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
14254         df441b3 Fix OS X specific settings in tramp-tests
14255         2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
14257         # Conflicts:
14258         #       lisp/net/tramp-sh.el
14259         #       lisp/progmodes/cc-engine.el
14261 2016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14263         Restore the point in grep buffers when traversing the history
14265         * lisp/progmodes/grep.el (grep-process-setup): Allow moving
14266         point to a specific place after finishing the grep command.
14267         (grep-mode): Use it to restore point after traversing the history.
14268         (grep--history-point): New internal variable.
14269         (grep--save-history, grep-forward-history): Use it to restore
14270         the point.
14272 2016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14274         Add `r'/`l' grep command history commands
14276         * doc/emacs/building.texi (Grep Searching): Mention the
14277         `r'/`l' commands.
14279         * lisp/progmodes/grep.el (grep-forward-history): New command.
14280         (grep-backward-history): Ditto.
14281         (grep--save-buffers): New function.
14282         (grep): Use it to record the history.
14283         (grep--command-history, grep--history-inhibit)
14284         (grep--history-place): New internal variables for the grep
14285         history (bug#22627).
14287 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14289         Fix Bug#23186, again
14291         * lisp/net/tramp.el (tramp-encoding-shell)
14292         (tramp-encoding-command-switch)
14293         (tramp-encoding-command-interactive): Check for
14294         `w32-shell-name'.  (Bug#23186)
14296 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14298         Fix Bug#23186
14300         * lisp/net/tramp.el (tramp-encoding-command-switch)
14301         (tramp-encoding-command-interactive):
14302         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
14303         `tramp-encoding-shell' could be nil.  (Bug#23186)
14305 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14307         Fix Bug#22145
14309         * lisp/net/tramp-cache.el (tramp-get-connection-property)
14310         (tramp-set-connection-property, tramp-connection-property-p)
14311         (tramp-flush-connection-property): Improve docstring.
14313         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
14315         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
14317         * test/automated/tramp-tests.el (tramp--test-utf8):
14318         Improve settings of coding systems.  (Bug#22145)
14320 2016-04-02  John Wiegley  <johnw@newartisans.com>
14322         Merge from origin/emacs-25
14324         7c1802f * doc/lispref/text.texi (Columns): Remove a nonexistent refer...
14325         9034c50 * doc/man/emacsclient.1: Document +line:column option.
14326         06495c9 Fix rare problems with echo-area display and multiple frames
14327         f99b512 In M-%, avoid making buffer-local binding of text-property-de...
14329 2016-04-02  John Wiegley  <johnw@newartisans.com>
14331         Merge from origin/emacs-25
14333         e65c307 * src/font.c (QCuser_spec): Add missing colon to :user-spec.
14334         c8b868b Don't start the 'midnight' timer twice
14335         278c8a7 * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of X...
14336         e5c17f4 Fix todo-mode category movement
14337         bc70fda * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
14338         cf40f38 Ignore non-nil. non-cons values of unread-command-events
14339         8ee4c52 Improve documentatuon of 'truncate-partial-width-windows'
14340         fb9a62c * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU...
14341         1e1ea22 Fix 'dired-goto-file' in Dired buffers produced by find-dired
14342         3a13472 Fix map-put and map-delete for alists (Bug#23105)
14343         422c3da Minor copyedits of documentation for temporary displays
14344         90fb9b3 Add customization option for using UTF-8 coordinates in xt-mouse
14345         f14d463 Minor doc string fixes in replace.el
14346         e70ee9d Fix scrolling upwards with 'xwidget-webkit-browse-url'
14347         44782de Fix display of Indic scripts
14348         326c64f Fix splash screen display at startup
14349         7ab2a97 ; In NEWS mention new display of minibuffer completions window
14350         a1cd84c Describe temporary displays in Emacs manual
14351         5ec1056 Avoid stray As next to IDLW icons
14352         45577d5 Avoid GTK 3 crash with icons and masks
14353         e99ff6e * lisp/minibuffer.el (minibuffer-completion-help): Use fit-wi...
14354         077b78c Define make_save_ptr_ptr unconditionally
14355         20a1003 Preserve current buffer when popping up TTY menus
14356         7eba90c Improve font selection by family on MS-Windows
14357         73d213f Comint, term, and compile now set EMACS
14358         9524ec5 Ignore more merges when generating ChangeLog
14359         ad250f2 Sync with gnulib
14360         c0165ea Resurrect GNUS-NEWS autogeneration
14361         1e5327c ; Backport ChangeLog.2 fixes from master
14362         e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
14363         38a43f1 Fix bug in displaying header line with a box face
14364         91e6676 Fix an Isearch var to be a string (Bug#23038)
14365         76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
14366         8a35f83 Render empty <ul><li><ul> correctly
14367         d8b2ce5 Ignore invalid base64 encoded embedded images
14368         52ba24b Fix <p> and <div> newlines with or without <li> in shr
14369         b8ea08b Avoid errors in 'newline'
14370         fc3cd53 Fix Bug#23032
14371         dd2737b Adjudicate review comments in abbrevs.texi
14372         26f9c50 Fixup the "normal" matcher; highlight global var symbols, too
14373         413e73b ; Small theme additions
14374         cd950da Honor prefix arg in doc-view-next-line-or-next-page
14375         ed909c0 ; Spelling fixes
14376         6da3a6d Port to strict C99 offsetof
14377         de7601f Port to GTK with strict C11 compiler
14378         658aa2d Port to GTK with strict C99 compiler
14379         1df7173 Avoid screen artifacts with new OS X visible bell after scrol...
14380         7a2edd3 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
14381         dca240a Suppress some Tramp tests for OSX, do not merge with master
14382         9094304 * lisp/progmodes/xref.el (xref-buffer-name, xref--window): Mo...
14383         cbedfc2 * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
14384         005ac7c * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
14385         9ab03f2 ; Auto-commit of loaddefs files.
14386         56df617 Address compilation warnings due to 2016-01-03 mml refactoring.
14387         a1ef911 * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp i...
14388         79ae7fb * lisp/dired-x.el (dired-omit-here-always): Correct error mes...
14389         253929f * lisp/dired-x.el (dired-omit-here-always): Replace undefined...
14390         ce53389 * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
14391         d6d164f Avoid segfaults due to frame image cache being absent
14392         bc7f6f6 Improve documentation of glyphless-character display
14393         6b6916e ; * src/xdisp.c (with_echo_area_buffer): Fix typos in comments.
14394         ee9a1f7 Support safe navigation operator in non-SMIE indentation code
14395         c3ed95b Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
14396         2036be4 Fix Ruby's operator precedence
14397         1d686c2 (ruby-interpolation-inside-another-interpolation): New failin...
14398         7950e1d Port to clang 3.7.0 on x86-64
14399         218ae59 * test/automated/package-test.el (package-test-signed): Tweak...
14400         ba33b7c Sync with gnulib
14401         38b276d Fix startup of "emacs -nw" on systems that CANNOT_DUMP
14402         dbfbedd Do not tokenize a comment before continuation as ';'
14403         0403620 Don't misindent arguments of a method call inside continuation
14404         e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec...
14405         8475f3d ASCII-only etc/NEWS etc.
14406         5cc6919 Fix a cacheing bug, which led to inordinately slow c-beginnin...
14407         0ce37ea Fix Isearch prompt when invoked with an argument
14408         f3033d4 Fix a typo in the Emacs manual
14409         4235d2d Curved quotes in etc/NEWS etc.
14410         26b56dc Fix some single quotes in documentation
14411         80ec484 Make lisp-completion-at-point's argument optional
14412         9d463ae Tweak the left precedence of '=>'
14413         5b705bc Indent '.' relative to the first sibling expression
14414         04f5525 Make '.' associative, for easier sexp navigation
14415         ba24c99 Revert "Simplify "Visit New File" to "New File""
14417 2016-04-02  Stefan Monnier  <monnier@iro.umontreal.ca>
14419         * lisp/erc/erc-backend.el: Use lexical-binding. Silence byte-compiler
14421         Use #' to quote functions.
14422         (erc-server-delayed-reconnect): Remove unused arg `event'.
14423         (erc-process-sentinel-2): Adjust accordingly.
14424         Don't pass `err' to condition-case if we don't use it.
14425         (define-erc-response-handler): Use add-hook rather than add-to-list.
14426         (NICK): Use cl-pushnew rather than add-to-list.
14427         (331): Remove unused var `topic'.
14428         (352): Remove unused var `hopcount'.
14430 2016-04-02  Paul Pogonyshev  <pogonyshev@gmail.com>
14432         Support macros in 'func-arity'
14434         * src/eval.c (Ffunc_arity): Support Lisp macros as well.
14436 2016-04-02  Andy Moreton  <andrewjmoreton@gmail.com>
14438         Fix compilation of Cygwin w32 port
14440         * src/w32xfns.c (init_crit, delete_crit) [HAVE_W32NOTIFY]: Only
14441         initialize and free the notification set if compiling with
14442         w32notify feature.
14444 2016-04-01  Paul Eggert  <eggert@penguin.cs.ucla.edu>
14446         Fix resize incompatibility with GTK+ master
14448         Problem reported by Matthias Clasen (Bug#23144).
14449         * src/xterm.c (handle_one_xevent) [USE_GTK]:
14450         Do not call xg_frame_resized.
14452 2016-04-01  Paul Eggert  <eggert@cs.ucla.edu>
14454         Fix check for subscript errors in module calls
14456         * src/emacs-module.c (check_vec_index): New function.
14457         (module_vec_set, module_vec_get): Use it instead of a
14458         not-strict-enough check.
14460 2016-03-31  Simen Heggestøyl  <simenheg@gmail.com>
14462         Support completion of bang-rules in CSS mode
14464         lisp/textmodes/css-mode.el (css--bang-ids): New buffer-local variable
14465         holding the list of bang-rules for the current mode.
14466         (css--font-lock-keywords): Retrieve bang-rules from `css--bang-ids'
14467         instead of computing them.
14468         (css--complete-bang-rule): New function for completing a bang-rule.
14469         (css-completion-at-point): Add support for completing bang-rules.
14470         (scss-font-lock-keywords): Change from a variable to a function in
14471         order to recompute `css--font-lock-keywords' when `css--bang-ids' has
14472         changed.
14473         (scss-mode): Set `css--bang-ids' and recompute font-lock keywords.
14475 2016-03-30  Simen Heggestøyl  <simenheg@gmail.com>
14477         Add HTML4 tags to HTML mode
14479         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML4 tags.
14480         (html-tag-help): Add short descriptions of those tags.
14482 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14484         Pacify --enable-gcc-warnings for buffer-hash etc.
14486         * src/fns.c (make_digest_string): Now static.
14487         (secure_hash): Omit unused local.
14489 2016-03-29  Oleh Krehel  <ohwoeowho@gmail.com>
14491         Add support for 7z archives
14493         * lisp/dired-aux.el (dired-compress-file-suffixes): "Z" should now
14494           also work with 7z archives.
14496         The shell command should produce a single extracted directory named
14497         after the archive's name.
14499         In case the extracted directory exists, all files will be overwritten
14500         without a prompt. This matches the expected behavior with the "tar.gz"
14501         archives.
14503 2016-03-29  Nicolas Petton  <nicolas@petton.fr>
14505         * lisp/emacs-lisp/seq.el: Require cl-lib instead of cl-extra
14507 2016-03-29  Michael Albinus  <michael.albinus@gmx.de>
14509         Fix typo in network-stream-tests.el
14511         * test/lisp/net/network-stream-tests.el
14512         (connect-to-tls-ipv6-nowait): Fix typo.
14514 2016-03-29  Nicolas Petton  <nicolas@petton.fr>
14516         New function seq-sort-by in seq.el
14518         * lisp/emacs-lisp/seq.el (seq-sort-by): New function.
14519         * test/lisp/emacs-lisp/seq-tests.el: New test for seq-sort-by.
14520         * doc/lispref/sequences.texi: Add documentation for seq-sort-by.
14522 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14524         Mention the `M-q' changes
14526 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14528         Have `M-q' not mark buffers are changed when they haven't
14530         * lisp/textmodes/fill.el (fill-paragraph): Use `buffer-hash'
14531         to avoid marking buffers as changed when they haven't.
14533 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14535         Add a new function `buffer-hash'
14537         * doc/lispref/text.texi (Checksum/Hash): Document `buffer-hash'.
14539         * src/fns.c (Fbuffer_hash): New function.
14540         (make_digest_string): Refactored out into its own function.
14541         (secure_hash): Use it.
14543         * test/src/fns-tests.el (fns-tests-hash-buffer): New tests.
14545 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
14547         Rename C names to match Lisp symbols better
14549         This was inspired by commit e65c3079c65595d95749348366af9811fafff062,
14550         which fixed a bug where the C name for a symbol disagreed with the
14551         symbol name itself.  Fix other instances of disagreements that I found.
14552         Although this doesn’t fix a bug, it should make code easier to follow.
14553         The remaining disagreements are idiosyncratic: Qminus, Qplus,
14554         Qsans__serif, Qbackquote, Qcomma, Qcomma_at, Qcomma_dot.
14555         All uses changed.
14556         * src/alloc.c (QAutomatic_GC): Rename from Qautomatic_gc.
14557         * src/dbusbind.c (QCsystem): Rename from QCdbus_system_bus.
14558         (QCsession): Rename from QCdbus_session_bus.
14559         (QCtimeout): Rename from QCdbus_timeout.
14560         (QCbyte): Rename from QCdbus_type_byte.
14561         (QCboolean): Rename from QCdbus_type_boolean.
14562         (QCint16): Rename from QCdbus_type_int16.
14563         (QCuint16): Rename from QCdbus_type_uint16.
14564         (QCint32): Rename from QCdbus_type_int32.
14565         (QCuint32): Rename from QCdbus_type_uint32.
14566         (QCint64): Rename from QCdbus_type_int64.
14567         (QCuint64): Rename from QCdbus_type_uint64.
14568         (QCdouble): Rename from QCdbus_type_double.
14569         (QCstring): Rename from QCdbus_type_string.
14570         (QCobject_path): Rename from QCdbus_type_object_path.
14571         (QCsignature): Rename from QCdbus_type_signature.
14572         (QCunix_fd): Rename from QCdbus_type_unix_fd.
14573         (QCarray): Rename from QCdbus_type_array.
14574         (QCvariant): Rename from QCdbus_type_variant.
14575         (QCstruct): Rename from QCdbus_type_struct.
14576         (QCdict_entry): Rename from QCdbus_type_dict_entry.
14577         (QCserial): Rename from QCdbus_registered_serial.
14578         (QCmethod): Rename from QCdbus_registered_method.
14579         (QCsignal): Rename from QCdbus_registered_signal.
14580         * src/emacs-module.c (Qinternal__module_call):
14581         Rename from Qinternal_module_call.
14582         * src/frame.c (Qwindow__pixel_to_total):
14583         Rename from Qwindow_pixel_to_total.
14584         * src/gnutls.c (QChostname): Rename from QCgnutls_bootprop_hostname.
14585         (QCpriority): Rename from QCgnutls_bootprop_priority.
14586         (QCtrustfiles): Rename from QCgnutls_bootprop_trustfiles.
14587         (QCkeylist): Rename from QCgnutls_bootprop_keylist.
14588         (QCcrlfiles): Rename from QCgnutls_bootprop_crlfiles.
14589         (QCmin_prime_bits): Rename from QCgnutls_bootprop_min_prime_bits.
14590         (QCloglevel): Rename from QCgnutls_bootprop_loglevel.
14591         (QCcomplete_negotiation): Rename from QCgnutls_complete_negotiation.
14592         (QCverify_flags): Rename from QCgnutls_bootprop_verify_flags.
14593         (QCverify_error): Rename from QCgnutls_bootprop_verify_error.
14594         * src/w32fns.c (Qfont_parameter): Rename from Qfont_param.
14595         (Qgnutls): Rename from Qgnutls_dll.
14596         (Qlibxml2): Rename from Qlibxml2_dll.
14597         (Qzlib): Rename from Qzlib_dll.
14598         * src/w32select.c (Qutf_16le_dos): Rename from QUNICODE.
14599         * src/window.c (Qwindow__resize_root_window):
14600         Rename from Qwindow_resize_root_window.
14601         (Qwindow__resize_root_window_vertically):
14602         Rename from Qwindow_resize_root_window_vertically.
14603         (Qwindow__sanitize_window_sizes):
14604         Rename from Qwindow_sanitize_window_sizes.
14605         (Qwindow__pixel_to_total): Rename from Qwindow_pixel_to_total.
14606         * src/xdisp.c (Qredisplay_internal_xC_functionx):
14607         Rename from Qredisplay_internal.
14608         * src/xfns.c (Qfont_parameter): Rename from Qfont_param.
14609         * src/xselect.c (Q_EMACS_TMP_): Rename from QEMACS_TMP.
14611 2016-03-26  Paul Eggert  <eggert@cs.ucla.edu>
14613         func-arity minor improvements
14615         * src/bytecode.c (get_byte_code_arity): Omit unnecessary
14616         runtime test for integer argument, unless debugging.
14617         Use EMACS_INT for Emacs integers.
14618         * src/eval.c (Ffunc_arity): Omit unused locals.
14619         Avoid side effects in ‘if’ expr.
14620         (lambda_arity): Use bool for boolean, and EMACS_INT for Emacs ints.
14622 2016-03-26  John Wiegley  <johnw@newartisans.com>
14624         Restore the fix to bug#18527 from commit d6868025
14626 2016-03-26  Martin Rudalics  <rudalics@gmx.at>
14628         Safely run window size change functions
14630         * src/window.c (run_window_size_change_functions): Use
14631         safe_call1 when running a size change function.
14632         (grow_mini_window, shrink_mini_window): Report error when
14633         minibuffer window cannot be resized.
14635 2016-03-26  Paul Pogonyshev  <pogonyshev@gmail.com>
14637         Implement 'func-arity'
14639         * src/eval.c (Ffunc_arity, lambda_arity): New functions.
14640         * src/bytecode.c (get_byte_code_arity): New function.
14641         * src/lisp.h (get_byte_code_arity): Add prototype.
14643         * doc/lispref/functions.texi (What Is a Function): Document
14644         'func-arity'.
14646         * etc/NEWS: Mention 'func-arity'.
14648         * test/src/fns-tests.el (fns-tests-func-arity): New test set.
14650 2016-03-25  Alan Mackenzie  <acm@muc.de>
14652         Fix absence of c-noise-macro-name-re, etc., in languages which don't use it
14654         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id, c-forward-type)
14655         (c-forward-declarator, c-forward-decl-or-cast-1, c-backward-over-enum-header)
14656         (c-guess-basic-syntax): Check c-opt-cpp-prefix before `looking-at'
14657         c-noise-macro-with-parens-name-re.
14659         * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): The same as for
14660         cc-engine.el.
14662         * lisp/progmodes/cc-mode.el (c-basic-common-init): Add call to
14663         `c-make-noise-macro-regexps'.
14664         (c-mode, c++-mode, objc-mode): Remove calls to `c-make-noise-macro-regexps'.
14666         * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
14667         (c-noise-macro-with-re): Initialize to "\\<\\>" rather than nil.
14669 2016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14671         (shr-insert): Respect non-breaking space in non-<pre> text
14673         * lisp/net/shr.el (shr-insert): Respect non-breaking space in
14674         non-<pre> text.
14676 2016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14678         parse-times-string doc string clarification
14680         * lisp/calendar/parse-time.el (parse-time-string): Note that
14681         we accept RFC2822 strings.
14683 2016-03-25  Marcin Borkowski  <mbork@mbork.pl>
14685         Doc string fix
14687         * lisp/calendar/parse-time.el (parse-time-tokenize): Clarify
14688         doc string and clean up code.
14690 2016-03-25  Michael Albinus  <michael.albinus@gmx.de>
14692         Cleanup file notification code in Tramp
14694         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
14695         Make `events' a list of symbols for "inotifywait".
14696         (tramp-sh-gvfs-monitor-dir-process-filter): Make event a list.
14697         Call `file-notify-handle-event' for better traces.
14698         (tramp-sh-inotifywait-process-filter): Check for expected events.
14699         Call `file-notify-handle-event' for better traces.
14701 2016-03-24  Michael Albinus  <michael.albinus@gmx.de>
14703         Adapt filenotify-tests.el according latest tests
14705         * test/lisp/filenotify-tests.el (file-notify-test02-events)
14706         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
14707         Remove superfluous `read-event' calls.
14708         (file-notify-test02-events): Expect different events under MS
14709         Windows 7 and 10.
14710         (file-notify-test04-file-validity): Move `file-notify-valid-p'
14711         check up.
14713 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14715         Merge from origin/emacs-25
14717         ad250f2 Sync with gnulib
14718         c0165ea Resurrect GNUS-NEWS autogeneration
14720         # Conflicts:
14721         #       etc/GNUS-NEWS
14722         #       lisp/Makefile.in
14724 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14726         Merge from origin/emacs-25
14728         e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
14729         38a43f1 Fix bug in displaying header line with a box face
14731 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14733         * etc/NEWS: Use straight quotes.
14735 2016-03-23  Simen Heggestøyl  <simenheg@gmail.com>
14737         Support completion of attribute values in CSS mode
14739         * lisp/textmodes/css-mode.el (css-property-alist): New defconst
14740         holding CSS identifiers and the values they can have.
14741         (css-property-ids): Compute dynamically from `css-property-alist'.
14742         (css-value-class-alist): New defconst holding property value classes
14743         and their values.
14744         (css--property-value-cache): New variable providing a cache for
14745         `css--property-values'.
14746         (css--value-class-lookup): New function for computing a list of values
14747         in a value class.
14748         (css--property-values): New function for computing a list of possible
14749         values for a CSS property.
14750         (css--complete-property-value): New function for completing a property
14751         value.
14752         (css-completion-at-point): Add support for completing property values.
14753         * test/lisp/textmodes/css-mode-tests.el: New file.
14755 2016-03-22  Wilson Snyder  <wsnyder@wsnyder.org>
14757         Sync with verilog-mode development tree.
14759         * lisp/progmodes/verilog-mode.el (verilog-imenu-generic-expression,
14760         verilog-speedbar-initialize): Automatically add verilog-mode
14761         extensions when in speedbar mode, bug1045, bug1046.  Reported by
14762         David Shleifman.
14763         (verilog-mode-map): Move `verilog-star-comment' from M-* to C-c/ to
14764         avoid conflict with `pop-tag-mark'. Reported by Ian Perryman.
14765         (verilog-read-always-signals-recurse): Fix :: notation for
14766         auto-reset signals.  Reported by Andrew Jones.
14767         (verilog-font-lock-grouping-keywords-face): Fix highlighting of
14768         grouping keywords, bug1002. Reported by Paul Sargent.
14769         (verilog-save-font-no-change-functions): Commentary and fix
14770         pre-Emacs 21 behavior.
14772 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14774         Compute a better commit message for merges
14776         Problem reported by David Engster in:
14777         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01270.html
14778         * admin/gitmerge.el (gitmerge-commit-message):
14779         Truncate the computed commit message to at most 72 characters per line.
14780         (gitmerge-maybe-resume): Don’t use "-" as the commit message for
14781         merges; use the computed commit message instead.
14783 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14785         * admin/gitmerge.el (gitmerge-skip-regexp): Add "no need to merge".
14787 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14789         Change do-not-merge pattern to "do not merge"
14791         This should avoid the problem we recently had with
14792         automatically-generated merge messages, while still letting people
14793         specify commits not to merge.
14794         * admin/gitmerge.el (gitmerge-skip-regexp): Add "do not merge".
14795         (gitmerge-highlight-skip-regexp): Fold case when searching
14796         for gitmerge-skip-regexp.
14798 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14800         Merge from origin/emacs-25
14802         91e6676 Fix an Isearch var to be a string (Bug#23038)
14803         76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
14805 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14807         -
14809         -
14811 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14813         Keep "merge" commits by default in gitmerge
14815         * admin/gitmerge.el (gitmerge-skip-regexp): Omit "merge", as it
14816         causes false positives.  See:
14817         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01234.html
14819 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14821         Assume NON_BLOCKING_CONNECT (Bug#22946)
14823         * lisp/proced.el (proced-signal-list): Omit comment about
14824         obsolete systems that do not support POSIX 1003.1-2001 signals.
14825         * src/process.c (NON_BLOCKING_CONNECT): Remove, since we can now
14826         assume POSIX 1003.1-2001 or better here.  Assume it’s defined.
14827         (connect_network_socket): Assume EINPROGRESS is defined,
14828         as that’s portable too now.
14829         (Fmake_network_process): Use bool for boolean.
14831 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14833         Fix problems caused by new implementation of sub-word mode
14835         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
14836         New functions.
14837         (word-move-empty-char-table): New variable.
14839         * etc/NEWS: Mention 'forward-word-strictly' and
14840         'backward-word-strictly'.
14842         * doc/lispref/positions.texi (Word Motion): Document
14843         'find-word-boundary-function-table', 'forward-word-strictly', and
14844         'backward-word-strictly'.  (Bug#22560)
14846         * src/syntax.c (syms_of_syntax)
14847         <find-word-boundary-function-table>: Doc fix.
14849         * lisp/wdired.el (wdired-xcase-word):
14850         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
14851         (texinfo-copy-section-title, texinfo-start-menu-description)
14852         (texinfo-copy-menu-title, texinfo-specific-section-type)
14853         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
14854         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
14855         (texinfo-insert-@end):
14856         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
14857         (texinfo-anchor, texinfo-multitable-widths)
14858         (texinfo-multitable-item):
14859         * lisp/textmodes/tex-mode.el (latex-env-before-change):
14860         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
14861         * lisp/skeleton.el (skeleton-insert):
14862         * lisp/simple.el (count-words):
14863         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
14864         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
14865         (vhdl-update-sensitivity-list, vhdl-template-block)
14866         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
14867         (vhdl-template-default-indent, vhdl-template-for-loop)
14868         (vhdl-template-if-then-use, vhdl-template-bare-loop)
14869         (vhdl-template-nature, vhdl-template-procedural)
14870         (vhdl-template-process, vhdl-template-selected-signal-asst)
14871         (vhdl-template-type, vhdl-template-variable)
14872         (vhdl-template-while-loop, vhdl-beginning-of-block)
14873         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
14874         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
14875         (verilog-forward-sexp, verilog-beg-of-statement)
14876         (verilog-set-auto-endcomments, verilog-backward-token)
14877         (verilog-do-indent):
14878         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
14879         (vera-indent-block-closing):
14880         * lisp/progmodes/simula.el (simula-context)
14881         (simula-backward-up-level, simula-forward-down-level)
14882         (simula-previous-statement, simula-next-statement)
14883         (simula-skip-comment-backward, simula-calculate-indent)
14884         (simula-find-if, simula-electric-keyword):
14885         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
14886         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
14887         (ruby-smie--forward-token, ruby-smie--backward-token)
14888         (ruby-singleton-class-p, ruby-calculate-indent)
14889         (ruby-forward-sexp, ruby-backward-sexp):
14890         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
14891         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
14892         (perl-syntax-propertize-special-constructs)
14893         (perl-backward-to-start-of-continued-exp):
14894         * lisp/progmodes/pascal.el (pascal-indent-declaration):
14895         * lisp/progmodes/octave.el (octave-function-file-p):
14896         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
14897         * lisp/progmodes/js.el (js--forward-function-decl):
14898         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
14899         (idlwave-beginning-of-block, idlwave-end-of-block)
14900         (idlwave-block-jump-out, idlwave-determine-class):
14901         * lisp/progmodes/icon.el (icon-is-continuation-line)
14902         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
14903         * lisp/progmodes/hideif.el (hide-ifdef-define):
14904         * lisp/progmodes/f90.el (f90-change-keywords):
14905         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
14906         (cperl-linefeed, cperl-electric-terminator)
14907         (cperl-find-pods-heres, cperl-fix-line-spacing)
14908         (cperl-invert-if-unless):
14909         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
14910         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
14911         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
14912         (ada-adjust-case-skeleton, ada-create-case-exception)
14913         (ada-create-case-exception-substring)
14914         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
14915         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
14916         (ada-get-indent-if, ada-get-indent-block-start)
14917         (ada-get-indent-loop, ada-get-indent-type)
14918         (ada-search-prev-end-stmt, ada-check-defun-name)
14919         (ada-goto-decl-start, ada-goto-matching-start)
14920         (ada-goto-matching-end, ada-looking-at-semi-or)
14921         (ada-looking-at-semi-private, ada-in-paramlist-p)
14922         (ada-search-ignore-complex-boolean, ada-move-to-start)
14923         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
14924         * lisp/net/quickurl.el (quickurl-grab-url):
14925         * lisp/mail/sendmail.el (mail-do-fcc):
14926         * lisp/mail/rmail.el (rmail-resend):
14927         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
14928         * lisp/mail/mail-extr.el (mail-extract-address-components):
14929         * lisp/json.el (json-read-keyword):
14930         * lisp/files.el (insert-directory):
14931         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
14932         * lisp/completion.el (symbol-under-point, symbol-before-point)
14933         (symbol-before-point-for-complete, next-cdabbrev)
14934         (add-completions-from-c-buffer):
14935         * lisp/cedet/semantic/texi.el (semantic-up-context)
14936         (semantic-beginning-of-context):
14937         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
14938         use 'forward-word-strictly' and 'backward-word-strictly' instead
14939         of 'forward-word' and 'backward-word'.
14941         [This reapplies commit c1d32a65372c72d7de4808d620eefd3214a8e92a,
14942         which was inadvertently lost by merge commit
14943         c71e7cc113ed0d5f01aaa2e441a3e3c9fbeb9fa5.]
14945 2016-03-21  Paul Eggert  <eggert@cs.ucla.edu>
14947         * etc/TODO: Minor quoting and grammar fixes.
14949         [This reapplies commit 433407d8230a8a256b26c6c7615d3921b43f59ce,
14950         which was inadvertently lost by merge commit
14951         5ab243f40e4db91586ff74b01a775a5218a1d5be.]
14953 2016-03-21  Alan Mackenzie  <acm@muc.de>
14955         Don't confuse "::" with ":" when trying to parse member initializers.
14957         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
14958         more robustly for ":" token when searching backwards for it.
14960         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
14961         variable.
14963         [This reapplies commit 9e5452f7166e3634f2d8e943815ed722e1672714,
14964         which was inadvertently lost by merge commit
14965         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14967 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14969         Ensure positive number of glyphs for margins of positive width
14971         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
14972         positive value when a non-zero width of the marginal area was
14973         requested.  (Bug#22356)
14975         [This reapplies commit 740849fe986b62a839bce4bbf67d0036fc1be0b9,
14976         which was inadvertently lost by merge commit
14977         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14979 2016-03-21  Alan Mackenzie  <acm@muc.de>
14981         In comment-dwim with style `extra-line', respect indent-tabs-mode.
14983         This fixes bug #22369.
14985         * lisp/newcomment.el (comment-make-bol-ws): New function.
14986         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
14988         [This reapplies commit 016b3d5894b8c424eab262aeefc646c6cd03a70a,
14989         which was inadvertently lost by merge commit
14990         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14992 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14994         Merge doc fixes for 'random' lost in previous merge
14996         [This reapplies part of commit
14997         3ffe81e245d854a694ae1734f1b6a995bdc5e724,
14998         which was inadvertently lost by merge commit
14999         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15000         (Bug#22202)
15002 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
15004         Unhide the --no-line-directive option to 'etags'
15006         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
15007         option.  (Bug#22306)
15009         * doc/man/etags.1: Document the --no-line-directive option.
15011         [This reapplies commit fee0526a189f43e8470d78e8374bd425890fbe6f,
15012         which was inadvertently lost by merge commit
15013         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15015 2016-03-21  Alan J Third  <alan@idiocy.org>  (tiny change)
15017         Fix picture-mode wrt double-width characters
15019         * lisp/textmodes/picture.el (picture-insert): Check the width of
15020         the character being replaced, not just that of the replacement.
15021         (Bug#1808)
15023         [This reapplies commit b70dba4e18514411ed38b5bbb846558158842ace,
15024         which was inadvertently lost by merge commit
15025         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15027 2016-03-20  Martin Rudalics  <rudalics@gmx.at>
15029         Resurrect earlier fix of resize_frame_windows
15031         * src/window.c (resize_frame_windows): Resurrect earlier fix for
15032         calculating the number of columns of the minibuffer window which
15033         was lost in subsequent merges.
15035 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15037         Move the cert files to the data directory
15039 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15041         Further empty <li> tweaks
15043         * lisp/net/shr.el (shr-tag-li): When showing several empty
15044         <li> elements, ensure that they really get inserted on a new line.
15046 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15048         Don't remove too much white space at the end of documents
15050         * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): Don't
15051         remove too much white space -- leave it on the last line (in
15052         case there's a background color).
15054 2016-03-20  Alan Mackenzie  <acm@muc.de>
15056         Amend parse-partial-sexp correctly to handle two character comment delimiters
15058         Do this by adding a new field to the parser state: the syntax of the last
15059         character scanned, should that be the first char of a (potential) two char
15060         construct, nil otherwise.
15061         This should make the parser state complete.
15062         Also document element 9 of the parser state.  Also refactor the code a bit.
15064         * src/syntax.c (struct lisp_parse_state): Add a new field.
15065         (SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
15066         (internalize_parse_state): New function, extracted from scan_sexps_forward.
15067         (back_comment): Call internalize_parse_state.
15068         (forw_comment): Return the syntax of the last character scanned to the caller
15069         when that character might be the first of a two character construct.
15070         (Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
15071         (scan_sexps_forward): Remove a redundant state parameter.  Access all `state'
15072         information via the address parameter `state'.  Remove the code which converts
15073         from external to internal form of `state'.  Access buffer contents only from
15074         `from' onwards.  Reformulate code at the top of the main loop correctly to
15075         recognize comment openers when starting in the middle of one.  Call
15076         forw_comment with extra argument (for return of syntax value of possible first
15077         char of a two char construct).
15078         (Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
15079         doc string.  Clarify the doc string in general.  Call
15080         internalize_parse_state.  Take account of the new elements when consing up the
15081         output parser state.
15083         * doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
15084         element 10.  Minor wording corrections (remove reference to "trivial
15085         cases").
15086         (Low Level Parsing): Minor corrections.
15088         * etc/NEWS: Note new element 10, and documentation of element 9 of parser
15089         state.
15091 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15093         Allow the shr test files to have trailing blank space.
15095         * .gitattributes: Allow the shr test files to have trailing
15096         blank space.
15098 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15100         Add tests for empty <ul><li>
15102 2016-03-20  Paul Eggert  <eggert@cs.ucla.edu>
15104         * src/alloc.c (purecopy): Use AUTO_STRING.
15106 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15108         Ignore invalid base64 encoded embedded images
15110         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
15111         encoded embedded images (bug#22928).
15113 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15115         Render empty <ul><li><ul> correctly
15117         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
15118         correctly (bug#22964).
15120 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15122         Fix <p> and <div> newlines with or without <li> in shr
15124         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
15125         a <li>, if we are, and don't insert newlines there.
15126         (shr-ensure-paragraph): When mixing newlines and paragraph
15127         ensurements, don't insert too many blank lines.
15128         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
15129         new line.
15131 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15133         Add more shr HTML rendering tests
15135         Add a test harness for shr HTML rendering and one test
15137 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15139         Remove code left over from when overlays were used for padding
15141         * lisp/net/shr.el (shr-previous-newline-padding-width): Remove.
15142         (shr-remove-trailing-whitespace): Ditto.
15143         (shr-insert-document): Don't call them.
15145 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15147         Remove trailing blank lines in shr
15149         * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): New function.
15150         (shr-insert-document): Use it to remove trailing blank lines
15151         at the end of documents, since these never seem to be very useful.
15153 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15155         Don't bug out on nil `patch-buf' arguments
15157         * lisp/vc/ediff.el (ediff-patch-file): Don't bug out on nil
15158         `patch-buf' arguments.
15160 2016-03-20  Ernest Adrogué  <nfdisco@gmail.com>
15162         Add a Catalan language environment
15164         * international/mule-cmds.el (locale-language-names): Map locale
15165           language name `ca' to language environment `Catalan'.
15167         * language/european.el: Add definition of language environment for
15168           the Catalan language.
15170         * leim/quail/latin-pre.el: Add quail rule to the `catalan-prefix'
15171           input method to support input of middle dot characters through
15172           composition (bug#18279).
15174 2016-03-19  Paul Eggert  <eggert@cs.ucla.edu>
15176         No need to block input when reading directories
15178         * src/dired.c: Don’t include blockinput.h.
15179         (open_directory, directory_files_internal_unwind)
15180         (directory_files_internal, file_attributes):
15181         Don’t block input here, as the reasons for blocking input should
15182         no longer apply.  See blockinput.h FIXME.  (Bug#22996).
15184 2016-03-19  Oscar Fuentes  <ofv@wanadoo.es>
15186         * lisp/vc/vc-hooks.el: Fix typo
15188 2016-03-19  Fabrice Popineau  <fabrice.popineau@gmail.com>
15190         Improve w32notify notifications
15192         * src/w32notify.c (DIRWATCH_BUFFER_SIZE): New macro.
15193         (struct notification): 'terminate' is now a HANDLE.
15194         (send_notifications): Argument is now a pointer to a
15195         notification.  Don't loop waiting for the notification to be
15196         acknowledged by the main thread; instead, just add the
15197         notification to the linked list of notifications waiting to be
15198         acknowledged.
15199         (watch_end): Don't close the directory handle.
15200         (watch_completion): Allocate a new notification structure to be
15201         added to the notifications set.  Call ReadDirectoryChangesW
15202         immediately after adding the new notification, and before sending
15203         a message to the main thread about them.
15204         (watch_worker): Don't loop calling ReadDirectoryChangesW; instead,
15205         call it just once -- it will be called again in watch_completion.
15206         Loop waiting for the main thread's indication to terminate.
15207         (start_watching): Create the event to be used to indicate to the
15208         worker thread that its should terminate.
15209         (remove_watch): Indicate to the worker thread that it should
15210         terminate.
15211         * src/w32term.c (queue_notifications): Loop over all the
15212         notifications in the linked list, processing all of them in one
15213         go.
15214         * src/w32inevt.c (handle_file_notifications): Loop over all the
15215         notifications in the linked list.
15216         * src/w32xfns.c (init_crit): Initialize the linked list of file
15217         notifications.
15218         (delete_crit): Free the linked list of file notifications,
15219         including any unprocessed notifications left in it.
15220         * src/w32term.h (struct notifications_se): New struct.
15222         * test/lisp/filenotify-tests.el (file-notify-test02-events)
15223         (file-notify-test05-dir-validity): Add read-event calls to
15224         facilitate event recognition by the main thread in batch mode.
15226 2016-03-17  Sam Steingold  <sds@gnu.org>
15228         make `vc-log-operation' buffer local to allow multiple simultaneous editing
15230 2016-03-17  Glenn Morris  <rgm@gnu.org>
15232         Simplify some rococo Gnus code that loads or tests for other libraries.
15234         * lisp/gnus/gnus-art.el (gnus-treat-ansi-sequences): Simplify default.
15235         * lisp/gnus/mml-smime.el (epg): Simply require it.
15236         (mml-smime-use): Simplify the default.  Doc fix.
15237         * lisp/gnus/mml2015.el (epg-config): Require it.
15238         (mml2015-use): Simplify the default.
15239         * lisp/gnus/smime.el (password-cache): Simply require it.
15240         (password-read-and-add): Remove declaration.
15242 2016-03-16  Glenn Morris  <rgm@gnu.org>
15244         * test/lisp/dabbrev-tests.el: Merge fix: move here from test/automated.
15246 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15247             Alex Harsanyi  <AlexHarsanyi@gmail.com>
15249         Sync with soap-client repository, version 3.1.1
15251         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix error
15252         message.
15253         (soap-find-port): Delete trailing whitespace.
15254         (soap-find-operation): Fix documentation and rename parameter.
15255         (soap-find-port): Likewise.
15256         (soap-operation-arity): Likewise.
15258         * lisp/net/soap-client.el: Update copyright years.
15259         (soap-warning): Fix docstring quoting.
15260         (soap-decode-date-time): Likewise.
15261         (soap-validate-xs-simple-type): Remove tabs for indentation.
15262         * lisp/net/soap-inspect.el: Update copyright years.
15264         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
15265         assume xsd:base64Binary values are UTF-8 strings.
15266         (soap-decode-xs-basic-type): Likewise.
15267         (soap-invoke): Document xsd:base64Binary handling.
15269         * lisp/net/soap-client.el (soap-find-port, soap-find-operation)
15270         (soap-operation-arity): new defuns
15271         (soap-invoke-internal): use soap-find-port, soap-find-operation.
15273 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
15275         Merge from gnulib
15277         This incorporates:
15278         2016-03-15 std-gnu11: improve clang support
15279         * m4/std-gnu11.m4: Copy from gnulib.
15281 2016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15283         Disable MOVE more for Dovecot
15285         * lisp/gnus/nnimap.el (nnimap-process-expiry-targets): Also
15286         disable MOVE when expirying.
15287         (nnimap-split-incoming-mail): And when splitting mail.
15289 2016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15291         Don't use MOVE on Dovecot
15293         * lisp/gnus/nnimap.el (nnimap-request-move-article): Don't use
15294         MOVE on Dovecot, since it's broken in many versions.
15295         (nnimap-quirks): Mark MOVE on Dovecot as non-working.
15297 2016-03-13  Paul Eggert  <eggert@cs.ucla.edu>
15299         Improve diff hunk headers when maintaining Emacs
15301         * .gitattributes: Improve diff hunk header support for makefiles,
15302         shell scripts, Ada, C, C++, Objective C, HTML, SHTML, XML, Java,
15303         Perl, PHP, Python, Ruby, and TeX, all of which are used in Emacs
15304         somewhere (sometimes just in test cases).
15305         * autogen.sh: Add regexes for makefiles and shell scripts.
15307 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
15309         Update handling of <bdo> per Unicode 9.0
15311         * lisp/net/shr.el (shr-tag-bdo): Wrap in FSI..PDI as well, per
15312         Unicode 9.0 changes in UAX#9, paragraph 2.7.
15314 2016-03-11  John Wiegley  <johnw@newartisans.com>
15316         Merge from origin/emacs-25
15318         facb5e2 Update Emacs manual section related to character folding
15319         4efea8e ; * etc/DEBUG: Fix a typo.  (Bug#22984)
15320         f8df21b Update admin/notes/unicode
15321         950be68 Add symref-filepattern entries for c?perl-mode
15322         8b8a6ad Don't use XRANDR 1.3 extensions if the server doesn't support them.
15323         985dacf ; NEWS update for the last change in etags
15324         741a6f8 Sync with gnulib
15325         7352c6c Rework C source files to avoid ^(
15326         a589e9a By default, etags produces unqualified Perl tag names
15327         72c7438 Indent methods with keyword names correctly
15328         28532a9 Propertize character literals and special global variables
15329                 differently
15330         a7d6f39 ; Fix last change in NEWS
15331         83b2a20 Change how /etc/NEWS presents character folding
15332         b417c5a Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding
15333                 off by default""
15334         711ca36 Properly handle lambda as read function (bug 22961)
15335         1b9d616 Propertize operator symbol names with symbol syntax class
15336         9b16bc2 Stop recognizing :#{} as symbol in ruby-mode
15337         366ec77 Allow using the left shift operator without spaces on both sides
15338         02bf7cc Properly handle unquoting in wdired (bug 22938)
15339         16cf469 ; Spelling fix and tighten up comment
15340         f50bc04 Allow splat operator before percent literal
15341         991c801 Don't apply the return value of goto-char as syntax class
15342         6e63b3e Guard against nested percent literals
15343         066f3bc Recognize iuwu-mod after an escaped newline
15344         6f7a57c Fix symbolic mode string conversion for s and t
15345         50b9826 Update 'ucs-names' database
15346         993b2fb Improve doc string of 'shell-command'
15347         b71c717 Make the code in movemail_strftime more general
15348         cc057e4 Speed up redisplay of binary files with long series of nulls
15349         e51b27e Remove the highlighting support for quoting 'like this' inside
15350                 Lisp docstrings
15351         b1abce1 Restore leading space in movemail pop output
15352         98b8d44 Fix bidi-paragraph-direction in Rmail view buffer
15353         dc9d837 Don't misindent computed property generator methods
15354         7923112 Fix mbox files produced by movemail on MS-Windows
15355         c45a1ca doc string file descriptor exhaustion fix
15356         265141b Fix Bug#22814
15358 2016-03-11  John Wiegley  <johnw@newartisans.com>
15360         Merge from origin/emacs-25
15362         620951f Fix previous fix of enlarge-/shrink-window
15363         2e78353 * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
15364         66d2717 Complete temperature units in calc-convert-temperature
15365         dbb02bf Make sure to use case-sensitive search
15366         8b01e69 Prevent infinite loop on not-well-formed xml. (Bug#16344)
15367         100346a Add the missing test case for the previous patch
15368         5aba61e Use the correct dabbrev expansion
15370 2016-03-11  Michael Albinus  <michael.albinus@gmx.de>
15372         Remove compat code in Tramp
15374         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
15375         Remove compat code.
15377 2016-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
15379         * lisp/textmodes/tex-mode.el: Complete local envs.  Use #'.
15381         Use #' for function names.
15382         (latex-complete-envnames): Include existing environments in
15383         current buffer.
15384         (latex-insert-block): Use latex-complete-envnames.
15385         (tildify-foreach-ignore-environments): Declare.
15387 2016-03-10  Alain Schneble  <a.s@realize.ch>
15389         Fix asynchronous TLS connections on MS-Windows
15391         * src/w32.c (sys_write): Don't switch the socket to blocking mode
15392         if the connection attempt is in progress.  Instead, return either
15393         EWOULDBLOCK immediately if the connection is in progress, or the
15394         error code produced by '_sys_wait_connect' if the connection
15395         failed.  Switching the socket to blocking mode was found to
15396         interfere with GnuTLS handshake.  (Bug#22789)
15398 2016-03-10  Alan Mackenzie  <acm@muc.de>
15400         Clarify the documentation of nested comments.
15402         * doc/lispref/syntax.texi (Syntax Flags): State that only comments of the same
15403         style are recognized inside nestable comments.
15404         (Low-Level Parsing): Clarify that parsing will stop after the start or end of
15405         UNNESTED comments.
15407 2016-03-10  Nicolas Richard  <youngfrog@members.fsf.org>
15409         Add new function display-buffer-reuse-mode-window
15411         * lisp/window.el (display-buffer-reuse-mode-window): New function.
15412         * doc/lispref/windows.texi (Display Action Functions): Document it.
15414 2016-03-09  Paul Eggert  <eggert@cs.ucla.edu>
15416         Minor fixes for getaddrinfo_a usage
15418         * src/process.c (Fdelete_process): Check gai_cancel return value.
15419         That way, there’s no need to invoke gai_error.  Check gai_suspend
15420         return value.
15421         (Fmake_network_process): Don’t assume gai_strerror returns a UTF-8
15422         string.  Simplify call to connect_network_socket.
15423         (check_for_dns): Avoid unnecessary initialization of local.
15425 2016-03-09  Sam Steingold  <sds@gnu.org>
15427         declare `rmail-mime-entity-truncated' and `rmail-mime-render-html-function'
15429         The former avoids a compiler warning, the latter fixes a bug whereas
15430         the variable is compiled as lexical instead of dynamic.
15432 2016-03-08  Paul Eggert  <eggert@cs.ucla.edu>
15434         Pacify --enable-gcc-warnings
15436         * src/xfns.c (x_create_tip_frame): Omit unused local.
15437         (Fx_show_tip): Don’t jump over auto initialization.
15439 2016-03-07  Martin Rudalics  <rudalics@gmx.at>
15441         Optionally reuse tooltip frames instead of deleting/recreating them.
15443         * src/frame.c (tooltip_reuse_hidden_frame): New option.
15444         * src/w32fns.c (x_create_tip_frame): Remove argument TEXT.  Fix
15445         handling of dividers.
15446         (x_hide_tip): New function.
15447         (Fx_show_tip): Try to reuse old tooltip frame when
15448         `tooltip-reuse-hidden-frame' is non-nil and frame parameters
15449         have not changed.  Insert STRING here instead of passing it to
15450         x_create_tip_frame.  Compute size of tooltip window with
15451         Fwindow_text_pixel_size.  Obey Vw32_tooltip_extra_pixels when
15452         padding tooltip window.
15453         (Fx_hide_tip): Call x_hide_tip.
15454         (Vw32_tooltip_extra_pixels): New variable.
15455         * src/xdisp.c (Fwindow_text_pixel_size): Don't return negative y
15456         value.  Fix doc-string.
15457         * src/xfns.c (x_create_tip_frame): Remove argument TEXT.  Call
15458         make_frame with mini_p argument false.
15459         (x_hide_tip): New function.
15460         (Fx_show_tip): Try to reuse old tooltip frame when
15461         `tooltip-reuse-hidden-frame' is non-nil and frame parameters
15462         have not changed.  Insert STRING here instead of passing it to
15463         x_create_tip_frame.  Compute size of tooltip window with
15464         Fwindow_text_pixel_size.
15465         (Fx_hide_tip): Call x_hide_tip.
15466         * lisp/cus-start.el (tooltip-reuse-hidden-frame): Add
15467         customization entry.
15469 2016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15471         Assume getaddrinfo in C code
15473         * admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO.
15474         All uses removed.
15475         * doc/lispref/processes.texi (Network, Network Processes), etc/NEWS:
15476         Say that port numbers can be integer strings.
15477         * lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl.
15478         (socket_connection): Assume HAVE_GETADDRINFO.
15479         * lisp/mpc.el (mpc--proc-connect):
15480         * lisp/net/network-stream.el (open-network-stream):
15481         It’s now OK to use integer strings as port numbers.
15482         * src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove.
15483         (Fmake_network_process): Assume HAVE_GETADDRINFO.
15485 2016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15487         Remove support for IRIX
15489         The IRIX port wasn’t really working anyway, and the code was
15490         getting in the way of other changes (e.g., getaddrinfo fixes).
15491         IRIX’s supplier dropped support for IRIX in 2013.
15492         * admin/CPP-DEFINES:
15493         * configure.ac (opsys):
15494         * doc/lispref/os.texi (System Environment):
15495         * etc/MACHINES, etc/PROBLEMS:
15496         * lisp/find-dired.el (find-grep-options):
15497         * lisp/lpr.el (lpr-lp-system):
15498         * lisp/ls-lisp.el (ls-lisp-emulation):
15499         * lisp/mail/rmail.el (rmail-spool-directory):
15500         * lisp/net/net-utils.el (ping-program-options):
15501         * lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p):
15502         * lisp/progmodes/ps-mode.el (ps-mode-print-function):
15503         * src/conf_post.h [IRIX6_5]:
15504         * src/emacs.c (Vsystem_type):
15505         * src/filelock.c (get_boot_time_1):
15506         * src/process.c (process_send_signal):
15507         * src/unexelf.c (unexec):
15508         Omit IRIX-specific code and/or documentation.
15509         * configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP):
15510         Remove.  All uses removed.
15511         * etc/NEWS: Document the change.
15513 2016-03-06  John Wiegley  <johnw@newartisans.com>
15515         Revert "Use colors in the VC mode lines"
15517         This reverts commit 2621c293d82c15c00d9e73a8db75d70da7d0a23b.
15519 2016-03-06  Ken Brown  <kbrown@cornell.edu>
15521         Fix Cygwin-w32 build
15523         * src/w32fns.c (funhook, setup_w32_kbdhook, remove_w32_kbdhook):
15524         Define only if WINDOWSNT, and update all uses accordingly.
15525         * src/w32term.h (check_w32_winkey_state, setup_w32_kbdhook)
15526         (remove_w32_kbdhook): Declare only if WINDOWSNT.
15527         (w32_kbdhook_active): Define as 0 if not WINDOWSNT.
15529 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
15531         Unbreak the MinGW64 build
15533         * nt/inc/ms-w32.h [MINGW_W64]: Undefine HAVE_GAI_STRERROR.  See
15534         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00130.html
15535         for the details.  Reported by Angelo Graziosi
15536         <angelo.graziosi@alice.it>.
15538 2016-03-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15540         Don't signal errors on E_AGAIN
15542         * src/gnutls.c (Fgnutls_errorp): Qgnutls_e_again is not an
15543         error now that TLS is async.
15545 2016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15547         Allow making TLS negotiation blocking
15549         * lisp/net/gnutls.el (gnutls-negotiate): Make negotiation blocking.
15551         * src/gnutls.c (Fgnutls_boot): Provide a new keyword,
15552         :complete-negotiation, to specify that we want complete
15553         negotiation even if the socket is non-blocking.
15554         (gnutls_try_handshake): Complete negotiation if given that keyword.
15556         * src/process.h (L): Added gnutls_complete_negotiation_p.
15558 2016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15560         Don't run ipv6 test on systems without ipv6
15562         * test/lisp/net/network-stream-tests.el
15563         (connect-to-tls-ipv6-nowait): Skip on systems without ipv6.
15565 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
15567         Implement getaddrinfo fallback for MS-Windows
15569         See http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01602.html
15570         for more details.
15572         * nt/mingw-cfg.site (ac_cv_func_getaddrinfo)
15573         (ac_cv_func_gai_strerror): Set to "yes", as the configure script's
15574         test program is not smart enough to auto-detect these.
15575         * nt/inc/sys/socket.h (getaddrinfo, freeaddrinfo): Redirect to
15576         sys_getaddrinfo and sys_freeaddrinfo.  Provide prototypes for
15577         sys_getaddrinfo and sys_freeaddrinfo.
15579         * src/w32.c (init_winsock): Try loading getaddrinfo and
15580         freeaddrinfo from ws2_32.dll.
15581         (sys_getaddrinfo, sys_freeaddrinfo): New functions.
15583         * lib-src/pop.c [WINDOWSNT]: Include winsock2.h, not winsock.h,
15584         and also ws2tcpip.h.
15585         (getaddrinfo, freeaddrinfo) [WINDOWSNT]: Redirect to
15586         sys_getaddrinfo and sys_freeaddrinfo, respectively.
15587         (load_ws2, sys_getaddrinfo, sys_freeaddrinfo) [WINDOWSNT]: New
15588         functions.
15590 2016-03-04  Glenn Morris  <rgm@gnu.org>
15592         * lisp/files.el: Fix recent typo.
15594         * lisp/subr.el (read-multiple-choice): Avoid free variable.
15596         * doc/lispref/files.texi (File Attributes): Fix typo.
15598 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15600         Make the describe-key prompts clearer
15602         * lisp/help.el (describe-key-briefly): Make the prompt clearer
15603         (bug#14854).
15604         (describe-key): Ditto.
15606 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15608         Allow scrolling while querying multiple choice
15610         * lisp/subr.el (read-multiple-choice): Allow scrolling the
15611         buffer while querying (bug#22827).
15613 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15615         Add accessors for `file-attributes'
15617         * doc/lispref/files.texi (File Attributes): Mention the accessors.
15619         * lisp/files.el (file-attribute-type)
15620         (file-attribute-link-number, file-attribute-user-id)
15621         (file-attribute-group-id, file-attribute-access-time)
15622         (file-attribute-modification-time)
15623         (file-attribute-change-time, file-attribute-size)
15624         (file-attribute-modes, file-attribute-inode-number)
15625         (file-attribute-device-number): New functions.
15627         * src/dired.c (Ffile_attributes): Mention the accessors (bug#22890).
15629 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
15631         Fix Bug#22814
15633         * lisp/autorevert.el (global-auto-revert-mode): Do not set
15634         `auto-revert-use-notify' to nil.
15636         * etc/NEWS: Mention this.
15638         * etc/PROBLEMS: Remove problem Bug#22814.
15640         * src/kqueue.c: Include <sys/resource.h>.
15641         (Fkqueue_add_watch): Limit the number of used file descriptors.
15642         (Bug#22814)
15644         * test/lisp/filenotify-tests.el (file-notify--test-remote-enabled)
15645         (file-notify-test00-availability, file-notify-test01-add-watch)
15646         (file-notify-test02-events, file-notify-test06-many-events):
15647         Use #' read syntax for functions.
15648         (file-notify-test05-dir-validity)
15649         (file-notify-test06-many-events): Simplify directory creation.
15650         (file-notify-test09-sufficient-ressources): New test.
15652 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15654         Fix insertion of edited servers in the dribble file
15656         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
15657         insert explicit newlines, because they're quoted (bug#22903).
15659 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15661         Move cl-seq-tests to the right place after the merge
15663         Move cl-seq-tests to the right place after the merge
15665 2016-03-03  John Wiegley  <johnw@newartisans.com>
15667         Merge from origin/emacs-25
15669         d6f6b7d * etc/AUTHORS: Update the AUTHORS file
15670         5cf7c39 authors.el updates
15671         a26f193 ; fix changelog entries
15672         fbc85c7 ; make change-history-commit
15673         06da00c Fix Bug#22859
15674         ab30bf5 ; * src/w32proc.c: Update the commentary to sys_select.
15675         1481029 Fix reordering of bidi text in an isolate inside an override
15676         60e0596 Document c-guess-basic-syntax in the CC Mode manual.
15678 2016-03-03  John Wiegley  <johnw@newartisans.com>
15680         Merge from origin/emacs-25
15682         f5d1435 Fix targets in test/automated/Makefile.in
15684 2016-03-03  John Wiegley  <johnw@newartisans.com>
15686         Merge from origin/emacs-25
15688         b6d6304 Comment on last change to define-derived-mode
15690 2016-03-03  John Wiegley  <johnw@newartisans.com>
15692         Merge from origin/emacs-25
15694         cb1e3da Also allow setting the paragraph direction to nil
15695         bbe8a89 Made the new OS X visible bell more visible.
15697 2016-03-03  John Wiegley  <johnw@newartisans.com>
15699         Merge from origin/emacs-25
15701         aae436e Uncomment the next-error-function integration in xref
15702         5f0d096 Remove the word "valid", to avoid ambiguity
15704 2016-03-03  John Wiegley  <johnw@newartisans.com>
15706         Merge from origin/emacs-25
15708         5a44bfe Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
15709         0d60bfc Fix ModelSim error parsing
15711 2016-03-03  John Wiegley  <johnw@newartisans.com>
15713         Merge from origin/emacs-25
15715         b13cab6 Add a eww command to toggle paragraph direction
15716         4e46128 * nextstep/WISHLIST: Merge into etc/TODO and remove.
15717         9e078e5 Fix char signedness issue in bidi code
15718         064adf6 * lib-src/pop.c (socket_connection): Fix format string.
15719         14060a9 Avoid inflooping in thing-at-point-looking-at
15720         098d47b * lisp/emacs-lisp/derived.el (define-derived-mode): Revert
15721                 indent change.
15722         b5db8e0 etc/PROBLEMS: Mention problems with using file descriptors
15723         ec10ef9 * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
15724         d2dd614 Remove unneeded workaround in xftfont.c
15725         9b7593c ; * etc/NEWS: Reflect latest changes in saveplace.
15726         fde0cd1 * lisp/saveplace.el (save-place-local-mode): New minor mode
15727         06a872b Fix redisplay on a TTY after 'make-frame'
15728         95f5a43 Make double-click-1 work with unbalanced parens in CC Mode.
15729                 Fixes bug#5560.
15730         7d206fc Input method polish-slash should not use keyboard translation
15731         8be32cf Fix an assertion
15732         040e0d6 Fix 'toggle-save-place'
15733         5244db2 * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
15735 2016-03-03  John Wiegley  <johnw@newartisans.com>
15737         Merge from origin/emacs-25
15739         e6a3819 Update HISTORY section in readme for the NextStep interface.
15740         f67f1ed ; * doc/lispref/modes.texi (Font Lock Basics): Minor rewording.
15741         7c81a0b Improve documentation of 'save-place-mode'
15742         cab3f0a Allocate glyph matrices for the initial frame
15743         e01c72f Fix white space in last checkin
15744         370eb67 Make `insert-pair' always leave the cursor where documented
15745         b594393 etc/NEWS: Mention the new second parameter to `package-install'
15747 2016-03-03  John Wiegley  <johnw@newartisans.com>
15749         Merge from origin/emacs-25
15751         bd58c13 Improve documentation of focus-related hooks
15752         00a4720 Further improve doc string of 'disable-point-adjustment'
15753         c582def Further adaptions in file-notify-tests.el for w32notify
15754         a1585e1 Don't bug out on localised dates in gnus-icalendar
15756 2016-03-03  John Wiegley  <johnw@newartisans.com>
15758         Merge from origin/emacs-25
15760         7bc4820 Make setf for frame-height/width work again
15762 2016-03-03  John Wiegley  <johnw@newartisans.com>
15764         Merge from origin/emacs-25
15766         6620944 (cl-union): Do not ignore :test argument when lists are equal.
15767         17dd3fb Add `isearch' to `basic-faces'
15768         c1ec743 Make $, : and @ "prefix characters" in ruby-mode
15769         e72a26e Make find-tag-default-bounds more strict
15770         1bc0e0a Minor fixes in filenotify.el
15772 2016-03-02  Alain Schneble  <a.s@realize.ch>
15774         Fix issue of inserting images on some systems
15776         * lisp/net/shr.el (shr-tag-img): Construct a non-empty range
15777         to pass to shr-image-fetched, to indicate where to insert the
15778         image.  Fixes the issue introduced with commit
15779         80852f843e69b81618f29cfb9aa4b074946cb3c4
15780         (bug#22789).
15782 2016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
15784         Ensure TLS negotiation progress
15786         * src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the
15787         number of retries so that we try for about a minute.
15789         * src/process.c (wait_reading_process_output): Ensure progress
15790         for DNS resolution and TLS negotiation.
15792 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15794         emacs-module.h slight simplification
15796         * src/emacs-module.c (emacs_init_function, emacs_subr): Move here ...
15797         * src/emacs-module.h: ... from here, as they don’t need to be public.
15798         (enum emacs_arity): Remove useless enum tag.  The enum value is
15799         used in ptrdiff_t contexts.
15801         * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
15803 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15805         * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
15807 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15809         emacs-module.c simplification and tuneup
15811         * src/emacs-module.c (CHECK_USER_PTR): New function.
15812         (module_get_user_ptr, module_set_user_ptr)
15813         (module_get_user_finalizer, module_set_user_finalizer): Use it.
15814         (module_make_global_ref, module_copy_string_contents)
15815         (module_make_string, module_vec_set, module_vec_get): Omit
15816         unnecessary runtime tests.  For example, vector sizes are always
15817         fixnums, so we don’t need to test that they are in fixnum range.
15819 2016-03-02  Philipp Stephani  <phst@google.com>
15821         Use standard checks whenever possible.
15823         This is possible in all functions where we catch signals anyway.
15825         * emacs-module.c (module_make_global_ref, module_funcall)
15826         (module_copy_string_contents, module_make_string): Use xsignal0
15827         and CHECK macros for argument checks.
15829 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15831         Deterministic build improvements
15833         * configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP,
15834         and negate its sense.  Use it via AC_SUBST, not AC_DEFINE,
15835         and have its value be either empty or --no-build-details.
15836         All uses changed.  Change option to --disable-build-details.
15837         * doc/lispref/cmdargs.texi (Initial Options):
15838         Document --no-build-details.
15839         * doc/lispref/internals.texi (Building Emacs):
15840         * etc/NEWS:
15841         Document --disable-build-details.
15842         * doc/lispref/intro.texi (Version Info): Say that
15843         emacs-build-time can be nil.
15844         * lisp/erc/erc-compat.el (erc-emacs-build-time):
15845         Now nil if details are omitted.
15846         * lisp/erc/erc.el (erc-cmd-SV):
15847         * lisp/version.el (emacs-build-time):
15848         Now nil if no build details.
15849         (emacs-version):
15850         Output build time only if build details.
15851         * src/Makefile.in (BUILD_DETAILS): New macro.
15852         (temacs, bootstrap-emacs): Use it.
15853         * src/emacs.c (build_details): New var.
15854         (standard_args, main): Support --no-build-details.
15855         (Vdeterministic_dump): Remove; all uses replaced
15856         by !build_details.
15857         (syms_of_emacs): Set Vbuild_details to a boolean, not
15858         to a Lisp_Object.
15859         * src/lisp.h (build_details): New decl.
15860         * src/sysdep.c (init_system_name): When !build_details,
15861         set system-name to nil, not to "elided".
15863 2016-03-02  Philipp Stephani  <phst@google.com>
15865         Remove build system name from deterministic dumps
15867         * configure.ac (DETERMINISTIC_DUMP): New configuration option.
15868         * lisp/version.el (emacs-build-time): Add a comment to make the
15869         build time deterministic if requested.
15870         (emacs-build-system): Make variable deterministic if requested.
15871         * src/emacs.c (main): Initialize `deterministic-dump' from the
15872         configuration option.
15873         (syms_of_emacs): New constant `deterministic-dump'.
15874         * src/sysdep.c (init_system_name): Use a constant
15875         if a deterministic dump is requested.
15877 2016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
15879         Remove buggy parse-time test
15881         * test/lisp/calendar/parse-time-tests.el (parse-time-tests):
15882         Remove the iso parse test, since it doesn't work.
15884 2016-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15886         * src/syntax.c (syntax_multibyte): Omit unnecessary parens.
15888 2016-02-29  Glenn Morris  <rgm@gnu.org>
15890         * lisp/emacs-lisp/autoload.el (autoload-timestamps):
15891         Experiment with setting to nil.
15893 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15895         Make the revert command in timer-list-mode work
15897         * lisp/emacs-lisp/timer-list.el (timer-list): Make the revert
15898         command work.
15900 2016-02-29  Glenn Morris  <rgm@gnu.org>
15902         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
15903         Fix 6-week old merge error.
15905         * lisp/emacs-lisp/autoload.el (update-file-autoloads):
15906         Ensure timestamps.
15908         * lisp/emacs-lisp/package.el (package-generate-autoloads):
15909         Disable timestamps.
15911 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15913         Allow binding `url-mime-accept-string'
15915         * lisp/url/url-http.el (url-http): Allow binding
15916         `url-mime-accept-string' (bug#22855).
15918 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15920         Add a NEWS entry for the colorful VC indicator
15922 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15924         Use colors in the VC mode lines
15926         * lisp/vc/vc-hooks.el: Make the mode line faces default to
15927         using colors to more clearly tell the user what the status is.
15929 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15931         Support <bdo> and <bdi>
15933         * lisp/net/shr.el (shr-tag-bdo): New function.
15934         (shr-tag-bdi): Ditto.
15936 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15938         Respect <html dir=auto>
15940         * lisp/net/shr.el (shr-tag-html): Respect the "auto"
15941         directional HTML setting.
15943 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15945         Default bidi paragraph direction to nil
15947         * lisp/net/eww.el (eww-display-html): Default bidi rendering
15948         to nil, so that possibly more Arabic web pages render
15949         correctly (bug#22786).
15950         (eww-setup-buffer): Ditto.
15952 2016-02-29  Mathias Dahl  <mathias.dahl@gmail.com>
15954         Preserve current column, going up/down in thumbnail view.
15956 2016-02-29  Alan Mackenzie  <acm@muc.de>
15958         Handle "noise" macros and compiler directives.
15960         * lisp/progmodes/cc-langs.el (c-symbol-char-key): New language variable.
15962         * lisp/progmodes/cc-vars.el (c-noise-macro-names)
15963         (c-noise-macro-with-parens-names): New customizable variables.
15964         (c-noise-macro-name-re, c-noise-macro-with-parens-name-re): New variables.
15965         (c-make-noise-macro-regexps): New function.
15967         * lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Adapt to treat
15968         members of c-noise-macro-names as whitespace.
15969         (c-forward-noise-clause): New function.
15970         (c-forward-keyword-prefixed-id, c-forward-type, c-forward-declarator)
15971         (c-forward-decl-or-cast-1, c-backward-over-enum-header)
15972         (c-guess-basic-syntax CASE 5A.3, CASE 5A.5, CASE 9A):
15973         Handle "noise clauses" in parallel with, e.g., "hangon key clauses".
15975         * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): Handle "noise clauses"
15976         in parallel with "prefix-spec keywords".
15978         * lisp/progmodes/cc-mode.el (c-mode, c++-mode, objc-mode): call
15979         c-make-noise-macro-regexps to initialize the internal variables.
15981         * doc/misc/cc-mode.texi ("Noise Macros"): New section documenting the new
15982         facilities.
15984 2016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
15986         Stop calling res_init
15988         Emacs shouldn’t need to call res_init any more, now that nscd or
15989         equivalent is everywhere.  On modern systems, calling res_init
15990         simply slows Emacs down.  On ancient systems lacking nscd Emacs
15991         will still work well enough with this change; it’s just that it
15992         won’t respond to changes in /etc/resolv.conf.
15993         * configure.ac (HAVE_RES_INIT): Remove.  Worry about -lresolv only
15994         when configured --with-hesiod.  Hesiod is still used; see, e.g.:
15995         https://soylentnews.org/meta/article.pl?sid=15/07/13/0255214
15996         * src/Makefile.in (LIBRESOLV): Remove.  All uses removed.
15998 2016-02-29  Glenn Morris  <rgm@gnu.org>
16000         * lisp/progmodes/grep.el (grep-save-buffers): Fix type, tweak doc.
16002         * lisp/progmodes/grep.el (grep-save-buffers): Don't autoload defcustoms.
16004 2016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
16006         * src/process.c (Fdelete_process): Simplify cast.
16008 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
16010         Use the correct background color when filling nested <divs>
16012         * lisp/net/shr.el (shr-face-background): Return the first
16013         background, because that's the one that's visible (bug#22680).
16015 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16017         Make <div> in <li> not insert extra newlines
16019         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
16020         extra newlines (bug#19587).
16022 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16024         Allow reading Gnus reports from an offline cache
16026         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
16027         Allow reading bug reports from an offline cache directory.
16029 2016-02-28  Tino Calancha  <f92capac@gmail.com>
16031         Meta + shift + Fn combos are recognized by xterm>=216.
16033         * lisp/term/xterm.el (xterm-alternatives-map): Meta + shift +
16034         Fn combos are recognized by xterm>=216 (bug#22837).
16036 2016-02-28  Simen Heggestøyl  <simenheg@gmail.com>
16038         Declare $ as an expression prefix in SCSS
16040         * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
16041         expression prefix (bug#22841).
16043 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16045         Revert "Declare $ as an expression prefix in SCSS"
16047         This reverts commit ffb33264f21e8af60b8055c47baffcf0f6c300df.
16049         Revering to fix author name.
16051 2016-02-28  Simen  <simenheg@gmail.com>
16053         Declare $ as an expression prefix in SCSS
16055         * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
16056         expression prefix (bug#22841).
16058 2016-02-28  Hugh Brown  <aardvark@saintaardvarkthecarpeted.com>
16060         Save buffers before running grep commands
16062         * lisp/progmodes/grep.el (grep-ask-about-save): New variable (bug#96).
16063         (grep, lgrep, rgrep): Use it (bug#96).
16065         * doc/emacs/building.texi (Grep Searching): Document
16066         `grep-save-buffers'.
16068         * lisp/progmodes/grep.el (grep-save-buffers): Rename from
16069         `grep-ask-about-save'.
16070         (grep--save-buffers): New function.
16071         (grep, lgrep, rgrep): Use it.
16073 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16075         Allow sorting flyspell corrections
16077         * lisp/textmodes/flyspell.el (flyspell-sort): New function (bug#2405).
16078         (flyspell-sort-corrections-functionx): New variable.
16079         (flyspell-sort-corrections-alphabetically): New function.
16080         (flyspell-notify-misspell): Use them.
16081         (flyspell-auto-correct-word): Ditto.
16082         (flyspell-emacs-popup): Ditto.
16083         (flyspell-xemacs-popup): Ditto.  Suggested by Sebastien Delafond.
16085 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16087         Wait for async DNS to complete before freeing resources
16089         * src/process.c (Fdelete_process): Wait for async DNS to
16090         complete before freeing the data structures it needs.
16092 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16094         * lisp/faces.el: Remove duplicated functions from previous patch.
16096 2016-02-28  Eli Zaretskii  <eliz@gnu.org>
16098         Fix TLS connections on MS-Windows
16100         * src/w32.c (sys_write): If 'send' returns with WSAENOTCONN, and
16101         this is a non-blocking socket whose connection is in progress, set
16102         errno to EWOULDBLOCK, as expected by GnuTLS and other callers.
16103         Avoid overwriting the errno value from 'send' by 'ioctlsocket'.
16104         Suggested by Alain Schneble <a.s@realize.ch>.  (Bug#22789)
16106 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16108         Add a NEWS entry for the read-color change
16110 2016-02-27  Jan Moringen  <jan.moringen@uni-bielefeld.de>
16112         Show the face colours when completing in `read-color'
16114         * lisp/faces.el (defined-colors-with-face-attributes): New function.
16115         (readable-foreground-color, defined-colors-with-face-attributes)
16116         (readable-foreground-color): Ditto.
16117         (read-color): Use them (bug#5305).
16119 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16121         Clean up the code in parse-time-string-chars
16123         * lisp/calendar/parse-time.el (parse-time-string-chars):
16124         Clean up the code a bit.
16126 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16128         Add some tests for parse-time.el
16130         * test/lisp/calendar/parse-time-tests.el: New file.
16132 2016-02-27  Dima Kogan  <dima@secretsauce.net>
16134         Strip out some leading whitespace when looking at logs
16136         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): When looking
16137         at expanded git logs with `vc-print-root-log' (C-x v L, then
16138         <enter> by default), Emacs was stripping out all leading
16139         whitespace from git logs.  I now strip exactly 2 leading
16140         spaces, which retains the indentation in the logs (bug#18110).
16142 2016-02-27  Dima Kogan  <dima@secretsauce.net>
16144         Use a separate history variable for align-regexp
16146         * lisp/align.el (align-regexp-history): New variable (bug#16891).
16147         (align-regexp): Use it.
16149 2016-02-27  Phil Sung  <philbert@gmail.com>
16151         Create subdirectories automatically in wdired
16153         * lisp/wdired.el (wdired-create-parent-directories): New
16154         variable (bug#6817).
16155         (wdired-create-parentdirs): New function.
16156         (wdired-do-renames): Use it.
16157         * doc/emacs/dired.texi (Wdired): Mention
16158         `wdired-create-parent-directories'
16160 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16162         Return the correct error values from gnutls.c
16164         * src/gnutls.c (emacs_gnutls_read): Set errno to the value
16165         expected by process.c.
16166         (gnutls_try_handshake): Set gnutls_p to true earlier to avoid
16167         possible race condition with the process.c socket polling
16168         functions.
16170 2016-02-27  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
16172         Don't make assumptions about mkdir.  (Bug#22822)
16174         * test/Makefile.in (MKDIR_P): New, set by configure.
16175         (%.log): Use MKDIR_P.
16177 2016-02-27  Alexander Kuleshov  <kuleshovmail@gmail.com>
16179         Support switching to hexl-mode from image-mode
16181         * lisp/image-mode.el (image-toggle-hex-display)
16182         (image-mode-to-text): New functions.
16183         (image-mode-map, image-minor-mode-map): Bind "C-c C-x" to
16184         image-toggle-hex-display.
16185         (image-mode-map): New menu item "Show as Hex".
16186         (image-mode): Update doc string and echo-area message.
16187         (image-toggle-display): Support toggle to hex.  (Bug#22453)
16189         * doc/emacs/files.texi (File Conveniences): Document
16190         'image-toggle-hex-display'.
16192 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
16194         Remove unused code in coding.c
16196         * src/coding.c (decode_eol): Remove unused code that handled the
16197         case of coding->dst_object being nil.  Replace it with an
16198         assertion.
16200 2016-02-26  Aurelien Aptel  <aaptel@suse.com>
16202         * src/syntax.c: Fix result of syntax_multibyte()
16204         The ?: operator has a lower precedence than ||.
16205         Bug introduced by commit 45b683a.
16207 2016-02-26  Paul Eggert  <eggert@cs.ucla.edu>
16209         --enable-gcc-warnings now uses -Wjump-misses-init
16211         When configuring with --enable-gcc-warnings, also enable
16212         -Wjump-misses-init, as it’s confusing to use a goto to skip over
16213         an initialization.  Fix the few places in the code that run afoul
16214         of this warning.
16215         * configure.ac (WERROR_CFLAGS): Add -Wjump-misses-init.
16216         * src/doc.c (Fsubstitute_command_keys):
16217         * src/image.c (svg_load_image):
16218         * src/regex.c (re_match_2_internal):
16219         * src/xdisp.c (redisplay_internal, redisplay_window):
16220         Don’t jump over initialization.
16222 2016-02-26  Jussi Lahdenniemi  <jussi@aprikoodi.fi>
16224         Improve the register-hotkey functionality on MS-Windows
16226         * src/w32fns.c (_WIN32_WINNT): Define to 0x0600, needed for
16227         keyboard hook functionality.
16228         Include w32inevt.h, basetyps.h and unknwn.h.
16229         (VK_ANY, WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK): New macros.
16230         (kbdhook): A new struct definition.
16231         (funhook, setup_w32_kbdhook, remove_w32_kbdhook, hook_w32_key)
16232         (check_w32_winkey_state, reset_w32_kbdhook_state): New functions.
16233         (modifier_set): Call check_w32_winkey_state if a Win key was
16234         pressed and the keyboard hook is active.
16235         (w32_wnd_proc): Don't handle Win key combinations if the keyboard
16236         hook is active.  Only register/unregister the hotkeys if the
16237         keyboard hook is not active.  When WM_CREATE is received, call
16238         setup_w32_kbdhook.  When WM_DESTROY is received, call
16239         reset_w32_kbdhook_state.
16240         (lookup_vk_code): When the keyboard hook is active, map
16241         alphanumeric characters to themselves.
16242         (w32_parse_and_hook_hot_key): Renamed from w32_parse_hot_key.  Map
16243         modified keys to VK_ANY if the keyboard hook is active.  Register
16244         Alt-x and Win-x combinations.
16245         (Fw32_shell_execute): Update doc string to reflect new
16246         functionality.  Bypass the code that posts the
16247         WM_EMACS_REGISTER_HOT_KEY message if the keyboard hook is active.
16248         (Fw32_unregister_hot_key): Bypass the code that posts the
16249         WM_EMACS_UNREGISTER_HOT_KEY message if the keyboard hook is active.
16250         (syms_of_w32fns) <w32-pass-lwindow-to-system>
16251         <w32-pass-rwindow-to-system, w32-phantom-key-code>
16252         <w32-lwindow-modifier, w32-rwindow-modifier>: Update doc strings
16253         to reflect the new functionality.
16254         * src/w32console.c (initialize_w32_display): Install the low-level
16255         keyboard hook.
16256         * src/w32inevt.c (key_event): Handle Win-x combinations only if
16257         the keyboard hook is not active.  If the hook is active, use
16258         check_w32_winkey_state instead.
16259         * src/w32term.h (setup_w32_kbdhook, remove_w32_kbdhook)
16260         (check_w32_winkey_state): Add prototypes.
16261         (w32_kbdhook_active): New macro.
16263         * doc/emacs/msdos.texi (Windows Keyboard): Update to reflect the
16264         new functionality.
16266 2016-02-25  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
16268         Add forward-sexp (and related) tests
16270         * test/lisp/emacs-lisp/lisp-tests.el: New file for testing
16271         forward-sexp and related functions (bug#22800).
16273 2016-02-25  Jan Tatarik  <jan.tatarik@gmail.com>
16275         Don't use (localised) week days in dates
16277         * lisp/gnus/gnus-icalendar.el
16278         (gnus-icalendar-event:org-timestamp): Don't use (localised)
16279         week days in the dates, because that messes up things later.
16281 2016-02-25  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
16283         Update pcomplete/find
16285         * lisp/pcmpl-gnu.el (pcomplete/find): Update to newest version
16286         (bug#10487).
16288 2016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
16290         Make parse-time-string-chars more efficient
16292         * lisp/calendar/parse-time.el (parse-time-string-chars): The
16293         string has already been downcase, so don't care about case
16294         (bug#18522).
16296 2016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
16298         Remove killed buffers from the list of Gnus buffers
16300         * lisp/gnus/gnus.el (gnus-prune-buffers): Remove killed
16301         buffers from the list of Gnus buffers (bug#18522).
16303 2016-02-25  Paul Eggert  <eggert@cs.ucla.edu>
16305         Integer overflow cleanups for ports and socklen
16307         * src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp)
16308         (get_lisp_to_sockaddr_size, Fset_process_datagram_address)
16309         (connect_network_socket):
16310         Use ptrdiff_t, not int, for signed object sizes.
16311         This addresses only a theoretical problem, as in practice these
16312         object sizes are less than 2**31, but we might as well use the
16313         same style here as elsewhere in Emacs.
16314         (string_integer_p): Remove; all uses removed.
16315         (Fmake_network_process): Check that port number is in range.
16316         When converting an integer-string service, rely on strtol
16317         rather than rechecking the string by hand.
16318         * src/process.h, src/w32.c (conv_sockaddr_to_lisp):
16319         Adjust prototypes to match.
16321 2016-02-24  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
16323         Add pcomplete support for find
16325         * lisp/pcmpl-gnu.el (pcomplete/find): Add pcomplete support
16326         for find (bug#10487).
16328 2016-02-24  Per Starbäck  <starback@stp.lingfil.uu.se>
16330         Replace XXX acronyms with draft standard ones
16332         * lisp/international/characters.el (c1-acronyms): Replace XXX
16333         entries with the acronyms PAD, HOP, SGCI from draft DIS 10646
16334         (bug#13745).
16336 2016-02-24  Kevin Ryde  <user42@zip.com.au>
16338         Make checkdoc warn about variables described as "True"
16340         * checkdoc.el (checkdoc-this-string-valid-engine): Docstrings for
16341         variables "True...", and functions "Return true...", should usually be
16342         "non-nil" (bug#15506).
16344 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
16346         Add NEWS entry for "number string" change
16348 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
16350         Allow using "number strings" as services on non-GNU systems
16352         * src/process.c (string_integer_p): New function.
16353         (Fmake_network_process): Use it to allow connecting to
16354         services specified as "993" even when getaddrbyname isn't
16355         available.
16357 2016-02-24  Michael Albinus  <michael.albinus@gmx.de>
16359         Fix problem in tramp.texi
16361         * doc/misc/tramp.texi (File name completion): Do not use
16362         @trampfn{} for IPv6 addresses.  Somehow, it results in errors
16363         during PDF creation.
16365 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16367         Make image commands available in image-mode
16369         * lisp/image-mode.el (image-mode-map): Inherit from
16370         `image-map' so that the usual image commands work.
16372 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16374         Move `o' to `O' in shr-map
16376         * lisp/net/shr.el (shr-map): `shr-save-contents' has moved
16377         from `o' to `O' to avoid collisions with `image-map'.
16379 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16381         Make setting the coding system non-blocking
16383         * src/process.c (Fset_process_filter_multibyte): Defer
16384         completing coding system setup in asynchronous processes.
16385         (Fset_process_coding_system): Ditto.
16387 2016-02-23  Gregoire Jadi  <daimrod@gmail.com>
16389         Mention `proced-toggle-auto-update' in the proced-mode doc string
16391         * lisp/proced.el (proced-mode): Mention
16392         `proced-toggle-auto-update' (bug#14341).
16394 2016-02-23  Joshua Datko  <jbdatko@gmail.com>  (tiny change)
16396         Add a fortune-message command
16398         * lisp/play/fortune.el (fortune-message): Add a command to
16399         display fortunes in the echo area (bug#14915).
16401 2016-02-23  Susanne Oberhauser  <froh@suse.com>  (tiny change)
16403         Add hideshow bindings analogous to outline mode
16405         * lisp/progmodes/hideshow.el (hs-minor-mode-map): Add bindings
16406         analogous to outline mode bindings (bug#15324).
16408 2016-02-23  Bastien Guerry  <bzg@altern.org>
16410         Allow highlighting things like @math{2^{12}}
16412         * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords):
16413         Allow highlighting things like @math{2^{12}} (bug#16390).
16415 2016-02-23  Per Bothner  <per@bothner.com>
16417         Make `C-{up,down,left,right}' work in term mode
16419         * lisp/term.el (term-raw-map): Define C-{up,down,left,right}
16420         to send the same escape sequence that xterm sends.  This makes
16421         backward-word and forward-word work in readline (bug#16746).
16423 2016-02-23  Dima Kogan  <dima@secretsauce.net>
16425         Allow ff-find-other-file (etc) to work with indirect clone buffers
16427         * lisp/find-file.el (ff-buffer-file-name): New function to
16428         allow the feature to work with indirect buffers, too
16429         (bug#16904).
16430         (ff-find-the-other-file): Use it.
16431         (ff-other-file-name): Ditto.
16432         (ff-get-file-name): Ditto.
16434 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16436         Fix error in add-change-log-entry when the entry has no newline
16438         * lisp/vc/add-log.el (add-change-log-entry): The entry in the
16439         ChangeLog may end without a new line starting with blanks.
16441 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16443         Avoid using mm-util functoins in gravatar.el
16445         * lisp/image/gravatar.el (gravatar-retrieve): Avoid using
16446         mm-util functions.
16447         (gravatar-retrieve-synchronously): Ditto.
16449 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16451         Move low-level library files from the lisp/gnus directory
16453         The files moved from lisp/gnus are:
16455         auth-source.el -> /
16456         compface.el -> /image
16457         ecomplete.el -> /
16458         flow-fill.el -> /mail
16459         gravatar.el -> /image
16460         gssapi.el -> /net
16461         html2text.el -> /net
16462         ietf-drums.el -> /mail
16463         mail-parse.el -> /mail
16464         mail-prsvr.el -> /mail
16465         mailcap.el -> /net
16466         plstore.el -> /
16467         pop3.el -> /net
16468         qp.el -> /mail
16469         registry.el -> /
16470         rfc1843.el -> /international
16471         rfc2045.el -> /mail
16472         rfc2047.el -> /mail
16473         rfc2231.el -> /mail
16474         rtree.el -> /
16475         sieve-manage.el -> /net
16476         sieve-mode.el -> /net
16477         sieve.el -> /net
16478         starttls.el -> /net
16479         utf7.el -> /international
16480         yenc.el -> /mail
16482 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16484         Allow undoing changes while doing query-replace
16486         * doc/lispref/searching.texi (Search and Replace): Mention
16487         undo (bug#21684).
16489         * lisp/replace.el (query-replace-help): Document undo.
16490         (perform-replace): Implement undo while replacing text.
16492 2016-02-23  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
16494         Highlight assignments in Makefiles more correctly
16496         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
16497         Highlight assignments preceded by a TAB character correctly
16498         (bug#20787).
16500 2016-02-23  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
16502         Use memmove instead of memcpy on overlapping regions
16504         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
16505         use memmove instead of memcpy (bug#19213).
16507 2016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
16509         Port to --enable-gcc-warnings sans getaddrinfo_a
16511         * src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED
16512         to a local unused when getaddrinfo_a is missing.
16513         Resize portbuf to size needed.  Do cheap test first.
16514         Move local to block where it’s needed.
16516 2016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
16518         Minor cleanups for async DNS etc.
16520         * src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED):
16521         Omit unnecessary parens.
16522         * src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit)
16523         (gnutls_verify_boot):
16524         Use bool for boolean.
16525         (ATTRIBUTE_FORMAT_PRINTF): Add printf attribute.
16526         * src/process.c (free_dns_request, Fmake_network_process):
16527         Allocate and free async request control block all in one go.
16528         (set_network_socket_coding_system, finish_after_tls_connection)
16529         (connect_network_socket):
16530         Now static.
16531         (conv_numerical_to_lisp): 2nd arg is now int, not unsigned.
16532         (Fmake_network_process): Use list1 for brevity.
16533         (wait_for_socket_fds): 2nd arg is now const ptr.
16534         * src/process.h (struct Lisp_Process.dns_request):
16535         Now struct gaicb *, not struct gaicb **, since there was always
16536         exactly one.  All uses changed.
16537         * src/window.c, src/window.h (run_window_configuration_change_hook):
16538         Now static.
16540 2016-02-23  Carlos Pita  <carlosjosepita@gmail.com>
16542         Allow more shell script defun forms
16544         * lisp/progmodes/sh-script.el (sh-mode): Allow more shell
16545         script defun forms, like function name () {...} (bug#19754).
16547 2016-02-23  Martin Rudalics  <rudalics@gmx.at>
16549         Fix `window-configuration-change-hook' and `window-size-change-functions'
16551         (1) Run `window-configuration-change-hook' if and only if at least
16552         one window was deleted or created or shows another buffer since
16553         last redisplay.
16555         (2) Run `window-size-change-functions' if and only if at least
16556         one window changed its size since last redisplay (in a few cases
16557         `window-size-change-functions' will also run when no window
16558         changed its size).
16560         (3) Provide two functions `window-pixel-height-before-size-change'
16561         and `window-pixel-width-before-size-change' that allow to easily
16562         detect which window changed size.
16564         * src/frame.h (struct frame): New boolean member
16565         window_configuration_changed.
16566         (FRAME_WINDOW_SIZES_CHANGED): Remove macro.
16567         (FRAME_WINDOW_CONFIGURATION_CHANGED): New macro.
16568         * src/frame.c (adjust_frame_size): Don't run
16569         `window-configuration-change-hook'.
16570         * src/window.h (struct window): New fields
16571         pixel_width_before_size_change and pixel_height_before_size_change.
16572         (WINDOW_INTERNAL_P): New macro.
16573         * src/window.c (Fwindow_pixel_width_before_size_change)
16574         (Fwindow_pixel_height_before_size_change): New functions.
16575         (Fdelete_other_windows_internal, Fwindow_resize_apply)
16576         (resize_frame_windows, Fsplit_window_internal)
16577         (Fdelete_window_internal, grow_mini_window)
16578         (shrink_mini_window, Fresize_mini_window_internal): Don't call
16579         FRAME_WINDOW_SIZES_CHANGED.
16580         (window_size_changed, window_set_before_size_change_sizes)
16581         (run_window_size_change_functions): New functions.
16582         (make_window): Initialize pixel_width_before_size_change and
16583         pixel_height_before_size_change.
16584         (Fdelete_window_internal): Don't call
16585         run_window_configuration_change_hook.
16586         (struct saved_window): Add pixel_height_before_size_change and
16587         pixel_width_before_size_change.
16588         (Fset_window_configuration): Try to identify window configuration
16589         changes correctly so run_window_configuration_change_hook and
16590         run_window_size_change_functions run only if configuration and size
16591         really changed.
16592         (save_window_save): Set the pixel_height_before_size_change and
16593         pixel_width_before_size_change fields.
16594         (Vwindow_size_change_functions): Move here definiton from xdisp.c.
16595         * src/xdisp.c (prepare_menu_bars, redisplay_internal): Call
16596         run_window_size_change_functions.
16597         (Vwindow_size_change_functions): Move definition to window.c.
16598         * src/xfns.c (x_set_menu_bar_lines): Don't call
16599         run_window_configuration_change_hook.
16600         * doc/lispref/windows.texi (Window Sizes): Document new
16601         functions `window-pixel-height-before-size-change' and
16602         `window-pixel-width-before-size-change'.
16603         (Window Configurations): Mention that this may trigger
16604         execution of `window-size-change-functions' although no window
16605         changed size.
16606         (Window Hooks): Update descriptions of `window-size-change-functions'
16607         and `window-configuration-change-hook'.
16609 2016-02-23  Drew Adams  <drew.adams@oracle.com>
16611         (ls-lisp-insert-directory): Make -B work
16613         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
16614         (bug#20776).
16616 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16618         Fix typo in message-setup-fill-variables
16620         * lisp/gnus/message.el (message-setup-fill-variables): Fix
16621         typo in a recent checkin that used `setq-default' instead of
16622         `setq-local' (bug#22781).
16624 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16626         `message-dont-reply-to-names' can also be a list of regexps
16628         * lisp/gnus/message.el (message-dont-reply-to-names):
16629         `message-dont-reply-to-names' can also be a list of regexps (bug#22773).
16631 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
16633         Make buttons in header lines work
16635         * lisp/help-mode.el (help-button-action): `help-xref-button' in
16636         header line doesn't work (bug#21024).
16638 2016-02-23  Vasilij Schneidermann  <v.schneidermann@gmail.com>
16640         Place apples randomly in Snake
16642         * lisp/play/snake.el (snake-score): New variable (bug#21359).
16643         (snake-set-dot): Place the apples randomly.
16645 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16647         Allow optional parameter to be nil
16649         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Allow the
16650         optional parameter to be nil (bug#21576).
16652 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16654         Completely ignore buffers with no name when copying file names
16656         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Completely
16657         ignore buffers with no file name. (bug#21577).
16659 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16661         Make spelling of "Eshell" consistent
16663         * lisp/eshell/esh-mode.el (eshell-mode): Spell it "Eshell".
16664         * lisp/eshell/eshell.el (eshell-command):
16665         Spell it "Eshell" (bug#21678).
16667 2016-02-23  Simen Heggestøyl  <simenheg@gmail.com>
16669         Allow pretty lambdas in Scheme mode
16671         * lisp/progmodes/scheme.el (scheme-mode-variables): Borrow
16672         `prettify-symbols-alist' from Lisp mode (bug#21679).
16674 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16676         Rename lisp--prettify-symbols-alist
16678         * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist):
16679         Rename from `lisp--prettify-symbols-alist' since we're going
16680         to use it in Scheme mode, too.
16681         (lisp-mode-variables): Use it.
16683 2016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>  (tiny change)
16685         Remove spurious newline in package list
16687         * lisp/emacs-lisp/package.el (describe-package-1): Remove
16688         spurious newline (bug#21706).
16690 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16692         Revert "Remove spurious newline in package list"
16694         This reverts commit fad14c289d36a2c61e0fd34105ebb1f62c80d71d.
16696 2016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>
16698         Remove spurious newline in package list
16700         * lisp/emacs-lisp/package.el (describe-package-1): Remove
16701         spurious newline (bug#21706).
16703 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16705         Keep the position in the process buffer when deleting processes
16707         * lisp/simple.el (process-menu-delete-process): Keep the
16708         position in the buffer after killing a process (bug#21759).
16710 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16712         Require that the buffer that we're trying to patch exist
16714         * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
16715         buffer that we're trying to patch exist (bug#21852).
16717 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16719         Require that the buffer that we're trying to patch exist
16721         * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
16722         buffer that we're trying to patch exist (bug#21852).
16724 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16726         Be more verbose when changing frame mode in ediff
16728         * lisp/vc/ediff-util.el (ediff-toggle-multiframe): Say what
16729         mode we toggled to (bug#21853).
16731 2016-02-22  Łukasz Stelmach  <stlman@poczta.fm>
16733         Encode header strings before printing
16735         * lisp/ps-print.el (ps-generate-header-line): Encode the
16736         header strings to avoid problems with non-ASCII headers
16737         (bug#22611).
16739 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16741         Test message-strip-subject-trailing-was
16743         * test/lisp/gnus/message-test.el (message-strip-subject-trailing-was):
16744         New test (bug#22632).
16746 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16748         Make use of the `ert-with-function-mocked' macro
16750         * test/lisp/calendar/icalendar-tests.el (icalendar--create-uid):
16751         * test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9781): Use
16752         `ert-with-function-mocked' instead of implementing the fragile
16753         `unwind-protect' logic openly.
16755 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16757         message-strip-subject-trailing-was: Refactor
16759         * lisp/gnus/message.el (message-strip-subject-trailing-was): Refactor
16760         the function replacing sequence of `if' calls with a mixture of `or'
16761         and `and' calls instead.  This makes it shorter and containing less
16762         internal state thus easier to follow.
16764 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16766         ert-with-function-mocked: New macro
16768         * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): New macro which
16769         allows evaluating code while particular function is replaced with
16770         a mock.  The original definition of said function is restored once the
16771         macro finishes.
16773 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16775         Move Gnus functions frm rfc1843 to new file gnus-rfc1843
16777         * lisp/gnus/gnus-rfc1843.el: New file for Gnus/rfc1843
16778         interface functions.
16780         * lisp/gnus/rfc1843.el: Move all Gnus-specifig functions to
16781         gnus-rfc1843.
16783 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16785         Don't use mm-util functions in qp.el
16787         * lisp/gnus/qp.el (quoted-printable-decode-region): Don't use
16788         mm-util functions.
16789         (quoted-printable-encode-string): Ditto.
16790         (quoted-printable-encode-region): Ditto.
16792 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16794         Don't require mm-util
16796         * lisp/gnus/ietf-drums.el (mm-util): Don't require.
16798 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16800         Remove Gnus functions from auth-source.el
16802         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
16803         Remove usage of Gnus utility function.
16804         (mm-util, gnus-util): Don't require.
16806 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16808         Allow deleting all non-matching cookies
16810         * lisp/url/url-cookie.el (url-cookie-delete-cookies): Allow
16811         keeping matching cookies (bug#22720).
16813 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16815         Make (setf (image-property ...)) return VALUE
16817         * lisp/image.el (image--set-property): Return VALUE, not IMAGE.
16819 2016-02-22  John Wiegley  <johnw@newartisans.com>
16821         Merge from origin/emacs-25
16823         a9c48d5 Additional fixes for file notification
16824         6bd9d69 Fix documentation of 'global-disable-point-adjustment'
16825         8c22ac9 ; Spelling fix
16826         2975784 Set file modes of pinentry socket for extra safety
16827         2667b3e Clarify GnuPG version compatibility chapter
16828         5e34c36 Revert "Change the default socket location for pinentry"
16829         e19c1c3 Kill off xref--display-history
16830         5698947 Keep the xref buffer visible until the user quits it explicitly
16831         e34fbde Change the default socket location for pinentry
16832         5f89658 Mention how to enable pinentry feature
16833         db51224 Sync with gnulib
16834         aa5a794 Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
16835         2d8b2fd Restore point when writing semantic table to disk
16836         27d3430 Mention pinentry.el in epa manual
16837         5baa001 Fix Bug#22736
16838         7261355 Grammar fix in doc string
16839         d0f3b18 Naming fix for consistency
16840         74ec92d Prefer customized value for GnuPG executable
16841         ea0b604 Fix memory reservation on MS-Windows
16842         c5f72aa Update NextStep readme and add wish list.
16843         6de26a7 Report also result in `file-notify--test-event-handler'
16844         5d17ae7 Improve file-notify-test08-watched-file-in-watched-dir
16845         1cb1268 Fix todo-mode item date editing bugs
16846         1e996cf Fix "[:upper:]" for non-ASCII characters
16847         896f993 Allow customising the article mode cursor behavior
16848         24c1c1d Use pop-to-buffer-same-window in woman.el
16849         2a75f64 New filenotify test for bug#22736
16850         c9bccf7 Report critical battery errors
16851         d675db9 Make eww message toggling message clearer
16852         5e0bb40 * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
16853         fa8fd65 ; Improve character-folding entries in NEWS
16854         3722a69 Fix bugs in window resizing code
16855         289d5c6 Fix decoding DOS EOL in a unibyte buffer
16856         2abcb06 Correct c-parse-state cache manipulation error.
16857         14aec91 Take advantage of new GnuPG version check function
16858         e80c2a7 Make GnuPG version check robuster
16859         15a9464 Fix x-load-color-file pointer signedness
16860         132dbf0 * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
16861         78ab6f1 Follow convention for greek letter constants.
16862         106b5bb Add Stefan-Boltzmann constant to calc units table.
16863         b96baa8 * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
16864         5f91cf9 Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
16865         2d40f7d Fix soffice UserInstallation-URL for Windows
16866         b1a3ebe Fix display of <pre> elements
16867         57d0e3d ; * lisp/help-fns.el: Remove outdated comment.
16868         7a0628d ; * admin/make-tarball.txt: Mention cleaning.
16870 2016-02-22  Oleh Krehel  <ohwoeowho@gmail.com>
16872         lisp/calendar/appt.el (appt-delete-window): Check if buffer is live
16874         * lisp/calendar/appt.el (appt-delete-window): Avoid trying to delete a
16875           non-existing buffer.
16877 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16879         Mention the further asynchronousity
16881 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16883         Fix async TLS boot problem
16885         * src/process.c (wait_reading_process_output): Verify the boot
16886         of the correct process.
16888 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16890         Clean up forgotten text in manual
16892         * doc/lispref/display.texi (Defining Images): Remove example
16893         forgotten when making previous change.
16895 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16897         Clean up debugging code
16899         * src/process.c (Fmake_network_process): Remove debugging printf.
16900         (wait_for_socket_fds, wait_while_connecting)
16901         (wait_for_tls_negotiation): Remove newlines from messages.
16903 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16905         Fix merge conflicts in network-stream-tests.el
16907 2016-02-21  Paul Eggert  <eggert@penguin.cs.ucla.edu>
16909         Port recent filevercmp addition to MS-Windows
16911         Reported by Andy Moreton in:
16912         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01302.html
16913         * nt/gnulib.mk (libgnu_a_SOURCES): Add filevercmp.c.
16914         (EXTRA_DIST): Add filevercmp.h.
16916 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16918         add_to_log expects Lisp parameters
16920 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16922         Mention sentinels in conjunction with :nowait t.
16924         * doc/lispref/processes.texi (Network Processes): Mention the
16925         recommended way of using sentinels with :nowait t.
16927 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16929         Mention in the doc strings that process functions may block
16931         (Fprocess_contact, Fprocess_datagram_address)
16932         (Fset_process_datagram_address, Fset_network_process_option)
16933         (Fprocess_send_region, Fprocess_send_string): Mention that the
16934         functions may block.
16935         (Fset_process_coding_system): Ditto.
16937 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16939         Add blocker warnings to the *Messages* buffer
16941         * src/process.c (wait_for_socket_fds): Add warning to the log.
16942         (wait_while_connecting): Ditto.
16943         (wait_for_tls_negotiation): Ditto.
16945 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16947         Rework the image property getter/setters
16949         * doc/lispref/display.texi (Defining Images): Document the
16950         renamed `image-get/set-property' functions.
16952         * lisp/image.el (image--set-property): Rename from
16953         image-set-property.
16954         (image-property): Declare a setf form.
16955         (image-property): Rename from `image-get-property'.
16957 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
16959         Use Gnulib filevercmp for version comparison
16961         * admin/merge-gnulib (GNULIB_MODULES): Add filevercmp.
16962         * doc/lispref/strings.texi (Text Comparison):
16963         * etc/NEWS, src/fns.c:
16964         * test/src/fns-tests.el (fns-tests-string-version-lessp):
16965         Rename newly-introduced function to string-version-lessp, by
16966         analogy with strverscmp.
16967         * lib/filevercmp.c, lib/filevercmp.h: New files, copied from gnulib.
16968         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
16969         * src/fns.c: Include <filevercmp.h>.
16970         (gather_number_from_string): Remove.
16971         (Fstring_version_lessp): Reimplement via filevercmp.
16973 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16975         Add a function to delete URL cookies
16977         * doc/misc/url.texi (Cookies): Document
16978         url-cookie-delete-cookies.
16980         * lisp/url/url-cookie.el (url-cookie-delete-cookies): New function.
16982 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16984         Avoid integer overflows in string-numeric-lessp
16986         * src/fns.c (Fstring_numeric_lessp): If we have an integer
16987         overflow, compare lexicographically.
16989 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16991         Add the string-numeric-lessp function
16993         * doc/lispref/strings.texi (Text Comparison): Document
16994         `string-numerical-lessp'.
16996         * src/fns.c (Fstring_numeric_lessp): New function.
16997         (gather_number_from_string): Helper function for that function.
16999         * test/src/fns-tests.el (fns-tests-string-numeric-lessp): Add tests.
17001 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
17003         Clarify levels of :nowait t.
17005         * doc/lispref/processes.texi (Network Processes): Mention
17006         levels of asynchronicity.
17008 2016-02-20  Alain Schneble  <a.s@realize.ch>
17010         Respect DNS timeouts
17012         * src/process.c (check_for_dns): If the async DNS request
17013         failed and the associated process is still in "connect" state,
17014         deactivate the process and set status to "failed".
17016 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17018         Add a frame around the placeholder image in shr
17020         * lisp/net/shr.el (shr-make-placeholder-image): Add a frame
17021         around the image.
17023 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17025         Use placeholder images in shr to avoid text moving around
17027         * lisp/net/shr.el (shr-rescale-image): Pass in width/height
17028         from the HTML.
17029         (shr-tag-img): Ditto.
17030         (shr-string-number): New function.
17031         (shr-make-placeholder-image): Make placeholder images.
17032         (shr-tag-img): Insert them if we have SVG support.
17034 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17036         Get explicit width/height + scale computations right
17038         * src/image.c (compute_image_size): :scale should also be
17039         taken into account when :width and :height are explicitly names.
17041 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17043         New functions for getting and setting image properties
17045         * doc/lispref/display.texi (Defining Images): Document
17046         image-get/set-property.
17048         * lisp/image.el (image-set-property): New function.
17049         (image-get-property): Ditto.
17051 2016-02-19  Alan Mackenzie  <acm@muc.de>
17053         Await the final mouse event in C-h c and C-h k.
17055         * lisp/help.el (describe-key-briefly, describe-key): On receiving a mouse
17056         event, keep reading further events until a timeout occurs, to ensure we have
17057         the complete mouse event from the user.
17059 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17061         Add a library for creating and manipulating SVG images
17063         * doc/lispref/display.texi (SVG Images): New section.
17065         * lisp/svg.el: New file.
17067 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17069         Fix up tests for async TLS negotiation
17071 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17073         Fix coding system setup
17075         * src/process.c (set_network_socket_coding_system): Pass in
17076         the host/service that's been computed already.
17078 2016-02-18  Michael Albinus  <michael.albinus@gmx.de>
17080         Reference `tramp-theme' in GNU ELPA.
17082         * doc/misc/tramp.texi (Frequently Asked Questions):
17083         Reference `tramp-theme' in GNU ELPA.
17085 2016-02-17  Lars Ingebrigtsen  <larsi@gnus.org>
17087         Verify the TLS connection asynchronously
17089         * src/gnutls.c (gnutls_verify_boot): Refactor out into its own
17090         function so that we can call it asynchronously.
17091         (Fgnutls_boot): Use it.
17093         * src/process.c (wait_reading_process_output): Verify the TLS
17094         negotiation.
17096 2016-02-16  Simen Heggestøyl  <simenheg@gmail.com>
17098         Add column layout module to CSS property list
17100         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
17101         CSS Multi-column Layout Module.
17103 2016-02-16  Michael Albinus  <michael.albinus@gmx.de>
17105         Minor cleanup in CONTRIBUTE and test/README
17107         * CONTRIBUTE: Remove detailed explanation about testing; this
17108         is now in test/README.
17110         * test/README: Don't mention automated/ subdirectory.
17112 2016-02-15  Glenn Morris  <rgm@gnu.org>
17114         Provide 'term/name in lisp/term files.
17116         * lisp/term/AT386.el, lisp/term/bobcat.el, lisp/term/cygwin.el:
17117         * lisp/term/internal.el, lisp/term/iris-ansi.el, lisp/term/linux.el:
17118         * lisp/term/lk201.el, lisp/term/news.el, lisp/term/ns-win.el:
17119         * lisp/term/pc-win.el, lisp/term/rxvt.el, lisp/term/screen.el:
17120         * lisp/term/sun.el, lisp/term/tty-colors.el, lisp/term/tvi970.el:
17121         * lisp/term/vt100.el, lisp/term/vt200.el, lisp/term/w32-win.el:
17122         * lisp/term/w32console.el, lisp/term/wyse50.el, lisp/term/x-win.el:
17123         For consistency, provide 'term/name in all files that don't already.
17125 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17127         Deactivate the correct process
17129         * src/process.c (wait_reading_process_output): Deactivate the
17130         correct process on failure.
17132 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17134         Implement asynch TLS negotiation
17136         * src/gnutls.c (gnutls_try_handshake): Factor out into its own
17137         function.
17138         (emacs_gnutls_handshake): Use it.
17139         (emacs_gnutls_read): Just return instead of retrying the handshake.
17141         * src/process.c (finish_after_tls_connection): Factor out
17142         into its own function.
17143         (connect_network_socket): Use it.
17144         (wait_reading_process_output): Retry TLS handshakes.
17145         (wait_reading_process_output): Defer sentinel until TLS completes.
17147 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17149         Simplify the DNS resolution loop a bit
17151         * src/process.c (wait_reading_process_output): Simplify the
17152         DNS resolution loop a bit.
17154 2016-02-15  Alain Schneble  <a.s@realize.ch>
17156         Loop over the process list instead of maintaining a separate list
17158         * src/process.c: Remove declaration/definition of dns_processes list.
17159         * src/process.c (wait_reading_process_output): Loop over all processes in
17160         Vprocess_alist instead of dns_processes, to check for completed DNS
17161         requests.
17163 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17165         Allow setting the filter masks later
17167         * src/process.c (Fset_process_filter): Don't set the socket
17168         masks here, because we may not have a socket yet.
17169         (set_process_filter_masks): New function.
17170         (connect_network_socket): Set the filter masks here.
17172 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17174         Remove debugging
17176 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17178         Ensure we always free DNS resources when deleting a process
17180         * src/process.c (free_dns_request): Factor out into own function.
17181         (Fdelete_process): When deleting a process, free any DNS
17182         structures associated with it.
17183         (check_for_dns): Always free all DNS resources.
17185 2016-02-15  Alain Schneble  <a.s@realize.ch>
17187         Don't block in set-process-window-size
17189         * src/process.c (set-process-window-size): Explicitly return Qnil when
17190         called with network processes as set_window_size won't work anyway on
17191         socket fds.  As a welcome side effect, this makes the blocking
17192         wait_for_socket_fds call obsolete.
17194 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17196         Do most of the coding system setup earlier
17198         * src/process.c (Fmake_network_process): Set the read/write
17199         coding systems here, so that special bindings work.
17200         (Fmake_network_process): Complete the coding system setup here.
17202 2016-02-15  John Wiegley  <johnw@newartisans.com>
17204         Merge from origin/emacs-25
17206         d4b93e1 Minor fixes in global-auto-composition-mode
17207         02b037b Allow arithmetic operators inside C++ template constructs.
17208         44b16f6 Avoid crashes in semi-malformed 'condition-case'
17209         652e5b4 Allow arithmetic operators inside C++ template constructs.
17210         d9ea795 Fix regression with 'recent-keys' and keyboard macros
17211         903603f Fix wording in a doc-view.el comment
17212         cf79616 ; Spelling fixes
17213         f8bf1b3 CONTRIBUTE cleanups and updates
17214         f3aaca3 Port USE_STACK_LISP_OBJECTS fix to Clang
17215         1834ac7 Port to x86 GCC 4.3.1 and earlier
17216         8482949 Fix point movement under 'scroll-conservatively'
17217         c1313b5 Replace colon in file name (not legal on Windows)
17218         f7af26c Fix a typo in edt.texi
17219         8badf95 Make 'mmap_realloc' on MS-Windows more reliable
17220         856cd94 Grep alias `all' shall not match parent directory
17222 2016-02-15  John Wiegley  <johnw@newartisans.com>
17224         Merge from origin/emacs-25
17226         dacde7e * etc/AUTHORS: Update the AUTHORS file
17227         478ca5d ; fix changelog entries
17228         2b7d006 ; make change-history-commit
17229         851decb * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
17230         47896c8 ; Improve commentary in insdel.c
17231         53ca1e1 Index tilde characters in names of backup files
17232         d97f522 Document deprecation of hi-lock-mode's 'C-x w' bindings
17233         b55f06d ; * etc/NEWS: Use double spaces to end a sentence.
17234         28bb214 Announce that the `C-x w' bindings are deprecated
17235         1c98f98 Suppress GNUstep hardening
17236         d82f24b Fix redisplay after a large insertion
17237         85a2753 Revert "Fix gnus-group-get-new-news-this-group on group with
17238                 closed server"
17239         e8e3db0 ; Improve merge documentation in CONTRIBUTE
17240         5be9989 * lib-src/make-docfile.c: Include stdarg.h.
17241         c95ebbf Extend gpm-mouse-mode's doc string and doc to point out
17242                 limitations.
17244 2016-02-15  John Wiegley  <johnw@newartisans.com>
17246         Merge from origin/emacs-25
17248         f5d6b9b Revert "Support integer image rotation and respect EXIF rotations"
17249         afe7d1f Revert "Document EXIF image rotation"
17250         c6f377c Document OS X LANG default
17251         eb4a18c Set locale when run from OS X GUI
17252         456c0a3 make-docfile cleanup for I/O, etc.
17253         25ec995 Memory-management cleanup in make-docfile
17254         02d925e Kevin Gallagher has new email address
17255         4ef153b Improve doc strings of 'forward/backward-word-strictly'
17256         3ad05a0 Describe Makefile test targets in test/README
17258 2016-02-15  John Wiegley  <johnw@newartisans.com>
17260         Merge from origin/emacs-25
17262         10b8ed2 Document EXIF image rotation
17263         0f60049 Support integer image rotation and respect EXIF rotations
17264         7dd45b6 Quote table names for postgres listings (sql-mode)
17265         6bac035 * lisp/replace.el (replace-match-maybe-edit): Make arg
17266                 `backward' optional.
17267         ee909aa * lisp/simple.el (next-line-or-history-element): Reset
17268                 temporary-goal-column.
17269         0a289d3 Suppress ACL ops if configured with --disable-acl
17270         1a9dbf5 Mention web bugs
17271         fa55da2 Make mm-html-blocked-images default to "" again
17273 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17275         Protect against initial handshake failures
17277         * src/process.c (connect_network_socket): Mark the connection
17278         as failed if the handshake didn't succeed yet.  This should be
17279         reworked later.
17281 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17283         Call the network security manager after doing TLS negotiation
17285         * lisp/net/network-stream.el (network-stream-open-tls):
17286         Postpone NSM verification when running async.
17288         * src/process.c (Fset_process_filter): This function doesn't
17289         need to wait.
17290         (connect_network_socket): Set the process status to "run" only
17291         after TLS negotiation.
17292         (wait_for_socket_fds): Take a name parameter for more debugging.
17293         (wait_reading_process_output): Don't change status to "run"
17294         unless TLS negotiation has finished.
17295         (send_process): Wait for the process here instead of
17296         send_process_string.
17297         (connect_network_socket): Call the network security manager.
17299 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17301         Remove some #ifdefs and update documentation
17303         * doc/lispref/processes.texi (Network Processes): Remove
17304         mention of `dns'.
17306         * lisp/net/network-stream.el (open-network-stream): Remove
17307         mention of `dns'.
17309         * src/process.c (Fset_process_filter)
17310         (Fset_process_window_size, Fprocess_contact)
17311         (Fprocess_datagram_address, Fset_process_datagram_address)
17312         (Fset_network_process_option, Fprocess_send_region)
17313         (Fprocess_send_string, Fset_process_coding_system)
17314         (Fset_process_filter_multibyte): Remove the #ifdef
17315         HAVE_GETADDRINFO_A checks.
17316         (Fprocess_send_string): Wait for TLS negotiation.
17317         (wait_for_tls_negotiation): New function.
17318         (send_process): Remove the TLS boot check.
17320         * src/process.c (Fmake_network_process): Ditto.
17322 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17324         Use :nowait t in url-gw
17326         * lisp/url/url-gw.el (url-open-stream): Just use :nowait t,
17327         since we're not differentiating.
17329 2016-02-14  Alain Schneble  <a.s@realize.ch>
17331         Add blockers to process functions
17333         * src/process.c (set-process-filter, set-process-window-size,
17334         process-contact, process-datagram-address, set-process-datagram-address,
17335         set-network-process-option): Make functions wait (block) on network
17336         process until pending DNS requests have been processed and associated
17337         socket initialized.
17339         * src/process.c (process-send-region, process-send-string,
17340         process-send-eof): Make functions wait (block) while network process is
17341         in connect state.
17343 2016-02-14  Simen Heggestøyl  <simenheg@gmail.com>
17345         Add fragmentation module to CSS property list
17347         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
17348         CSS Fragmentation Module Level 3.
17350 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
17352         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
17354 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
17356         New function seq-map-indexed
17358         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
17359         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
17361 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17363         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
17365 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17367         Fix problem with wrong encoding of non-ASCII message bodies
17369         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
17370         multibyteness before encoding the data.
17372 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17374         Remove codepage setup code from mm-util
17376         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
17377         (mm-codepage-iso-8859-list): Remove.
17378         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
17379         (mm-setup-codepage-ibm): Remove.
17380         (mm-charset-eval-alist): Remove the code pages from the
17381         default value.
17383 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17385         Remove compat code for older Emacsen
17387         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
17388         XEmacs compat code.
17390         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
17391         unused compat function.
17392         (gnus-sync-json-plist-p): Ditto.
17394         * lisp/gnus/message.el (message-default-charset): Make obsolete.
17395         (message-info): Remove compat code.
17396         (message-setup-fill-variables): Remove kludge needed earlier
17397         to not overwrite `normal-auto-fill-function'.
17398         (message-split-line): Remove compat code.
17400         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
17401         compat code.
17403 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17405         Remove some compat functions from gmm-utils.el
17407         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
17408         compat code.
17409         (gmm-image-search-load-path): Remove.
17410         (gmm-image-load-path-for-library): Remove.
17412 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17414         Remove the gmm-lazy and nnmail-lazy compat widgets
17416         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
17418         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
17420 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17422         Clean up nnimap-request-move-article slightly
17424         * lisp/gnus/nnheader.el (subr-x): Require.
17426         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
17427         the code slightly.
17429 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17431         Use open-network-stream instead of open-protocol-stream
17433         * lisp/gnus/nnimap.el: Use open-network-stream instead of
17434         open-protocol-stream.
17436         * lisp/gnus/nntp.el: Ditto.
17438         * lisp/gnus/pop3.el: Ditto.
17440         * lisp/gnus/sieve-manage.el: Ditto.
17442         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
17444 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17446         Remove compat code that relies on (featurep 'mule)
17448         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
17449         compat code.
17451         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
17452         Remove compat code.
17454         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
17455         Remove compat code.
17457         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
17458         Remove compat code.
17459         (mm-w3m-standalone-supports-m17n-p): Ditto.
17461 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17463         Remove compat functions from starttls.el
17465         * lisp/gnus/starttls.el
17466         (starttls-set-process-query-on-exit-flag): Remove.
17468 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17470         Remove compat functions from smime.el
17472         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
17473         (smime-make-temp-file): Remove.
17475 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17477         Remove compat code from smiley
17479         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
17481 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17483         Remove compat code from rfc2047
17485         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
17486         compat code.
17487         (rfc2047-decode-string): Ditto.
17489 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17491         Remove compat function from pop3
17493         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
17495 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17497         Remove compat code in Gnus backends
17499         * lisp/gnus/nndiary.el (nndiary-error): Remove.
17501         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
17503         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
17505         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
17507         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
17509 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17511         Remove compat code from some mml files
17513         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
17514         Remove compat code.
17516         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
17517         Always use `mail-extract-address-components', since this isn't
17518         time critical.
17519         (mml-smime-get-dns-cert): Ditto.
17521         * lisp/gnus/mml.el (mml-preview): Remove compat code.
17523 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17525         Remove compat code and compat functions from mm-util.el
17527         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
17528         compat code.
17529         (mm-coding-system-priorities)
17530         (mm-mule-charset-to-mime-charset, mm-charset-after)
17531         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
17532         (mm-detect-coding-region): Define unconditionally.
17533         (mm-detect-mime-charset-region): Ditto.
17534         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
17535         (coding-system-name)
17536         (find-file-coding-system-for-read-from-filename)
17537         (find-operation-coding-system): Remove aliases.
17539 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17541         Remove some compat code from mm-*.el
17543         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
17545         * lisp/gnus/mm-decode.el (mm-tmp-directory)
17546         (mm-valid-image-format-p): Remove compat code.
17548         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
17549         "Connection" "Close" workaround for older Emacsen.
17551 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17553         Remove compat code and functions from message.el
17555         * lisp/gnus/message.el (message-send-mail-function): Remove
17556         compat code.
17557         (message-dont-reply-to-names, message-mode)
17558         (message-setup-fill-variables, message-fill-paragraph)
17559         (message-remove-blank-cited-lines, message-make-from)
17560         (message-forward-rmail-make-body, message-tool-bar-gnome)
17561         (message-tab): Remove compat code.
17562         (message-completion-in-region): Remove.
17563         (message-read-from-minibuffer): Remove compat code.
17565 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17567         Declare rfc1843 instead of autoloading
17569         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
17570         instead of autoload.
17572 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
17574         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
17576         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
17577         autoloaded correctly.  (Bug#22613)
17579 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
17581         Fix network-stream-tests.el for MS-Windows
17583         * test/lisp/net/network-stream-tests.el
17584         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
17585         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
17587 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17589         Remove some Message compat functions
17591         * lisp/gnus/message.el (message-kill-all-overlays): Define
17592         unconditionally.
17593         (message-window-inside-pixel-edges): Remove.
17594         (mail-dont-reply-to): Remove.
17596 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17598         Remove some Gnus compat code
17600         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
17601         (gnus-mm-display-part): Ditto.
17603         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
17604         compat code.
17606 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17608         Sort groups before inserting them into the group buffer
17610         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
17611         Sort groups before inserting them.
17613 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17615         Make "unseen" tracking work again in Gnus
17617         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
17618         tracking work again.
17620 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17622         Remove Gnus compat functions defined in gnus.el
17624         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
17625         (gnus-extent-start-open, gnus-character-to-event)
17626         (gnus-assq-delete-all, gnus-add-text-properties)
17627         (gnus-put-text-property, gnus-key-press-event-p):
17629 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17631         Remove compat code from gnus-uu and win
17633         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
17634         compat code.
17636         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
17638         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
17640 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17642         Remove several gnus-util compat functions
17644         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
17645         (gnus-read-shell-command): Remove.
17646         (gnus-match-substitute-replacement): Remove.
17647         (gnus-string-match-p): Remove.
17648         (gnus-string-prefix-p): Remove.
17650 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17652         Remove the gnus-merge alias
17654         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
17656 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17658         Remove the gnus-union alias
17660         * lisp/gnus/gnus-util.el (gnus-union): Remove.
17662 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17664         Remove the gnus-delete-alist alias
17666         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
17667         (gnus-delete-alist): Remove.
17669 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17671         Remove the gnus-float-time alias
17673         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
17674         compat code.
17675         (gnus-float-time): Remove.
17677 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17679         Remove compat code from gnus-srvr, start and sum
17681         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
17682         compat code.
17684         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
17685         Remove compat code.
17687         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
17688         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
17689         (gnus-recenter)
17690         (gnus-summary-limit-strange-charsets-predicate)
17691         (gnus-summary-show-thread): Remove compat code.
17693 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17695         Remove compat code from gnus-spec.el
17697         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
17698         (gnus-balloon-face-function): Remove compat code.
17700 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17702         Fix compat change in last check-in
17704         * lisp/gnus/gnus-group.el
17705         (gnus-group-name-charset-group-alist): `find-coding-system'
17706         doesn't exist in Emacs.
17708 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17710         Always use url-queue
17712         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
17713         Always use url-queue.
17715 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17717         Remove compat functions from gnus-html.el
17719         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
17721 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17723         Remove compat code from gnus-group.el
17725         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
17726         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
17728 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17730         Define gnus-diary-kill-entire-line unconditionally
17732         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
17733         Define unconditionally.
17735 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17737         Remove compat code from gnus-cache and gnus-bookmark
17739         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
17741         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
17742         Remove compat code.
17744 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17746         Remove compat code from gnus-art.el
17748         * lisp/gnus/gnus-art.el (gnus-article-prepare)
17749         (gnus-mime-copy-part, gnus-output-to-file)
17750         (gnus-article-reply-with-original)
17751         (gnus-button-handle-apropos-variable)
17752         (gnus-button-handle-apropos-documentation):
17754 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17756         Remove compat code from gnus-agent.el
17758         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
17759         Remove compat code.
17761 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17763         Rewrite gmm-labels usage to use cl-labels
17765         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
17766         (gmm-labels): Remove.
17768 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17770         Remove compat code from canlock.el
17772         * lisp/gnus/canlock.el (defmacro): Remove
17774 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17776         Remove compat code from auth-source
17778         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
17779         Remove compat code.
17781 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17783         Fix gnus-group.el compilation warnings about unprefixed variables
17785         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
17786         compilation warnings by passing in the dynamic variables as
17787         explicit lexical parameters to `eval'.
17789 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17791         Fix the :tracker slot name
17793         * lisp/gnus/registry.el (registry-lookup-secondary): The
17794         `tracker' slot is called `tracker', not `:tracker'.
17796 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17798         Fix compilation warnings in gnus-art.el
17800         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
17801         (gnus-article-hide): Avoid compilation warnings.
17803 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17805         Fix compilation warning in gnus-score.el
17807         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
17808         compiler.
17810 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
17812         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
17814         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
17816         This makes nnimap groups not be activated.
17818 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17820         Fix encoding problem introduced by previous patch series
17822         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
17824         * lisp/gnus/rfc2231.el: Fix problem created by the
17825         mm-replace-in-string conversion.
17827 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17829         Revert "Avoid defvarring prefix-less variables"
17831         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
17833         The defvars are needed if we're doing lexical-binding
17835 2016-02-12  Glenn Morris  <rgm@gnu.org>
17837         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
17838         Make it pass.
17840         * test/lisp/url/url-auth-tests.el
17841         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
17843 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17845         Finish up cl-defmethoding registry,el
17847         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
17849 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17851         Revert the gnus-replace-in-string change, fix arguments, reapply
17853 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17855         Silence more message.el compilation warnings
17857         * lisp/gnus/message.el (message-generate-headers): Don't use
17858         variable values directly to get the header values, because
17859         that breaks with lexical binding (without unprefixed defvars).
17861 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17863         Fix various compilation warnings in message.el
17865         * lisp/gnus/message.el (message-fix-before-sending): Use
17866         read-multiple-choice instead of gnus-multiple-choice.
17867         (mm-util): Require.
17868         (rfc2047): Require.
17869         (message-remove-blank-cited-lines): Use message instead of
17870         gnus-message.
17871         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
17873 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17875         Silence compilation warning in mm-view
17877         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
17878         compilation warning.
17880 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17882         Fix epg-related compilation warnings in mml-sec
17884         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
17885         library.
17887 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17889         rmail-dont-reply-to-names is obsolete
17891         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
17892         the obsolete `rmail-dont-reply-to-names' variable.
17894 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17896         Partially revert the defmethod->cl-defmethod change in registry.el
17898         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
17899         since cl-defmethod doesn't work with :after.
17900         (initialize-instance): Ditto, but with :before.
17902 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17904         Avoid obsolete function in plstore
17906         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
17907         instead of the obsolete epg-context-set-armor.
17909 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17911         Use cl-defmethod in registry.el
17913         * lisp/gnus/registry.el: Use cl-defmethod instead of the
17914         obsolete defmethod.
17916 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17918         Make sieve-manage require sasl
17920         * lisp/gnus/sieve-manage.el: Fix compilation warning by
17921         requiring sasl.
17923 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17925         Avoid defvarring prefix-less variable
17927         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
17929 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17931         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
17933 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17935         Don't use the obsolete char-valid-p function
17937         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
17938         obsolete char-valid-p function.
17940 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17942         Fix missed translation in a previous commit
17944         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
17945         translation of mailcap-delete-duplicates.
17947 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17949         Avoid using mm-make-temp-file
17951         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
17953         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
17955         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
17957 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17959         Fix compilation warning in gnus-start
17961         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
17962         mm-make-temp-file.
17964 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17966         Avoid the obsoleted defmethod
17968         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
17969         defmethod.
17971 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17973         Avoid defvarring prefix-less variables
17975         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
17976         don't need to `defvar' the short variables to allow `eval' to
17977         use them.
17979 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17981         nnweb doesn't need unibyte buffers
17983         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
17984         (nnweb-read-overview, nnweb-request-article)
17985         (nnweb-google-reference): Unibyte buffers are not needed here.
17987 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17989         Encode before sending from nnspool
17991         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
17992         before sending it to the news server.
17994 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17996         nnrss buffers don't have to be unibyte
17998         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
17999         to be unibyte just to receive data, I think.
18001 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18003         Don't use mm-with-unibyte-current-buffer in mml2015
18005         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
18006         mm-with-unibyte-current-buffer.
18008 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18010         Don't use mm-with-unibyte-current in mml1991
18012         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
18013         mm-with-unibyte-current.
18015 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18017         Don't use mm-with-unibyte-current in mml1991
18019         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
18020         mm-with-unibyte-current.
18022 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18024         Don't use mm-with-unibyte-buffer in utf7
18026         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
18027         mm-with-unibyte-buffer.
18029 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18031         Remove XEmacs compat code from Gnus helper libraries
18033         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
18035         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
18037         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
18039         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
18041 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18043         Remove XEmacs compat code from Gnus backends
18045         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
18046         (mm-inline-image): Rename from mm-inline-image-emacs.
18048         * lisp/gnus/mml.el: Remove XEmacs compat code.
18050         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
18052         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
18053         XEmacs compat code.
18055         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
18057         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
18058         XEmacs compat code.
18060         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
18062         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
18064         * lisp/gnus/nntp.el: Remove XEmacs compat code.
18066 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18068         Remove XEmacs compat functions from mm-util.el
18070         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
18071         (mm-decode-coding-string, mm-encode-coding-string)
18072         (mm-decode-coding-region, mm-encode-coding-region): Remove.
18073         (mm-string-to-multibyte): Remove.
18074         (mm-char-or-char-int-p): Remove.
18075         (mm-ucs-to-char): Remove compat versions of the function.
18076         (mm-read-coding-system): Remove.
18077         (mm-coding-system-p): Remove compat code.
18078         (mm-enrich-utf-8-by-mule-ucs): Remove.
18079         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
18080         (mm-delete-duplicates): Remove.
18081         (mm-multibyte-p): Remove compat versions.
18082         (mm-xemacs-find-mime-charset-1): Remove.
18083         (mm-xemacs-find-mime-charset): Remove.
18084         (mm-make-temp-file): Made obsolete.
18085         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
18087 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18089         Remove Message and mm-decode XEmacs compat code
18091         * lisp/gnus/message.el: Remove XEmacs compat code.
18093         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
18095         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
18097 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18099         Remove som XEmacs compat code from message.el
18101         * lisp/gnus/message.el: Remove some XEmacs compat code.
18103 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18105         Remove XEmacs compat code from ietf-drums.el
18107         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
18108         XEmacs compat.
18110 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18112         Remove XEmacs compat code from gravatar.el
18114         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
18115         gravatar.el.
18117 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18119         Remove more XEmacs compat code from Gnus
18121         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
18122         (gnus-timer--function): Remove.
18124         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
18125         19.2 compat.
18127         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
18129 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18131         Remove more XEmacs compat functions from gnus-util.el
18133         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
18134         (gnus-get-display-table): Remove.
18135         (gnus-format-message): Remove.
18137 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18139         Remove more XEmacs compat functions from Gnus
18141         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
18142         (gnus-previous-char-property-change): Remove.
18143         (gnus-graphic-display-p): Remove.
18144         (gnus-select-frame-set-input-focus): Remove.
18146 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18148         Remove more XEmacs compat code from gnus-util
18150         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
18151         all its usages).
18152         (gnus-invisible-p): Remove.
18154 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18156         Remove gnus-make-local-hook
18158         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
18159         all its usages).
18161 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18163         gnus-replace-in-string -> replace-regexp-in-string
18165         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
18166         obsolete.  Transform all usages of it into
18167         replace-regexp-in-string.
18169         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
18171 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18173         Remove Gnus XEmacs compat
18175         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
18176         about code that doesn't work in XEmacs.
18178         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
18180         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
18182 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18184         Remove compat functions in gnus-spec.el
18186         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
18187         (gnus-substring-function): Remove.
18188         (gnus-use-correct-string-widths): Remove.
18189         (gnus-make-format-preserve-properties): Remove.
18190         (gnus-xmas-format): Remove.
18192         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
18194 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18196         Remove Gnus XEmacs compat functions
18198         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
18200         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
18202         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
18204 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18206         Remove Gnus XEmacs compatibility
18208         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
18209         XEmacs compat.
18211         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
18213         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
18215         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
18216         XEmacs compat.
18218         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
18220         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
18222         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
18224         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
18226 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18228         Don't use image-map if it isn't defined
18230         * lisp/net/shr.el (shr-image-map): Only use image-map as a
18231         parent if it's defined (bug#22614).
18233 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18235         Check for MagickAutoOrientImage
18237         * configure.ac: Check for MagickAutoOrientImage.
18239         * src/image.c (imagemagick_load_image): Don't use
18240         MagickAutoOrientImage unless it's available.
18242 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18244         Document EXIF image rotation
18246         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
18248 2016-02-10  Dima Kogan  <dima@secretsauce.net>
18250         Support integer image rotation and respect EXIF rotations
18252         * src/image.c (imagemagick_load_image): Allow integer rotations in
18253         addition to floating point rotations (bug#22591).
18254         * src/image.c (imagemagick_load_image): Images that have an
18255         orientation given in EXIF and have no explicit :rotation tag are now
18256         pre-rotated.  All information such as width/height is reported for the
18257         rotated image.
18259 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
18261         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
18263 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18265         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
18267 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18269         Remove compat code from gnus-bookmark.el
18271         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
18272         (gnus-bookmark-remove-properties): Remove.
18274 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18276         Remove XEmacs compat code from gnus-a*.el
18278         * lisp/gnus/gnus-agent.el: Remove compat code.
18280         * lisp/gnus/gnus-art.el: Remove compat code.
18282         * lisp/gnus/gnus-async.el: Remove compat code.
18284 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18286         Remove gmm compat functions
18288         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
18289         (gmm-write-region): Remove.
18290         (gmm-called-interactively-p): Remove.
18292 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18294         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
18296 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18298         Remove compat code from compface.el
18300         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
18302 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18304         Remove the now empty gnus-ems.el and references to it
18306 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18308         Remove Gnus compat names for mouse bindings
18310         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
18311         (gnus-down-mouse-2): Remove.
18312         (gnus-down-mouse-3): Remove.
18314 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18316         Drop Gnus compat functions
18318         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
18320         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
18322         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
18324 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18326         Get rid of gnus-ems-redefine
18328         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
18330 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18332         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
18334 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18336         Remove Gnus compat code
18338         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
18339         transitional code from ten years ago.
18341 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18343         Allow interactively scaling past :max-width etc
18345         * lisp/image.el (image--current-scaling)
18346         (image--image-without-parameters): New functions.
18347         (image--change-size): Use them to allow changing the size of a
18348         image even if it has :width/:max-width (etc.) already set.
18350 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18352         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
18354 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18356         Allow accessing the image commands via shr
18358         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
18359         accessing the image commands.
18361         * lisp/net/shr.el (shr-image-map): New map used for images.
18362         (shr-urlify): Don't overwrite image maps when applying URL maps.
18364 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18366         Use a sparse image keymap
18368         * lisp/image.el (image-map): Use a sparse keymap.
18370 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18372         Put a keymap on images created with insert-image and friends
18374         * lisp/image.el (image-save): New command.
18375         (image-rotate): Ditto.
18376         (image-map): New keymap.
18377         (insert-image): Put the image-map on all images.
18378         (insert-sliced-image): Ditto.
18379         * doc/lispref/display.texi (Showing Images): Document the
18380         image map.
18382 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18384         Fix some folding issues in read-multiple-choice
18386         * lisp/subr.el (read-multiple-choice): Fix folding when you
18387         have many items.
18389 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18391         Fix typo in last checkin
18393 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18395         Remove Gnus compat functions
18397         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
18398         (gnus-region-active-p, gnus-select-lowest-window)
18399         (gnus-summary-display-table, gnus-max-width-function): Remove
18400         compat functions.
18402 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18404         Move non-compat Gnus functions to gnus-util.el
18406         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
18407         (gnus-create-image, gnus-image-type-available-p): Move here
18408         from gnus-ems.el, since these aren't compat functions.
18410 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18412         Omit valloc decl if redundant
18414         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
18415         to pacify --enable-gcc-warnings.
18417 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
18419         Restore the calloc family.
18421         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
18422         They were lost in a4817d8 but calloc is still (marginally) used in
18423         code statically liked with emacs, so hybrid_calloc is needed.
18424         Also, in the non-hybrid case, we can't get rid of calloc anyway as
18425         other libraries liked with emacs may need it.
18426         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
18428 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18430         Remove some Gnus compat functions
18432         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
18433         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
18434         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
18436 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18438         -
18440         -
18442 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18444         Merge from origin/emacs-25
18446         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
18447         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
18448         51c77a2 Display non-ASCII group names better in prompts
18449         f93d669 Default to gpg2 instead of gpg
18451 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18453         Merge from origin/emacs-25
18455         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
18456         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
18457         3db6adb * lisp/isearch.el (search-default-mode)
18458         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
18459         c77ffc8 Use monitor's resolution for positioning tooltips
18460         49e5749 Fix file-notify-test on MS-Windows
18461         be1d874 Fix issues found by auditing w32notify code
18462         87ae218 Extend etags Ruby support for accessors
18463         aa35257 Update publicsuffix.txt.
18464         6816bff Ensure that Gnus dribble handling allows removing entries
18465         691feae Be consistent when using encoded strings in nnimap data
18466         3ed423b Display the decoded Gnus group name
18467         5428b5b Use completion-ignore-case instead of defining command
18469 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18471         Merge from origin/emacs-25
18473         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18474         d333716 ; * etc/NEWS: Expand news entry for scss-mode
18475         c32c16f ; Better document changes in ls-lisp default behavior
18476         dc6eed2 Fix doc string of tls-program
18478 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18480         Merge from origin/emacs-25
18482         2c117fc * etc/NEWS: Document new mpc.el features
18483         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
18484         9dfece1 Correctly fontify C++ initializations which "look like" functions.
18485         4485222 Improve newsticker-treeview-selection-face
18486         4236944 Minor fix in tagging Ruby accessors by etags
18487         35fc77d Spelling fixes
18488         3dda110 Remove 'def X' from the example
18490 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
18492         Fix network-stream-tests on MS-Windows
18494         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
18495         Skip if local sockets are not supported.
18497 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
18499         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
18501 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
18503         Disable 'timer-list'
18505         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
18506         command.
18508 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18510         Avoid aligned_alloc static/extern collision
18512         * src/alloc.c (aligned_alloc): Define to private name when a
18513         static function, to avoid collision with lisp.h extern decl.
18514         Reported by John Yates in:
18515         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
18517 2016-02-08  David Edmondson  <dme@dme.org>
18519         src/process.c Correctly convert AF_INET6 addresses
18521         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
18522         converted to a list of 16 bit quantities by
18523         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
18524         same scheme rather than expecting a (longer) list of 8 bit
18525         quantities.
18527 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
18529         Make `message-beginning-of-line' aware of folded headers
18531         * lisp/gnus/message.pl (message-beginning-of-header): New function which
18532         moves point to the beginning of a mail header.  The function is aware of
18533         folded headers and with non-nil argument looks for the true beginning of
18534         a header while with nil argument moves to the indented text of header's
18535         value.
18536         (message-beginning-of-line): Function is now aware of folded headers and
18537         either moves point to the indention of a header or, in visual-line-mode,
18538         searches for the beginning of the header.
18540 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
18542         Optimise ‘point in message header’ check
18544         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
18545         regular expression matches with a single bound string match thus
18546         reducing amount of work the function is doing.
18548 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18550         Make the `R' command get the correct relative <img>s
18552         * lisp/net/eww.el (eww-readable): Preserve the base URL so
18553         that image expansions are fetched from the right place (bug#22605).
18555 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18557         Add a mode to list and cancel timers
18559         * doc/lispref/os.texi (Timers): Menton `timer-list'.
18561         * lisp/emacs-lisp/timer-list.el: New file.
18563 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18565         Add new commands to allow changing the size of images
18567         * lisp/image.el (image-increase-size, image-decrease-size):
18568         New commands.
18569         (image-change-size): New function.
18571 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18573         Allow the image scale to be a floating point number
18575         * src/image.c (compute_image_size): The scale can be a
18576         floating point number.
18578 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18580         Add an IPv6 test
18582         * test/lisp/net/network-stream-tests.el
18583         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
18585 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18587         Use gnutls-serv instead of openssh
18589         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
18590         gnutls-serv instead of openssh.
18592 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18594         Skip TLS tests if we don't have openssl
18596         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
18597         TLS tests if we don't have openssl and GnuTLS.
18599 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18601         Add an IPv6 test
18603         * test/lisp/net/network-stream-tests.el
18604         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
18606 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18608         Use gnutls-serv instead of openssh
18610         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
18611         gnutls-serv instead of openssh.
18613 2016-02-08  Daniel Colascione  <dancol@dancol.org>
18615         Performance improvements for vc-hg
18617         Teach vc-hg how to read some Mercurial internal data structures,
18618         allowing us to avoid the need to run hg status -A, which is very slow
18619         for large repositories.  Fall back to running hg if anything looks
18620         funny.  vc-hg now puts the _working directory_ revision in the
18621         modeline instead of the file revision, which greatly improves
18622         performance and which allows us to again skip running hg in the case
18623         that we have an active bookmark.
18625         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
18626         (vc-hg-symbolic-revision-styles)
18627         (vc-hg-use-file-version-for-mode-line-version)
18628         (vc-hg-parse-hg-data-structures): New user preferences
18629         (vc-hg--active-bookmark-internal, vc-hg--run-log)
18630         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
18631         (vc-hg--read-u8, vc-hg--read-u32-be)
18632         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
18633         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
18634         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
18635         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
18636         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
18637         (vc-hg--ignore-patterns-valid-p)
18638         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
18639         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
18640         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
18641         (vc-hg-state-fast): New functions.
18642         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
18643         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
18644         (vc-hg--dirstate-scan-cache): New internal variables.
18645         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
18646         before updating modeline.
18648 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18650         Skip TLS tests if we don't have openssl
18652         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
18653         TLS tests if we don't have openssl and GnuTLS.
18655 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18657         Automatically scale images up on high-density screens
18659         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
18660         (Defining Images): Mention image-scaling-factor.
18662         * lisp/image.el (image-compute-scaling-factor): New function
18663         (bug#22172).
18664         (create-image): Use it.
18665         (image-scaling-factor): New variable.
18667         * src/image.c (compute_image_size): Take :scale into account.
18669 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18671         Ensure progress when fetching from the queue
18673         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
18674         that we have progress when fetching queued requests (bug#22576).
18676 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18678         Make mail-extract-address-components return the user name more
18680         * lisp/mail/mail-extr.el (mail-extract-address-components):
18681         Return the name even if it's the same as the mailbox name (if
18682         `mail-extr-ignore-single-names' isn't set) (bug#22594).
18684 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18686         Message no longer warns about unknown top level domains
18688 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
18690         Add tests for url-auth
18692         * test/lisp/url/url-auth-tests.el: New file.
18694 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18696         Add a TLS connection test
18698         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
18699         a TLS connection test.
18701 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18703         Add more network tests
18705         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
18706         New test.
18708 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18710         Add network tests
18712         * test/lisp/net/network-stream-tests.el: New suite of network tests.
18714 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18716         Add a TLS connection test
18718         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
18719         a TLS connection test.
18721 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18723         Add more network tests
18725         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
18726         New test.
18728 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18730         Add network tests
18732         * test/lisp/net/network-stream-tests.el: New suite of network tests.
18734 2016-02-07  Foo  <rasmus@gmx.us>
18736         Allow various Gnus and Message address variables to be functions
18738         * doc/misc/gnus.texi (To From Newsgroups):
18739         gnus-ignored-from-addresses can be a function.
18741         * doc/misc/message.texi (Wide Reply):
18742         message-dont-reply-to-names can be a function.
18744         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
18745         message-alternative-emails can be a function.
18747         * lisp/gnus/gnus-notifications.el (gnus-notifications):
18748         message-alternative-emails can be a function (bug#22315).
18750         * lisp/gnus/gnus-sum.el
18751         (gnus-summary-from-or-to-or-newsgroups):
18752         gnus-ignored-from-addresses can be a function (bug#22315).
18754 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18756         Fix typo in Gnus regexp
18758         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
18759         typo in last change to this regexp (bug#22592).
18761 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18763         Port to FreeBSD x86
18765         Reported by Herbert J. Skuhra in:
18766         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
18767         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
18768         since malloc always returns a multiple of 8 in FreeBSD.
18770 2016-02-07  Alan Mackenzie  <acm@muc.de>
18772         On leaving CC Mode, clean up by removing character properties.
18774         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
18775         all instances of the text properties/extents category, syntax-table,
18776         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
18778 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
18780         message-valid-fqdn-regexp no longer exists
18782         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
18783         the no-longer-existing message-valid-fqdn-regexp variable.
18785 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
18787         Remove message-valid-fqdn-regexp, since it changes too much now
18789         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
18790         (message-bogus-recipient-p): Don't use it any more.
18791         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
18793 2016-02-06  Paul van der Walt  <paul@denknerd.org>
18795         Match "Re :" as a "Re:" prefix
18797         * lisp/gnus/message.el (message-subject-re-regexp): Also match
18798         "Re :" as a "Re:" prefix (commonly used in France).
18800 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
18802         lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
18804         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
18806 2016-02-06  David Edmondson  <dme@dme.org>
18808         src/process.c Correctly convert AF_INET6 addresses
18810         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
18811         converted to a list of 16 bit quantities by
18812         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
18813         same scheme rather than expecting a (longer) list of 8 bit
18814         quantities.
18816 2016-02-05  Martin Jesper Low Madsen  <martin@martinjlowm.dk>
18818         Search for host/port combinations in auth-source on OS X
18820         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
18821         Search for all host/port (or protocol) combinations for a match in
18822         the OS X keychain.
18824 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18826         Remove nonsensical setting of gnus-newsgroup-unseen
18828         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
18829         setting of gnus-newsgroup-unseen.
18831 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18833         Use underline on all terminals that support it
18835         * lisp/subr.el (read-multiple-choice): Use
18836         display-supports-face-attributes-p instead of
18837         display-graphic-p to determine whether we can use underlining.
18839 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18841         Make the nsm query say what it did after the user interaction
18843         * lisp/net/nsm.el (nsm-query): Issue a message about
18844         aborting/accepting messages (suggested by N. Jackson)
18845         (bug#22531).
18847 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18849         Omit XLI (init) == 0 optimization in make-vector
18851         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
18852         == 0) case, as this optimization is probably not worth the hassle.
18853         Just for the record, the test for that case could have been
18854         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
18855         assuming the typical platform with no padding bits and where
18856         conversion to int omits the most significant bits.
18858 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18860         * autogen.sh: Port to dash (Bug#22556).
18862 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
18864         Minor cleanup for Tramp "doas".
18866         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
18868         * etc/NEWS: Add Tramp connection method "doas".
18870         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
18871         Add `tramp-remote-shell-args'.
18873 2016-02-05  Xi Lu  <lx@shellcodes.org>
18875         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
18877         (tramp-default-user-alist): Add rule for "doas".
18878         (top): Completion function for "doas" is
18879         `tramp-completion-function-alist-su'.
18881 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18883         Restore the window configuration
18885         * lisp/net/nsm.el (nsm-query-user): Restore the window
18886         configuration (bug#22532).
18888 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18890         Use an X popup in read-multiple-choice if running from a mouse command
18892         * lisp/subr.el (read-multiple-choice): Use an X popup if
18893         called from a mouse action (bug#19368).
18895 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18897         Display cursor in echo area when prompting
18899         * lisp/subr.el (read-multiple-choice): Display the cursor in
18900         the echo area when prompting (bug#19368).
18902 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18904         Make NSM prompting clearer
18906         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
18907         to prompt in a nicer way (bug#19368).
18909 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18911         Underline read-multiple-choice-face
18913         * lisp/faces.el (read-multiple-choice-face): Also underline
18914         the choice.
18916 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18918         Make url.el use async DNS
18920         * lisp/url/url-gw.el (url-open-stream): Use non-blocking DNS.
18922         * src/process.c (syms_of_process): Add a `dns' subfeature for
18923         make-network-process.
18925 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18927         Only do async DNS if requested with :nowait 'dns
18929         * doc/lispref/processes.texi (Network Processes): Mention the
18930         dns value of :nowait.
18932         * src/process.c (Fmake_network_process): Only do async DNS if
18933         :nowait is `dns'.
18935 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18937         Add sanity check for checking async DNS
18939         * src/process.c (check_for_dns): Disregard processes that have
18940         already been killed.
18942 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18944         Make the read-multiple-choice prompt a bit prettier
18946         * doc/lispref/commands.texi (Reading One Event): Mention
18947         read-multiple-choice-face.
18949         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
18950         prettier.
18952 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18954         Prefer memcpy and memset to doing it by hand
18956         * src/alloc.c (Fmake_vector):
18957         * src/ccl.c (setup_ccl_program):
18958         Use memset to clear array.
18959         * src/alloc.c (Fvector, Fmake_byte_code):
18960         * src/charset.c (Fdefine_charset_internal):
18961         Use memcpy to copy array.
18963 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
18965         Do not ignore redirections of 301, 302 and 307 status codes
18967         The current version of HTTP/1.1 (RFC 7231) no longer requires
18968         confirmation on 301, 302 or 307 status codes, therefore we do not have
18969         to ignore redirects for other requests than GET and HEAD.
18971         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
18972         and 307 redirects for other requests than GET and HEAD.
18974 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
18976         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
18978 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18980         Simplify USE_ALIGNED_ALLOC
18982         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
18983         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
18985 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
18987         Honor docstring of gnus-group-get-new-news
18989         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
18990         is t, but non-numeric, unconditionally consider all groups to need
18991         updating.
18993 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18995         New function read-multiple-choice
18997         * doc/lispref/commands.texi (Reading One Event): Document
18998         read-multiple-choice.
19000         * lisp/faces.el (read-multiple-choice-face): New face.
19002         * lisp/subr.el (read-multiple-choice): New function.
19004 2016-02-03  John Wiegley  <johnw@newartisans.com>
19006         Merge from origin/emacs-25
19008         ee73997 Make erc work better when encountering unknown prefix chars
19009         b99141d Make erc completion case-insensitive again
19010         66c4620 Make complection in erc use consistent casing
19011         8c562b2 Make /QUIT in erc more robust
19012         d93d2c5 Make tracking faces in Emacs work more reliably
19013         af6ab7e Make shr not bug out on images on non-graphical displays
19014         3311f40 Fix bookmark display widths
19015         d90ab1e Fix typo in eww-make-unique-file-name
19016         7f81825 Make it possible to TAB to input fields
19017         a43a1dc Insert complete alt texts when images are disabled
19018         56ed4e1 Allow eww text fields to grow
19019         66b315c Make erc work when subword-mode is switched on
19020         255b68f Fix IMAP doc example
19021         91557f5 Quoting fixes in doc strings and diagnostics
19022         2c0dc9f Fix warning message in hack-local-variables
19023         504696d Etags: yet another improvement in Ruby tags
19024         8784ebf Fix x-popup-menu on TTYs without a mouse
19025         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
19026                 pcase macro
19027         6191003 Use pop-to-buffer-same-window in eww
19028         fe321fd * autogen.sh: Revert all recent changes.
19029         74ebd4a * make-dist: Updates related to nt/.
19030         737193a * make-dist: Add modules/.
19031         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
19032         a4278e2 Fix failure to compile ns-win.el in parallel builds
19033         860da4d Fix names of tags generated for Ruby accessors
19034         f6213ce Fix file-name recognition in 'etags'
19035         e42e662 Change Ruby file names and extensions recognized by 'etags'
19036         58bfb6a More improvements for Ruby support in 'etags'
19037         c04e911 Add --git-config option to autogen.sh
19038         5713466 Fix editing undo changes in eww fields
19039         51362d6 Allow the user more control of popping up the eww window
19040         ee0fbd8 Make eww-browse-url with new-window parameter work again
19041         9c3142d Clean up eww code slightly
19042         cb035f3 Don't insert nil faces in shr
19043         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
19044         93f2153 Improve the custom type of some user options.
19045         9f60d7e Mark some risky calendar variables.
19046         1d07dcd Highlight two additional SCSS keywords
19047         ee8b466 Recommend enabling integrity-checking in git
19048         e639e10 Some corrections in Elisp manual
19049         d766ca8 Chatter when autogen.sh changes Git configuration
19050         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
19051         43cb9f8 Omit unnecessary history from Lisp intro
19052         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
19053         c90e1b4 Improve elisp “Security Considerations” doc
19054         cedd7ca autogen.sh now arranges for git to check hashes
19055         86ce76b ; Fix ChangeLog.2 commit ID.
19056         7b1d2b1 Fix (c & 040) typo in emergency escapes
19057         a8273da Fix display of overlay strings with 'display' and 'box' property
19058         fc48106 Fix imap-starttls-open
19059         cdecbed Fix return value of imap-starttls-open
19060         20c7e34 ; * etc/NEWS: Fix renamed command name
19061         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
19062         b250d29 Spelling fix
19063         b920a0e Spelling fixes
19064         93b144b Pacify GCC on C library without glibc API
19066 2016-02-03  John Wiegley  <johnw@newartisans.com>
19068         Merge from origin/emacs-25
19070         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
19071                 priority of non-free Chrome.
19072         0fac75f Improve the custom type of some user options.
19073         2df0e04 Highlight CSS variables with variable name face
19074         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
19075                 user-serviceable.
19076         2a5233c Mark some user options that can get evalled as risky.
19077         39b166f Disable DebPrint in sys_read on MS-Windows
19078         9fd0189 ;Fix ChangeLog entry
19079         4bb7233 Fix typos in Introduction to Emacs Lisp manual
19081 2016-02-03  Mark Oteiza  <mvoteiza@udel.edu>
19083         Add a new command to switch between erc buffers
19085         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
19086         * etc/NEWS: Mention new command
19087         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
19088         (eww-mode-map): Add menu item
19089         (eww-switch-to-buffer): New command
19091 2016-02-03  David Edmondson  <dme@dme.org>
19093         Make erc work better when encountering unknown prefix chars
19095         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
19096         instead of erroring out on unknown prefix chars (bug#22380).
19098 2016-02-03  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
19100         Allow sending empty hidden values in eww
19102         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
19103         values (bug#22388).
19105 2016-02-03  Andrew Hyatt  <ahyatt@gmail.com>
19107         Remove packages obsoleted before Emacs 24.
19109         In accordance with the policy discussed in the emacs-devel list,
19110         packages that have been obsoleted for a full major release cycle are up
19111         for deletion.
19113         This removes almost all packages that are now eligible for deletion,
19114         with the exception of "cl-compat", which seems it is likely to still be
19115         used, and "optional", which offers some functionality that doesn't have
19116         a replacement yet.
19118 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
19120         Mention context when resume from emergency escape
19122         That way, if the user has been doing something else for a while,
19123         they are reminded of the situation when restarting Emacs,
19124         and are more likely to understand the two questions.
19125         * doc/emacs/trouble.texi (Emergency Escape): Document this.
19126         * src/keyboard.c (handle_interrupt): Implement this.
19128 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
19130         Port aligned_alloc decl to Cygwin.
19132         Problem reported by Ken Brown (Bug#22522#38).
19133         * configure.ac (aligned_alloc): Check for decl too.
19134         * src/lisp.h (aligned_alloc): Declare if not already declared.
19136 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19138         autogen.sh now configures git only on request
19140         * autogen.sh (do_autoconf, do_git): New vars.
19141         Support new arguments --help, all, autoconf, git.
19142         By default, just do autoconf-related configuration, not git.
19143         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
19144         If GNU cp is available, use it to backup .git/config before
19145         changing it.  When configuring git, chatter about what is being
19146         done, and configure git to check hashes.  Avoid some duplicate
19147         file name specification when creating git hooks.
19149         * GNUmakefile (ALL_IF_GIT): New macro.
19150         (configure): Use it.
19151         * INSTALL.REPO: Suggest './autogen.sh all'.
19153 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
19155         Doc fixes and refactorings based on comments from Eli Zaretskii
19157         * doc/lispref/processes.texi (Network Processes): Clarify the
19158         meaning of :tls-parameters.
19160         * lisp/net/gnutls.el (open-gnutls-stream): Clarify :nowait.
19162         * lisp/net/gnutls.el (gnutls-boot-parameters): Factor out into
19163         own function.
19164         (gnutls-negotiate): Use it.
19165         (open-gnutls-stream): Ditto.
19167         * src/eval.c (vformat_string): Refactor out the printing bits
19168         from verror.
19169         (verror): Use it.
19171         * src/gnutls.c (boot_error): Mark failed processes with the
19172         real error message.
19174         * src/lisp.h: Declare vformat_string.
19176 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19178         Build with C11 if available
19180         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
19181         * m4/std-gnu11.m4: New file, from gnulib.
19182         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19184 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19186         Update gnulib copy
19188         * doc/misc/texinfo.tex: Copy from gnulib.
19190 2016-02-02  Glenn Morris  <rgm@gnu.org>
19192         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
19193         Doc tweaks.
19195 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19197         Port better to platforms lacking aligned_alloc
19199         Problem reported by Ken Brown (Bug#22522).
19200         * src/lisp.h (hybrid_aligned_alloc)
19201         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
19203 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19205         Port malloc.h hygiene fix to LTO
19207         * src/alloc.c (__malloc_initialize_hook):
19208         Make it externally visible (Bug#22522).
19210 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
19212         Build fix for --enable-check-lisp-object-type
19214         * process.c (check_for_dns): Type fix reported by YAMAMOTO
19215         Mitsuharu.
19217 2016-02-01  Glenn Morris  <rgm@gnu.org>
19219         Make find-change-log prefer a VCS root, if no ChangeLog exists.
19221         * lisp/vc/add-log.el (change-log-directory-files): New option.
19222         (find-change-log): Respect change-log-directory-files.
19223         * doc/emacs/maintaining.texi (Change Log Commands):
19224         Mention change-log-directory-files.
19226 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
19228         Boot parameter check fix
19230         * process.c (send_process): Fix test for boot parameters noted
19231         by Andy Moreton.
19233 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
19235         Double static heap size.
19237         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
19238         small on FreeBSD (Bug#22086).
19240 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
19242         Fix Bug#20821
19244         * lisp/net/tramp.el (tramp-file-name-handler):
19245         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
19246         Use `tramp-drop-volume-letter'.  (Bug#20821)
19248 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19250         Style fix
19252 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19254         Return the correct server port number
19256         * process.c (connect_network_socket): Return the correct
19257         server port number.
19259 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19261         Fix autoconf test for getaddrinfo_a
19263         * configure.ac: Make the test for getaddrinfo_a work.
19265 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19267         Better async error reporting
19269         * process.c (connect_network_socket): Mark failed processes
19270         with a better error message.
19271         (check_for_dns): Ditto.
19273 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19275         Clarify :tls-parameters.
19277 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19279         Always boot TLS if given parameters
19281         * src/process.c (connect_network_socket): If we have the TLS
19282         parameters, then boot the socket.
19284 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19286         Add documentation for :tls-parameters
19288         * doc/lispref/processes.texi (Network Processes): Mention
19289         :tls-parameters.
19291         * src/process.c (Fmake_network_process): Document the
19292         :tls-parameters parameter.
19294 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19296         Build fix for glibc systems.
19298 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19300         Make network connections work again on non-glibc systems
19302         * lisp/net/gnutls.el (open-gnutls-stream): Pass the TLS
19303         keywords in directly so that they can be used when doing
19304         synchronous DNS on non-synchronous connections.
19306         * lisp/net/network-stream.el (open-network-stream): Allow
19307         passing in the TLS parameters directly.
19309         * src/process.c (conv_numerical_to_lisp): New function to convert
19310         numerical addresses to Lisp.
19311         (Fmake_network_process): Rework the non-HAVE_ADDRINFO code
19312         paths so that they work again.
19313         (syms_of_process): Build fix for non-glibc systems.
19315 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19317         Windows build fix
19319         * process.c (Fmake_network_process): Build fix for systems
19320         without local sockets.
19322 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19324         Use XCAR/XCDR instead of Fcar etc
19326 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19328         Fix GC problem in async TLS connection
19330         * process.h: All Lisp_Object slots have to come first,
19331         otherwise they won't be protected from gc.
19333 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19335         Further TLS async work
19337         * gnutls.c (boot_error): New function to either signal an
19338         error or return an error code.
19339         (Fgnutls_boot): Don't signal errors when running asynchronously.
19341         * process.h (pset_status): Move here from process.c to be
19342         able to use from gnutls.c.
19344         * process.c (connect_network_socket): Do the TLS boot here
19345         when running asynchronously.
19346         (wait_reading_process_output): Rework the dns_processes
19347         handling for more safety.
19349 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19351         Clean up dead code
19353         * lisp/net/gnutls.el (gnutls-async-sentinel): Remove.
19355 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
19357         Add ability to give rcirc servers an alias name
19359         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
19360         customization option.
19361         (rcirc, rcirc-connect): Take server alias into account.
19363 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
19365         Port new hybrid malloc to FreeBSD
19367         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
19368         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
19369         (__morecore) [HYBRID_MALLOC]: Define in this case too.
19371 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
19373         * configure.ac: Stop using mmap for buffers for FreeBSD.
19375 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
19377         Merge changes from Tramp repository
19379         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
19380         No EXTRA_OPTS needed.
19382         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
19383         branch, especially for @trampfn{}.
19384         (Top): Move @ifnottex down.
19385         (History): XEmacs support has been removed.
19386         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
19387         (Auto-save and Backup): Use both syntax versions.
19388         (File name Syntax): Remark on IPv6 adresses is valid for
19389         unified syntax only.
19391         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
19393 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19395         Spelling fixes
19397 2016-01-30  Glenn Morris  <rgm@gnu.org>
19399         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
19401 2016-01-30  Matthew Carter  <m@ahungry.com>
19403         Quote table names for postgres listings (sql-mode)
19405         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
19406           unquoted table names to the completion list.
19408 2016-01-30  Glenn Morris  <rgm@gnu.org>
19410         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
19412         * lisp/vc/smerge-mode.el (smerge-diff-switches)
19413         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
19414         (smerge-upper, smerge-upper-face, smerge-keep-upper)
19415         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
19416         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
19417         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
19418         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
19419         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
19420         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
19421         Update all uses.
19422         (smerge-basic-map): Add "l" and "u" bindings.
19423         (smerge-mode-menu): Update menu bindings for renaming.
19424         (smerge-font-lock-keywords): Update face names.
19425         (smerge-match-names): Update names.
19426         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
19427         (smerge-match-conflict, smerge-ediff): Rename local variables.
19428         (smerge-makeup-conflict): Relabel markers.
19429         (smerge-parsep-re): Use renamed variables.
19431 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19433         Port recent my_edata change to MS-Windows
19435         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
19437 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19439         Rework the mechanisms for async GnuTLS connections
19441         * lisp/net/gnutls.el (open-gnutls-stream): Compute the
19442         gnutls-boot parameters and pass them to the process object.
19443         (gnutls-negotiate): New parameter :return-keywords that won't
19444         connect to anything, just compute the keywords.
19446         * lisp/url/url-http.el (url-http): Revert async TLS sentinel
19447         hack, which is no longer necessary.
19449         * src/gnutls.c (Fgnutls_asynchronous_parameters): Rename from
19450         gnutls-mark-process.
19452         * src/process.c (connect_network_socket): If we're connecting to
19453         an asynchronous TLS socket, complete the GnuTLS boot sequence here.
19455         * src/process.h: New parameter gnutls_async_parameters.
19457 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19459         Fix segfault from double free
19461         * process.c (check_for_dns): Protect against double free
19462         issues.
19464 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19466         Remove debugging
19468 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19470         Implement asynchronous GnuTLS connections
19472         * doc/misc/emacs-gnutls.texi (Help For Developers): Mention
19473         the nowait parameter.
19475         * lisp/net/gnutls.el (open-gnutls-stream): Allow asynchronous
19476         connections with the new nowait parameter.
19478         * lisp/net/network-stream.el (network-stream-open-tls): Pass
19479         on :nowait to open-gnutls-stream.
19481         * lisp/url/url-http.el (url-http): Don't overwrite the
19482         sentinel created by open-gnutls-stream.
19484         * src/gnutls.c (Fgnutls_mark_process): New function.
19486         * src/process.c (send_process): Don't write to GnuTLS sockets that
19487         haven't been initialised yed.
19489         * src/process.h: New slot gnutls_wait_p.
19491 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19493         Tell Automake the new lib/Makefile.am is OK
19495         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
19497 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19499         Make it easy to override preferred-branch test
19501         * Makefile.in (preferred-branch-is-current):
19502         Rename from emacs-25-branch-is-current.  All uses changed.
19503         (PREFERRED_BRANCH): New macro.
19505 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19507         Shrink static heap a bit
19509         * src/sheap.h: Include lisp.h, for Lisp_Object.
19510         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
19511         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
19512         conservative than the old value.
19513         (Bug#22086)
19515 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19517         Fix extern symbols defined and not used
19519         * src/alloc.c: Always include <signal.h>.
19520         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
19521         Do not define; unused.
19522         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
19523         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
19524         to avoid collision with glibc.  Now static.  All uses changed.
19525         * src/lastfile.c (my_edata): Define only if
19526         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
19527         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
19528         (Bug#22086)
19530 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19532         Build lib/e-*.o only on platforms that need it
19534         * configure.ac (hybrid malloc): Simplify configuration.
19535         (SHEAP_OBJ): Remove; no longer needed.
19536         (HYBRID_MALLOC): New var. Subst it.
19537         (HYBRID_MALLOC_LIB): New Automake conditional.
19538         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
19539         HYBRID_MALLOC_LIB.
19540         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
19541         (MOSTLYCLEANFILES): Add libegnu.a.
19542         * src/Makefile.in (SHEAP_OBJ): Remove.
19543         (HYBRID_MALLOC): New macro.
19544         (base_obj): Use it to conditionally add sheap.o.
19545         (LIBEGNU_ARCHIVE): New macro.
19546         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
19547         All uses of the latter replaced by the former.
19548         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
19549         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
19550         * src/gmalloc.c: Update comment.
19551         * src/lisp.h (aligned_alloc)
19552         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
19553         New decl.
19554         (Bug#22086)
19556 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19558         Include <malloc.h> when advisable
19560         This should help insulate us better from future glibc changes.
19561         It is good hygiene to include .h files for APIs that Emacs uses.
19562         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
19563         * configure.ac: Check for malloc.h.
19564         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
19565         not on DOUG_LEA_MALLOC.
19566         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
19567         Remove decl (now in lisp.h).
19568         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
19569         [emacs]: Include lisp.h.
19570         [HAVE_MALLOC_H]: Include <malloc.h>.
19571         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
19572         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
19573         (__default_morecore):
19574         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
19575         (calloc): Make it clear that the macro should not be used.
19576         Remove unused decl.
19577         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
19578         (__morecore, __default_morecore, __after_morecore_hook)
19579         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
19580         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
19581         Remove later decls.
19582         (gmalloc_hook, gfree_hook, grealloc_hook):
19583         Rename from __malloc_hook, __free_hook, __realloc_hook to
19584         avoid type collision with glibc <malloc.h>.  All uses changed.
19585         (gmalloc_hook):
19586         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
19587         Now static.
19588         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
19589         (__malloc_initialize_hook, __after_morecore_hook):
19590         Declare with types compatible with glibc.
19591         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
19592         Remove.  All uses removed.
19593         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
19594         * src/ralloc.c, src/vm-limit.c:
19595         Simplify includes and include <malloc.h> if available.
19597 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19599         * src/alloc.c: Include "sheap.h".
19601         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
19602         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
19603         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
19604         Declare unconditionally.
19605         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
19606         (unexec): Don’t set or clear bss_sbrk_did_unexec;
19607         the caller now does this.
19608         (Bug#22086)
19610 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19612         Pacify --enable-gcc-warnings when HYBRID_MALLOC
19614         * src/buffer.c (init_buffer):
19615         * src/emacs.c (main):
19616         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
19617         Use emacs_get_current_dir_name, not get_current_dir_name.
19618         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
19619         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
19620         * src/emacs.c: Include "sheap.h".
19621         (report_sheap_usage): Remove decl.
19622         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
19623         Don't assume ptrdiff_t can be printed as int.
19624         * src/gmalloc.c [HYBRID_MALLOC]:
19625         Include "sheap.h" rather than declaring its contents by hand.
19626         (get_current_dir_name, gget_current_dir_name)
19627         (hybrid_get_current_dir_name): Remove.
19628         (emacs_abort): Remove duplicate decl.
19629         (aligned_alloc): Undef, like malloc etc.
19630         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
19631         Make it a bit more efficient.
19632         (malloc_find_object_address): Remove unused decl.
19633         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
19634         (mstats, memory_warnings): Declare only if GC_MCHECK.
19635         * src/lisp.h (emacs_get_current_dir_name):
19636         New decl, replacing get_current_dir_name.
19637         * src/sheap.c: Include sheap.h first.
19638         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
19639         (debug_sheap): Now static.
19640         (bss_sbrk_buffer_end): Remove; no longer used.
19641         (bss_sbrk_ptr): Now static and private.
19642         (bss_sbrk_did_unexec): Now bool.
19643         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
19644         (bss_sbrk): Don't treat request_size 0 as special, since the code
19645         works without this being a special case.
19646         Avoid overflow if request size exceeds INT_MAX.
19647         (report_sheap_usage): Remove; now done in emacs.c.
19648         * src/sheap.h: New file.
19649         * src/sysdep.c (get_current_dir_name): Remove macro.
19650         Include "sheap.h".
19651         (emacs_get_current_dir_name): Rename function from
19652         get_current_dir_name.  Handle HYBRID_MALLOC here;
19653         this is simpler.
19654         (Bug#22086)
19656 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19658         Report static heap usage on non-Cygwin, too
19660         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
19661         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
19662         on platforms other than Cygwin (Bug#22086).
19664 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19666         Pacify GCC on extern decls
19668         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
19669         to pacify recent GCC (Bug#22086).
19671 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19673         Add musl patch to support HYBRID_MALLOC on elf systems
19675         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
19676         (__default_morecore): Here, in particular.
19677         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
19678         New variable SHEAP_OBJ.
19679         * src/Makefile.in: Use it.
19680         (Bug#22086)
19682 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
19684         unexelf.c hook to support HYBRID_MALLOC on ELF
19686         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
19687         Define bss_sbrk_did_unexec (Bug#22086).
19689 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19691         Link temacs with gnulib compiled with -Demacs
19693         This is done to support HYBRID_MALLOC, since some static variables
19694         (e.g., last_environ in putenv.c) hold pointers to memory malloced
19695         before dumping (Bug#22086).
19696         * lib/Makefile.am: Add incantation to install libegnu.a.
19697         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
19698         (temacs$(EXEEXT)): Use it.
19700 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19702         Internal linkage for gmalloc etc. if HYBRID_MALLOC
19704         This avoids clashes with symbols if the after-dump malloc is
19705         derived from Doug Lea's implementation (Bug#22086).
19707         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
19708         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
19709         declarations below to `static' ones.
19710         (aligned_alloc): Declare for !MSDOS as well.
19711         (heapsize, _fraghead): Move resp. copy declaration downwards.
19712         For HYBRID_MALLOC, conditionalize out the other definitions,
19713         since the previous `static' declarations double as tentative
19714         definitions, anyway.
19715         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
19716         (__realloc_hook, __memalign_hook): Conditionalize out.
19717         (cfree, memalign, valloc): Ditto.
19719 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19721         -
19723         -
19725         -
19727 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19729         Merge from origin/emacs-25
19731         3f481ad Rename xref-query-replace to xref-query-replace-in-results
19732         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
19733         2111e0e Comment out next-error-function integration in xref
19734         4e11ad3 Correct a use of "which" in intro.texi
19735         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
19736         76045f7 Don't operate on menu bar of nonexistent frame
19737         c32f3bc Unbreak the GNUstep build.
19739 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19741         -
19743         -
19745 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
19747         Re-enable checks in member, memql, delete to complain about non-lists
19749                 * fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
19751 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19753         Clean up compilation warnings
19755 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19757         Make async resolution more efficient
19759         * process.c (wait_reading_process_output): Use a list of
19760         process objects instead of looping through an array to check
19761         for name resolution.  This should be much faster.
19763 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19765         More async memory leaks
19767         * src/process.c (check_for_dns): Free even more allocated async stuff.
19769 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19771         Compilation for for systems with getaddrinfo_a
19773         * process.c (Fmake_network_process): Make stuff work again on
19774         systems with getaddrinfo_a.
19776 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19778         Save correct server data
19780         * process.c (connect_network_socket): Save the correct contact
19781         info for servers.
19783 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19785         Compilation for for non-GNU systems
19787         * process.c (Fmake_network_process): Make compilation work
19788         again on hosts that don't have getaddrinfo_a.
19790 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19792         Avoid memory leaks in async DNS
19794         * process.c (check_for_dns): Free async DNS resources after
19795         they've been used.
19797 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19799         * process.c (check_for_dns): Free the result data.
19801 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19803         Fix server connections
19805         * process.c (Fmake_network_process): Make creating server
19806         listening ports work again.
19808 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19810         Further make_network_process clean up
19812         * process.c (Fmake_network_process): Remove setting of unused
19813         family variable.
19815 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19817         Clean up GETADDRINFO usage in make-network-process
19819         * process.c (Fmake_network_process): Clean up the GETADDRINFO
19820         handling.
19822 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19824         Implement asynchronous name resolution
19826         * process.c (Fmake_network_process): Do asynchronous DNS
19827         lookups if we have getaddrinfo_a and the user requests :nowait.
19828         (check_for_dns): New function.
19829         (wait_reading_process_output): Check for pending name
19830         resolution in the idle loop.
19832         * process.h: Add structure for async DNS.
19834 2016-01-28  Glenn Morris  <rgm@gnu.org>
19836         Remove some useless-use-of eval.
19838         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
19839         * lisp/gnus/nnrss.el (xml): Simply require it.
19840         (xml-rpc-method-call): Use declare-function.
19842 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19844         Fix memory leak
19846         * process.c (connect_network_socket): Free previous sockaddr
19847         before allocating a new one.
19849 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19851         Return IP addresses in the correct order
19853         * src/process.c (Fmake_network_process): Return the IP addresses
19854         in the same order as getaddrinfo does.
19855         (set_network_socket_coding_system): Clean up the code slightly.
19857 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19859         Add checks for getaddrinfo_a
19861         * configure.ac: Detect getaddrinfo_a.
19863 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19865         Refactor make_network_process
19867         * src/process.c (set_network_socket_coding_system)
19868         (connect_network_socket): Refactor out of
19869         make_network_process to allow calling connect_network_socket
19870         asynchronously.
19871         (Fmake_network_process): Do nothing but parsing the parameters
19872         and name resolution, leaving the connection to
19873         connect_network_socket.
19875 2016-01-28  Glenn Morris  <rgm@gnu.org>
19877         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
19878         Warn if defcustom has no type.  (Bug#16276)
19880 2016-01-27  Glenn Morris  <rgm@gnu.org>
19882         * test/lisp/vc/vc-hg.el: Move from test/automated/.
19884 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19886         (rng-c-fix-escaped-newlines): Use subst-char-in-string
19888         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
19889         Use subst-char-in-string.
19891 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19893         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
19895         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
19896         (sgml-calculate-indent): Use it.
19898 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19900         * lisp/org: Fix some compiler warnings
19902         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
19903         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
19904         (*this*): Declare as dyn-bound.
19905         (org-babel-expand-src-block, org-babel-load-in-session)
19906         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
19907         Mark unused args.
19908         (org-babel-combine-header-arg-lists): Remove unused var `args'.
19909         (org-babel-find-named-block): Remove unused var `msg'.
19911         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
19912         Declare as dyn-bound.
19913         (org-edit-src-code): Remove unused var `lfmt'.
19914         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
19916 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19918         * lisp/font-lock.el: Use #' to quote function symbols
19920 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
19922         Improve user name completion in Tramp
19924         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
19925         Call also "getent passwd" or "getent group", if possible.
19926         (tramp-parse-putty): Cache the result.
19928 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
19930         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
19932 2016-01-20  Glenn Morris  <rgm@gnu.org>
19934         Remove handling of non-string time-stamp formats, obsolete for 20 years.
19936         * lisp/time-stamp.el (time-stamp-format): Doc fix.
19937         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
19938         (time-stamp-string): Ignore non-string formats.
19940 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
19942         Anoter fix for problematic merge from emacs-25
19944         * src/w32fns.c (globals_of_w32fns): Move initialization of
19945         resetstkoflw to a non-Cygwin part.
19947 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
19949         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
19951 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
19953         Fix MS-Windows build broken by a botched merge from emacs-25
19955         * src/w32.c (w32_crypto_hprov): New static variable.
19956         (globals_of_w32): Initialize w32_crypto_hprov.
19957         (w32_init_crypt_random, w32_init_random): New functions.
19958         Include wincrypt.h.
19959         * src/w32.h (w32_init_random): Add prototype.
19961 2016-01-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
19963         Correct a whole bunch of bugs coming with renamed cell relocation.
19965         * lisp/ses.el (ses-localvars): rename variable
19966         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
19967         and adjust the comment about it.
19968         (ses-plist-delq): new defun.
19969         (ses--ses-buffer-list): new defvar.
19970         (ses--unbind-cell-name): new defun.
19971         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
19972         (ses-relocate-formula): Undo change of
19973         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
19974         preventing relocation for named cell --- now doing this is delegated
19975         to function `ses-relocate-symbol'.
19976         (ses-relocate-range): In docstring, undo change of
19977         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
19978         lower case as it is not a variable.
19979         (ses-relocate-all): Cell name relocation : 1) check that cell is a
19980         renamed cell by testing `ses-cell' property to :ses-named, rather than
19981         comparing name to corresponding standard name. Set rowcol of renamed
19982         cell into the hashmap --- `ses-cell' property must not be used for
19983         that as the same name can be used for different locations in different
19984         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
19985         `local-variable-p' to check if cell name is already in use in this
19986         sheet or needs initialisation.
19987         (ses-relocate-all): Cell value relocation : 1) like for name
19988         relocation use the `ses-cell' property rather than comparing actual
19989         name to corresponding standard name. 2) Correct bug introduced in
19990         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
19991         made the other way round than the intention --- ie value relocation
19992         was disabled for standard cell, not for renamed cell as was the
19993         intention.
19994         (ses-relocate-all): Add loop for unbinding deleted renamed cells
19995         names.
19996         (ses-killbuffer-hook): new defun.
19997         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
19998         kill buffer hook, plus pushing current buffer if new in list.
19999         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
20000         into `ses--in-killing-named-cell-list'.
20001         (ses-rename-cell): Remove update of variable
20002         `ses--renamed-cell-symb-list', this variable is renamed to
20003         `ses--in-killing-named-cell-list', and its setting is done in
20004         functions `ses-delete-row' and , `ses-delete-column' now.
20005         (ses-rename-cell): Change correction of
20006         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
20007         computation of the range over which `cursor-intangible' property was
20008         to be updated. This correction was ok for non spilling cells, but not
20009         for cells spilling over following blank cells. Simply use
20010         `next-single-property-change' rather than computing the end column
20011         from column widths.
20013 2016-01-18  John Wiegley  <johnw@newartisans.com>
20015         -
20017 2016-01-18  John Wiegley  <johnw@newartisans.com>
20019         Merge from origin/emacs-25
20021         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
20022         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
20023         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
20024         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
20025         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
20026         86e4513 Fix incompatbilities with MS-Windows 2000 and older
20027         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
20028         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
20029         39afa42 Fix tests for active region in hideif.el
20030         05df666 Fix interactive specs in some hideif.el commands
20032 2016-01-18  John Wiegley  <johnw@newartisans.com>
20034         -
20036 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
20038         Avoid stdio in SIGINT handler
20040         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
20041         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20042         * lib/ignore-value.h: New file, from gnulib.
20043         * src/keyboard.c: Include it.
20044         (write_stdout, read_stdin): New functions.
20045         (handle_interrupt): Use them instead of printf and getchar,
20046         and avoid fflush when handling signals.
20048 2016-01-18  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
20050         Refactor mml-smime.el, mml1991.el, mml2015.el
20052         (Maybe this is the last merge from Gnus git to Emacs git)
20054         Cf. discussion on ding mailing list, messages in
20055         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
20056         Common code from the three files mml-smime.el, mml1991.el, and
20057         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
20058         to gnus-util.el.
20060         The code is supported by test cases with necessary test keys.
20062         Documentation in message.texi is updated.
20064         * doc/misc/message.texi (Security, Using S/MIME):
20065         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
20066         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
20067         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
20069         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
20070         New functions.
20072         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
20073         (epa--select-keys): Autoload.
20074         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
20075         (mml-secure-openpgp-signers): New user option;
20076         make mml1991-signers and mml2015-signers obsolete aliases to it.
20077         (mml-secure-smime-signers): New user option;
20078         make mml-smime-signers an obsolete alias to it.
20079         (mml-secure-openpgp-encrypt-to-self): New user option;
20080         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
20081         aliases to it.
20082         (mml-secure-smime-encrypt-to-self): New user option;
20083         make mml-smime-encrypt-to-self an obsolete alias to it.
20084         (mml-secure-openpgp-sign-with-sender): New user option;
20085         make mml2015-sign-with-sender an obsolete alias to it.
20086         (mml-secure-smime-sign-with-sender): New user option;
20087         make mml-smime-sign-with-sender an obsolete alias to it.
20088         (mml-secure-openpgp-always-trust): New user option;
20089         make mml2015-always-trust an obsolete alias to it.
20090         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
20091         New user options.
20092         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
20093         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
20094         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
20095         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
20096         (mml-secure-passphrase-callback, mml-secure-check-user-id)
20097         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
20098         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
20099         (mml-secure-fingerprint, mml-secure-filter-keys)
20100         (mml-secure-normalize-cust-name, mml-secure-select-keys)
20101         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
20102         (mml-secure-self-recipients, mml-secure-recipients)
20103         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
20105         * lisp/gnus/mml-smime.el: Require epg;
20106         refactor declaration and autoloading of epg functions.
20107         (mml-smime-use): Doc fix.
20108         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
20109         Obsolete.
20110         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
20111         Use format instead of gnus-format-message.
20112         (mml-smime-epg-secret-key-id-list): Remove variable.
20113         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
20114         (mml-smime-epg-find-usable-secret-key): Remove functions.
20115         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
20117         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
20118         (mml1991-passphrase-cache-expiry): Obsolete.
20119         (mml1991-epg-secret-key-id-list): Remove variable.
20120         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
20121         (mml1991-epg-find-usable-secret-key): Remove functions.
20122         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
20124         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
20125         (mml2015-passphrase-cache-expiry): Obsolete.
20126         (mml2015-epg-secret-key-id-list): Remove variable.
20127         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
20128         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
20129         (mml2015-epg-find-usable-secret-key): Remove functions.
20130         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
20131         (mml2015-epg-encrypt): Refactor.
20133 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
20135         Merge from gnulib
20137         This mostly just updates copyright dates of gnulib files.
20138         It also updates to the latest version of texinfo.tex.
20140 2016-01-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20142         Move variables to inner loop, preparing for Mac port merge
20144         * src/keyboard.c (command_loop_1): Move variables `cmd',
20145         `keybuf', and `i' to inner loop.
20147 2016-01-17  Bill Wohler  <wohler@newt.com>
20149         * mh-e.el (mh-version): Add +git to version.
20151 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20153         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
20155         (syntax-ppss):
20156         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
20158 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20160         lisp/nxml: Use syntax-tables for comments
20162         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
20163         (nxml-mode): Set syntax-ppss-table.
20164         Use sgml-syntax-propertize-function for syntax-propertize-function.
20165         Let font-lock highlight strings and comments.
20166         (nxml-degrade): Don't touch "nxml-inside" property any more.
20167         (nxml-after-change, nxml-after-change1): Remove functions.
20168         (comment): Don't set fontify rule any more.
20169         (nxml-fontify-attribute): Don't highlight the value any more.
20170         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
20171         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
20173         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
20174         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
20175         (nxml-clear-inside, nxml-set-inside): Remove.
20176         (nxml-scan-after-change): Remove function.
20177         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
20178         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
20179         (nxml-move-outside-backwards):
20180         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
20181         nxml-inside-start behavior.
20183         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
20184         (nxml-debug-clear-inside): Remove macros.
20186         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
20187         (xmltok-scan-after-comment-open): Simplify.
20189 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20191         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
20193 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20195         * lisp/nxml: Use standard completion; it also works for company-mode
20197         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
20198         (nxml-completion-at-point-function): Remove.
20199         (nxml-mode): Don't set completion-at-point-functions.
20200         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
20201         (rng-completion-at-point): Rename from rng-complete and mark it
20202         non-interactive.  It is now to be used as completion-at-point-function.
20203         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
20204         (rng-complete-attribute-value): Don't perform completion, but return
20205         completion data instead.
20206         (rng-complete-qname-function, rng-generate-qname-list): Add a few
20207         arguments, previously passed via dynamic coping.
20208         (rng-strings-to-completion-table): Rename from
20209         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
20210         sorting and uniquifying.
20212         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
20213         (rng-completion-exact-p, rng-quote-string): Delete functions.
20215         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
20216         (rng-missing-attributes-message, rng-missing-element-message)
20217         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
20218         calling rng-quote-string everywhere.
20220 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20222         Use sgml-electric-tag-pair-mode also in nxml-mode
20224         * lisp/nxml/rng-nxml.el: Require sgml-mode.
20225         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
20226         (rng-complete-qname-function): Use complete-with-action.
20228         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
20229         Let-bind forward-sexp-function, since nxml-mode binds it to
20230         something incompatible.
20232         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
20234 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20236         * xmltok.el: Mark the "sole --" rather than the comment opener
20238         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
20239         marker on the "sole --" rather than on the comment opener.
20241 2016-01-15  Sam Steingold  <sds@gnu.org>
20243         replace `tramp-compat-split-string' (removed) with `split-string'
20245         (python-shell-tramp-refresh-process-environment)
20246         (python-shell-calculate-pythonpath): use `split-string'
20247         instead of defunct `tramp-compat-split-string'
20249 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20251         Update nXML to use Emacs's Unicode support, and lexical-binding
20253         * etc/nxml/*.el: Remove obsolete char-name files.
20254         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
20255         var `next'.
20256         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
20257         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
20258         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
20259         (nxml-target-section-pos, nxml-depth-in-target-section)
20260         (nxml-outline-state-transform-alist)
20261         (nxml-outline-display-section-tag-function): Move decl before first use.
20262         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
20263         (nxml-char-name-alist, nxml-char-name-table)
20264         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
20265         (nxml-enable-char-name-set, nxml-disable-char-name-set)
20266         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
20267         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
20268         (nxml-insert-named-char): Use read-char-by-name instead.
20269         (nxml-char-ref-display-extra): Use get-char-code-property.
20270         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
20271         Remove function.
20272         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
20274 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
20276         Add "sg" method to Tramp
20278         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
20279         (Customizing Completion): Add function `tramp-parse-etc-group'.
20281         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
20282         (tramp-completion-function-alist-sg): New defconst.
20283         (top): Completion function for "sg" is
20284         `tramp-completion-function-alist-sg'.
20286         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
20287         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
20289 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
20291         Remove XEmacs compatibility in Tramp
20293         * doc/misc/tramp.texi: Replace flags by their hard coded name.
20294         Remove unused flags and the enclosed alternative text for XEmacs.
20296         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
20297         and "xemacs" flags to "unified" and "separate".  Remove flags
20298         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
20299         "emacsothername", "emacsotherdir" and "emacsotherfilename".
20300         (trampver):
20301         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
20303         * lisp/net/tramp.el (bkup-backup-directory-info)
20304         (directory-sep-char, ls-lisp-use-insert-directory-program)
20305         (outline-regexp, tramp-backup-directory-alist)
20306         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
20307         (tramp-file-name-regexp-unified)
20308         (tramp-file-name-regexp-separate)
20309         (tramp-completion-file-name-regexp-unified)
20310         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
20311         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
20312         (tramp-debug-message, tramp-progress-reporter-update)
20313         (with-tramp-progress-reporter)
20314         (tramp-rfn-eshadow-setup-minibuffer)
20315         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
20316         (tramp-rfn-eshadow-update-overlay)
20317         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
20318         (tramp-file-name-for-operation)
20319         (tramp-completion-file-name-handler)
20320         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
20321         (tramp-handle-directory-files)
20322         (tramp-handle-directory-files-and-attributes)
20323         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
20324         (tramp-handle-insert-file-contents, tramp-handle-load)
20325         (tramp-handle-shell-command)
20326         (tramp-handle-verify-visited-file-modtime)
20327         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
20328         (tramp-check-for-regexp, tramp-wait-for-regexp)
20329         (tramp-send-string, tramp-mode-string-to-int)
20330         (tramp-get-local-gid, tramp-check-cached-permissions)
20331         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
20332         (auto-save-file-name-transforms)
20333         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
20334         (tramp-clear-passwd, tramp-time-diff):
20335         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
20336         (directory-sep-char, tramp-adb-file-name-handler-alist)
20337         (tramp-adb-parse-device-names)
20338         (tramp-adb-handle-expand-file-name)
20339         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
20340         (tramp-adb-handle-file-local-copy)
20341         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
20342         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
20343         (tramp-adb-handle-shell-command)
20344         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
20345         (tramp-adb-maybe-open-connection):
20346         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
20347         (tramp-cache-print):
20348         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
20349         (tramp-bug, tramp-reporter-dump-variable)
20350         (tramp-load-report-modules, tramp-append-tramp-buffers):
20351         * lisp/net/tramp-compat.el (tramp-compat-funcall)
20352         (tramp-advice-file-expand-wildcards)
20353         (tramp-compat-temporary-file-directory)
20354         (tramp-compat-make-temp-file, tramp-compat-copy-file)
20355         (tramp-compat-delete-directory, )
20356         (tramp-compat-process-running-p):
20357         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
20358         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
20359         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20360         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
20361         (tramp-gvfs-handle-file-local-copy)
20362         (tramp-gvfs-handle-file-name-all-completions)
20363         (tramp-gvfs-handle-file-notify-add-watch)
20364         (tramp-gvfs-monitor-file-process-filter)
20365         (tramp-gvfs-handle-file-readable-p)
20366         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
20367         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
20368         (tramp-gvfs-maybe-open-connection)
20369         (tramp-gvfs-parse-device-names):
20370         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
20371         (tramp-gw-open-connection, tramp-gw-open-network-stream):
20372         * lisp/net/tramp-sh.el (directory-sep-char)
20373         (tramp-sh-file-name-handler-alist)
20374         (tramp-sh-handle-file-truename)
20375         (tramp-sh-handle-set-visited-file-modtime)
20376         (tramp-sh-handle-verify-visited-file-modtime)
20377         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
20378         (tramp-sh-handle-file-acl)
20379         (tramp-sh-handle-file-name-all-completions)
20380         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
20381         (tramp-do-copy-or-rename-file-directly)
20382         (tramp-do-copy-or-rename-file-out-of-band)
20383         (dired-compress-file-suffixes, dired-remove-file)
20384         (tramp-sh-handle-dired-compress-file)
20385         (tramp-sh-handle-insert-directory)
20386         (tramp-sh-handle-expand-file-name)
20387         (tramp-sh-handle-start-file-process)
20388         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
20389         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
20390         (tramp-sh-handle-file-notify-add-watch)
20391         (tramp-sh-gvfs-monitor-dir-process-filter)
20392         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
20393         (tramp-find-executable)
20394         (tramp-open-connection-setup-interactive-shell)
20395         (tramp-find-inline-encoding, tramp-compute-multi-hops)
20396         (tramp-maybe-open-connection, tramp-convert-file-attributes)
20397         (tramp-get-remote-path, tramp-get-remote-touch):
20398         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20399         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
20400         (tramp-smb-handle-delete-directory)
20401         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
20402         (tramp-smb-handle-make-directory-internal)
20403         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
20404         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
20405         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
20406         (tramp-smb-get-cifs-capabilities)
20407         (tramp-smb-maybe-open-connection):
20408         * lisp/net/trampver.el (tramp-repository-get-version):
20409         Remove XEmacs compat code.
20411         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
20412         (reporter-dump-variable): Declare functions.
20414         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
20415         (tramp-advice-minibuffer-electric-separator)
20416         (tramp-advice-minibuffer-electric-tilde)
20417         (tramp-handle-unhandled-file-name-directory):
20418         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
20419         (tramp-compat-font-lock-add-keywords)
20420         (tramp-compat-load, tramp-compat-number-sequence)
20421         (tramp-compat-split-string, tramp-compat-delete-dups):
20422         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
20423         Remove.
20425         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
20426         recursively.
20428 2016-01-14  K. Handa  <handa@gnu.org>
20430         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
20432         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
20433         second glyph only when there are enough glyphs.
20435 2016-01-13  Glenn Morris  <rgm@gnu.org>
20437         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
20439         or its hook, to move point.  (Bug#22348)
20441 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
20443         Merge missing commit from emacs-25 branch
20445         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
20446         New variables.
20447         (check-expensive, check-doit): New targets.
20449         * Makefile.in (check-expensive): New target.
20451         * test/lisp/autorevert-tests.el
20452         (auto-revert-test01-auto-revert-several-files):
20453         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
20454         (file-notify-test06-many-events):
20455         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
20456         (tramp-test27-start-file-process, tramp-test28-shell-command)
20457         (tramp-test29-vc-registered)
20458         (tramp-test31-special-characters-with-stat)
20459         (tramp-test31-special-characters-with-perl)
20460         (tramp-test31-special-characters-with-ls)
20461         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
20462         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
20463         (tramp-test35-unload): Tag the tests as :expensive-test.
20465 2016-01-11  John Wiegley  <johnw@newartisans.com>
20467         Merge from origin/emacs-25
20469         1f6898d test/automated/vc-hg.el: Support out-of-tree build
20470         3adb56e Minor change in tramp-tests.el
20471         2b535ba ; * etc/NEWS: Update the js.el entry.
20472         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
20473         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
20474         36b9539 Avoid an infloop when we run out of memory
20475         2006752 Avoid unnecessary failures of auto-saving after fatal error
20476         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
20477         552694a Revert attempt to use 'noexcept' in typedef
20478         6ad0d39 Update documentation of 'indirect-function'
20479         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
20480         303141a Update documentation for obsoleting 'syntax-begin-function'
20481         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
20482         e667bbb Document new features if Eshell
20483         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
20484         1089dc9 Handle too long commands in Tramp
20485         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
20486         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
20487         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
20488         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
20489         cca0f93 ; Account for spaces before the filename
20490         c71e1e8 Use short date for 'hg annotate', and output the author
20491         f50027b Spelling fix
20492         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
20493         cc140bc Document user-level functions in project.el
20494         f8208b6 Document the user-level features of the Xref package
20495         b131fb8 * loading.texi: Add `define-type' entry for load-history
20496         db3c2a8 Improve doc strings and prompts in xref.el
20497         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
20498         90fd798 Fix coding system for Tramp on OS X.
20499         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
20500         9dfcbf0 Update 'load-history' docs
20501         207e191 Fix (error ...) error
20502         457738f Correctly analyze brace arguments in templated C++ function declarations.
20503         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
20504         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
20505         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
20506         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
20507         4b37cba Improve documentation of Delete Selection mode
20508         a034dd3 Fix two project-find-file issues
20509         30abf29 Clarify doc string of 'dired-current-directory'
20510         e990bb2 Use the face of preceding text for displaying the ellipsis
20511         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
20512         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
20513         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
20514         648de81 ; Add NEWS entry for project.el
20515         671862f apropos-library: Skip obvious duplicates; don't error on generics
20516         51668a5 ; Grammar fix
20517         ed41d11 Add project-find-file and project-or-external-find-file
20518         056da45 ; Improve commentary in 'setup_for_ellipsis'
20519         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
20521 2016-01-11  John Wiegley  <johnw@newartisans.com>
20523         Merge from origin/emacs-25
20525         ce4a052 Add defvar-local to lisp-imenu-generic-expression
20526         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
20527         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
20528         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
20529         b6b47af Properly encode/decode base64Binary data in SOAP
20530         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
20531         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
20532                 Update the URI of MELPA and marmalade-repo.
20533                 Reported by CHENG Goa <chenggao@royau.me> in
20534                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
20535         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
20536         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
20537         7380990 Remove function wrongly on AWK Mode value of context
20538         fontification hook.
20539         d400753 * src/buffer.c: Stick with ASCII in doc string.
20540         221240c Reword transient-mark-mode doc string
20541         977d3ea Update doc string of 'selective-display'
20542         229c3fa Make C++ buffers writeable when writing their initial text
20543                 properties.
20544         f5c762c Additional changes for "make check-expensive"
20545         1729cf3 ; * admin/MAINTAINERS: Remove myself.
20546         33219d3 Apply text properties for <, > in new after-change function
20547                 (C++ Java Modes).
20549 2016-01-11  John Wiegley  <johnw@newartisans.com>
20551         Merge from origin/emacs-25
20553         9fb185a shr-tag-video bug fix
20554         6300655 Minor fixes in tramp-tests.el
20555         50575b1 Ensure redisplay when 'truncate-lines' is set
20556         0d9e80d Fix a doc string of 'transient-mark-mode'
20557         0000ae5 MS-Windows followup to latest gnulib update
20558         4bc5e02 Spelling fix
20559         f1093f7 Do secure signed Bcc handling
20561 2016-01-11  John Wiegley  <johnw@newartisans.com>
20563         Merge from origin/emacs-25
20565         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
20566         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
20567         71ea138 * lisp/align.el (align): Simplify a lambda
20568         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
20569         1f680db Fix compilation next-error in buffers with selective-display
20570         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
20571         1da116f Add SHA1 warnings for high network security settings
20572         e48bacd ; * etc/NEWS: Typo fix.
20574 2016-01-11  John Wiegley  <johnw@newartisans.com>
20576         Merge from origin/emacs-25
20578         43662a2 ; Clarify that xref is still experimental
20579         0a6e6ca ; * admin/release-process: Remove some obsolete records.
20580         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
20581         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
20582         0a7ad07 ; Re-arrange xref-related entries in NEWS.
20583         fe903ef Fix xref-find-references on MS-Windows
20584         55a28d8 ; Fixed visual bell artifact problem on NextStep.
20585         d064034 Document new features of tildify-mode
20586         964bea7 Document new features of Whitespace mode
20587         cd68f47 Improve documentation of new Hide-IfDef features
20588         723b8bf Fix regression in font-locking cl-assert and cl-check-type
20590 2016-01-11  John Wiegley  <johnw@newartisans.com>
20592         Merge from origin/emacs-25
20594         ef33bc7 Spelling and grammar fixes
20595         9c3dbab Fix copyright years by hand
20596         0e96320 Update copyright year to 2016
20598 2016-01-11  John Wiegley  <johnw@newartisans.com>
20600         Merge from origin/emacs-25
20602         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
20603         526d80c Port chart.el methods to cl-generic.
20604         410bb69 Add nt/INSTALL.W64 build instructions
20605         8f5b524 Add new input method 'programmer-dvorak'
20606         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
20607         bb83bb1 Fix EWW rendering of long RTL lines
20608         b1a8509 fix  bug#21054
20609         ce5ad12 Clean up cairo printing code
20611 2016-01-11  John Wiegley  <johnw@newartisans.com>
20613         Merge from origin/emacs-25
20615         6ee327d Add handle_user_signal_hook
20616         47580e0 Avoid writing to purespace
20617         0588be7 Remove unused variable
20618         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
20619         3b95e9c Use posix_openpt instead of openpty on Darwin
20620         86312ff Document support for ':documentation' in Lisp mode
20621         c930e75b Document new features of TeX mode
20622         7c83d84 Clarify docs of hscroll in RTL text
20623         4c8f8db Fix rendering of HTML pages that use character composition
20624         a8d37ca Avoid some compiler warnings in w32.c
20625         ce106f3de Undo ill-advised change
20626         be0bba4 Unbreak completion in python-mode buffers
20628 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
20630         Adding example replies to bug-triage.
20632         * admin/notes/bug-triage: Added example replies. Also, as requested,
20633           making the process notes into more of a checklist.
20635 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
20637         Rename the notes/admin/triage file to bug-triage.
20639         * CONTRIBUTE: Change reference to the triage file name.
20640         * admin/notes/triage: Rename file to admin/notes/bug-triage.
20642 2016-01-08  K. Handa  <handa@gnu.org>
20644         Fix outdated comments.
20646 2016-01-06  Glenn Morris  <rgm@gnu.org>
20648         Allow creation of loaddefs files without timestamps.
20650         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
20651         (autoload-generate-file-autoloads, update-directory-autoloads):
20652         If autoload-timestamps is nil, write "t" instead of file timestamp.
20653         (autoload-find-destination, update-directory-autoloads):
20654         If timestamp is "t", use the modtime of the output file instead.
20656 2016-01-06  Glenn Morris  <rgm@gnu.org>
20658         Doc tweaks.
20660         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
20661         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
20662         (calendar-iso-from-absolute):
20663         * lisp/calendar/cal-tex.el (cal-tex-comment):
20664         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
20666 2016-01-06  Glenn Morris  <rgm@gnu.org>
20668         Build tweaks related to tags files.
20670         * lib-src/Makefile.in (tagsfiles): New variable.
20671         (TAGS): Also depend on the source files.  Use our own etags program.
20672         * lisp/Makefile.in (ETAGS): Add EXEEXT.
20673         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
20674         Remove.
20675         (tagsfiles): New, replacing lisptagsfiles1 etc.
20676         Remove irrelevant source files here rather than in the TAGS rule.
20677         (${ETAGS}): New rule.
20678         (TAGS): Also depend on the etags executable.
20679         * lwlib/Makefile.in (EXEEXT): New, set by configure.
20680         (ETAGS): Add EXEEXT.
20681         (${ETAGS}): New rule.
20682         (ctagsfiles): Use "wildcard".
20683         (TAGS): Also depend on the etags executable.
20684         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
20685         (${ETAGS}): New rule.
20686         (TAGS): Fix dependencies.
20687         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
20688         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
20689         Remove "-t" argument.
20690         (${ETAGS}): New rule.
20691         (tagsfiles): New variable.
20692         (TAGS): New rule, with proper dependencies.
20693         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
20694         (ctagsfiles1, ctagsfiles2): Use "wildcard".
20695         (ctagsfiles3): Remove.
20696         (TAGS): Depend on etags.
20697         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
20698         directories decide if updates are needed.
20700 2016-01-06  Glenn Morris  <rgm@gnu.org>
20702         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
20704 2016-01-06  Glenn Morris  <rgm@gnu.org>
20706         * test/lisp/emacs-lisp/package-tests.el
20708         (package-test-macro-compilation): Fixup branch merge.
20710 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
20712         Fix fallout from merging emacs-25 branch in test/
20714         * .gitignore: Update for the new place of biditest.txt.
20715         * test/automated/: Directory removed.  All files moved to their
20716         proper places.
20717         * test/etags/: Directory removed.  All files moved to their proper
20718         places.
20719         * test/automated/url-parse-tests.el: File removed; it was an exact
20720         copy of the same file in test/lisp/url/.
20721         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
20723 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20725         Spelling fixes
20727 2016-01-04  Daniel Colascione  <dancol@dancol.org>
20729         Let users disable unsafe signal handling code
20731         * src/keyboard.c (syms_of_keyboard): New user variables
20732         `attempt-stack-overflow-recovery' and
20733         `attempt-orderly-shutdown-on-fatal-signal'.
20734         * src/sysdep.c (stack_overflow): Check
20735         `attempt-stack-overflow-recovery'.
20736         * src/emacs.c (terminate_due_to_signal): Check
20737         `attempt-orderly-shutdown-on-fatal-signal'.
20739 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
20741         * configure.ac: Add error message for gfile on Nextstep.
20743 2016-01-02  John Wiegley  <johnw@newartisans.com>
20745         Merge branch 'emacs-25-merge'
20747 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20749         Align textually on fix done for emacs-25 branch for bug#21054
20751         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
20752         and useless `(if t ...)' in order to align textually on fix done for
20753         emacs-25 branch for bug#21054.
20755 2016-01-01  K. Handa  <handa@gnu.org>
20757         support rendering of wider range of combinging characters by ftfont backend
20759         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
20760         supports rendering of combining characters, call
20761         font-shape-gstring.
20763         * src/font.c (Ffont_get): Handle `combining-capability' property.
20764         (syms_of_font): New symbol ":combining-capability'.
20766         * src/font.h (struct font_driver): New member combining_capability.
20768         * src/ftfont.c: Include "category.h".
20769         (ftfont_driver): Initialize combining_capability to
20770         ftfont_combining_capability.
20771         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
20772         FLT in advance.
20773         (ftfont_combining_capability): New function.
20775 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
20777         Add notes on bug triage procedure
20779         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
20780         * admin/notes/triage: New file explaining triage procedure.
20782 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20784         Correct ses-rename-cell cursor-intangible text prop updating.
20786         There were two problems:
20788         - First ses-rename-cell has to work when called non interactively
20789           (with non-nil CELL argument), so in this case the start pos of
20790           put-text-property cannot be plainly (point), you need a
20791           ses-goto-print call before
20793         - Second, the range itself was computed erronously, only the first
20794           char was affected instead of the full cell width. This was not
20795           noticeable prior to changes (Deprecate `intangible' and
20796           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
20798         * lisp/ses.el (ses-rename-cell): Correct computation of position range
20799         to which the 'cursor-intangible text property has to be set to cell
20800         new name.
20802 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20804         Don't fake empty cells value by "" when printing with a lambda.
20806         When using a lambda expression printer function the user should be
20807         free to format differently a really empty cell, ie. containing nil,
20808         from a cell containing an empty string "".
20810         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
20811         in the case of a lambda expression printer function.
20813         * ses.texi (Printer functions): Add example and description about
20814         lambda expression printer function handling all the possible values,
20815         including unexpected ones.
20817 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20819         Quick temporary hack to fix curcell refreshing.
20821         The problem was caused by change: 2015-04-13 Deprecate `intangible'
20822         and `point-entered' properties. The problem is that this change has
20823         removed the (setq ses--curcell t) setting in the ses-command-hook
20824         function.
20826         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
20827         a condition to call function `ses-set-curcell'. Comment this as a quick
20828         temporary hack to make it work, as I don't know yet whether a definite
20829         correction would be to make the ses-set-curcell at every ses-check-curcell,
20830         or to revert to the previous approach, ie marking ses--curcell as out-of-date
20831         at every potentially cursor motion command.
20833 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20835         Restrictive URL checking tweaks
20837         * lisp/net/eww.el (eww): Check whether the domain is
20838         restrictive instead of the string
20839         (http://македонија.icom.museum is restrictive even if each
20840         part is from a different script).
20842 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20844         New function `puny-highly-restrictive-domain-p'
20846         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
20847         (puny-highly-restrictive-domain-p): New function.
20849 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20851         eww build fix (require puny)
20853 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20855         Transform non-restrictive domains to punycode for display
20857         * lisp/net/eww.el (eww): Check whether the domain is Highly
20858         Restrictive in the Unicode IDNA sense.
20860 2015-12-29  John Wiegley  <johnw@newartisans.com>
20862         Merge emacs-25 into master (using imerge)
20864 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
20866         Further Unicode restrictive fixups
20868         * puny.el (puny-highly-restrictive-p): Include the extra
20869         identifier characters from table 3.
20871 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
20873         Add a new function to say whether a string is restrictive
20875         * puny.el (puny-highly-restrictive-p): New function.
20877 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20879         Mention the new puny.el library
20881 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20883         IDNA-related fixes for the URL library
20885         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
20886         the Host: header.
20888         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
20889         domain names, but leave them as UTF-8, so that they can be
20890         IDNA-encoded later when contacting the host.
20892 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20894         IDNA-encode all domain names in `open-network-stream'
20896         * network-stream.el (open-network-stream)
20897         (network-stream-open-plain, network-stream-open-starttls):
20898         IDNA-encode all domain names, if needed.
20900 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20902         Fix puny-encoding all-non-ASCII domains
20904         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
20906 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20908         shr link traversal fixup
20910         * shr.el (shr-next-link): Don't bug out on adjacent links.
20912 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20914         Reconnect erc even on server errors
20916         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
20917         reconnect even if a server error has occurred (bug#18527).
20919 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20921         Fix punycode short circuit logic
20923         * puny.el (puny-encode-domain): Fix short-circuit logic.
20925 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20927         IDNA speed up
20929         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
20931 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20933         Add IDNA domain encode/decode functions
20935         * puny.el (puny-decode-domain): New function.
20936         (puny-encode-domain): Ditto.
20937         (puny-decode-digit): Fix digit decoding error.
20939 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20941         Rename idna.el to puny.el
20943         * puny.el: Renamed from idna.el to avoid name collisions with
20944         the external idna.el library.
20946 2015-12-27  Katsumi Yamaoka  <yamaoka@jpl.org>
20948         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
20950         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
20951         Don't use split-string with 4th arg for old Emacsen compatibility.
20953 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20955         * idna.el (idna-decode-string-internal): Implement decoding.
20957 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20959         Further IDNA tweaks
20961         (idna-encode-string): Make idna-encode-string safe for
20962         non-ASCII use.
20964 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20966         Clean up the code slightly
20968 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20970         Added basic idna encoding support
20972         * lisp/net/idna.el: New file.
20974 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
20976         Disconnection fixes for erc
20978         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
20979         reconnect if the user has disconnected explicitly (bug#4589).
20981 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
20983         Further erc asynch fixes
20985         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
20986         erc-server-connect to return even if the connection is not
20987         ready.  Then erc-open and erc-server-reconnect do the
20988         same. (bug#5650).
20990 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
20992         Make erc connect asynchronously
20994         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
20995         reconnect asynchronously.
20997         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
20999 2015-12-27  David Edmondson  <dme@dme.org>
21001         Proxy error in erc with multiple clients
21003         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
21004         generated when multiple IRC clients talk to a single IRC proxy
21005         (bug#19034).
21007 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
21009         Fix mml-sec build warnings
21011         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
21012         (bug#18718).
21014 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
21016         (eww-setup-buffer): Restore left-to-right defaults
21018         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
21020 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
21022         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
21024 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
21026         Identify unsafe combinations of Bcc and encryption
21028         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
21029         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
21030         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
21032 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
21034         * shr.el (shr-descend): Allow using lambdas in external functions.
21036 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
21038         * admin/gitmerge.el: Tweaks that seemed necessary
21040         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
21041         (gitmerge-maybe-resume): Provide explicit empty commit message.
21043 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
21045         Use a different port for TLS erc
21047         * lisp/erc/erc.el (erc-default-port-tls): New variable
21048         (bug#19497).
21049         * lisp/erc/erc.el (erc-tls): Use it.
21051 2015-12-25  Alain Schneble  <a.s@realize.ch>
21053         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
21055         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
21056         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
21057         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
21058         information in URL-struct.
21059         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
21060         path and query into nil path and query, respectively.
21061         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
21062         empty path into an absolute ("/") path.
21063         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
21064         fragment-only URIs. Do not just return them unchanged.
21065         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
21066         reference URI should not drop the last segment.
21068 2015-12-25  Alain Schneble  <a.s@realize.ch>
21070         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
21072         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
21073         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
21074         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
21075         information in URL-struct.
21076         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
21077         path and query into nil path and query, respectively.
21078         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
21079         empty path into an absolute ("/") path.
21080         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
21081         fragment-only URIs. Do not just return them unchanged.
21082         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
21083         reference URI should not drop the last segment.
21085 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21087         Let url use default file modes when copying files
21089         * lisp/url/url-handlers.el (url-copy-file): Use default file
21090         modes when copying files (bug#11400).
21092 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
21094         Doc fix for url-http
21096         * lisp/url/url-http.el (url-http): Document better return values
21097           (bug#13187) (tiny change)
21099 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21101         * eww.el (eww-display-html): Support <button> tags (bug#20485).
21103 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21105         Made ffap-url-p a defun instead of a defsubst
21107         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
21108         since there doesn't seem to be much of a reason for it to be a
21109         defsubst (bug#18203).
21111 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21113         Add a command to view files in the browser to dired
21115         * lisp/dired.el (dired-mode-map): Add the `W' command
21116         (bug#18810).
21118 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21120         Allow http://user:pass@foo/ URLs again
21122         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
21123         user/passwords in URLs (bug#19046).
21125 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21127         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
21129 2015-12-25  Samer Masterson  <samer@samertm.com>
21131         Autoload url-insert-buffer-contents
21133         * lisp/url/url-handlers.el: Add autoload cookie so that
21134         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
21136 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21138         Allow toggling colors in eww
21140         * doc/misc/eww.texi (Basics): Mention "C".
21142         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
21144         * lisp/net/shr.el (shr-use-colors): New variable.
21145         (shr-colorize-region): Use it.
21147 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21149         Follow meta refresh tags in eww
21151         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
21153 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21155         More eww file name coding fixes
21157         * eww.el (eww-decode-url-file-name): Use the base coding
21158         system to check for encodability.
21160 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21162         Always save eww history
21164         * eww.el (eww-setup-buffer): Always save history, even when
21165         called from outside the eww buffer (bug#19638).
21167 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21169         Default web pages to right-to-left
21171         * eww.el (eww-mode): Most web pages are left-to-right, so make
21172         that the default (bug#19801).
21174         * shr.el (shr-tag-html): Respect "dir" attributes
21175         (left-to-right, right-to-left).
21177 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21179         Make toggling checkboxes work again
21181         * eww.el (eww-update-field): Make toggling checkboxes work
21182         again (bug#21881).
21184 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21186         Don't store cookies with empty names
21188         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
21189         cookies with empty names (bug#21936).
21191 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21193         Stop rendering HTML before specdlr exhaustion
21195         Fixes: 22117
21197         * shr.el (shr-descend): Stop rendering before we run out of
21198         specpdl room (bug#22117).
21200 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21202         Use cl-reduce, not reduce.
21204 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21206         Allow several <tbody> tags in shr
21208         * shr.el (shr-table-body): New function to find the real body
21209         of a table.
21210         (shr-tag-table): Use it to render several <tbody> tags in a
21211         table (bug#22170).
21213 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21215         Make prettier unique file names in eww
21217         (eww-make-unique-file-name): Make unique file names by making
21218         files like foo(2).jpg instead of foo(1)(2).jpg.
21220 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21222         Decode hex-encoded URLs before using them as file names
21224         * eww.el (eww-decode-url-file-name): New function.
21225         (eww-download-callback): Use it to decode file names before
21226         saving them.
21228 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>
21230         Add FreeBSD cert bundle
21232         * doc/misc/emacs-gnutls.texi (Help For Users): Document
21233         FreeBSD bundle.
21235         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
21237 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21239         Allow overriding shr functions from eww
21241         * eww.el (eww-display-html): Allow overriding elements in
21242         `shr-external-rendering-functions'.
21244 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21246         Ignore invalid SVG images
21248         * shr.el (shr-tag-svg): Ignore SVG images that have no width
21249         or height, because these can't be displayed by ImageMagick,
21250         anyway.
21252 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21254         shr table rendering fix
21256         * shr.el (shr-tag-table): Allow rendering body-less tables
21257         that have headers.
21259 2015-12-22  Sam Steingold  <sds@gnu.org>
21261         clipboard should still work even if interprogram-* is disabled
21263         (clipboard-yank): When `interprogram-cut-function' is nil,
21264         bind it to `gui-selection-value' - the default value.
21265         (clipboard-kill-region, clipboard-kill-ring-save): When
21266         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
21267         the default value.
21269 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
21271         Fix bootstrap issue with dired-loaddefs
21273         * lisp/dired.el: Autoloads for secondary files loaded optionally.
21275 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21277         dired generate autoloads to non-versioned file.
21279         * lisp/dired.el: Remove autoloads.
21280         * lisp/Makefile.in: Add dired to autogenel.
21281         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
21282         * test/lisp/dired-tests.el: Add new test.
21284 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21286         eieio generate autoloads to non-versioned file.
21288         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
21289         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
21290           Remove autoloads.
21291         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
21292           lisp/emacs-lisp/eieio-opt.el: Update file local.
21293         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
21295 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21297         htmlfontify generate autoload to non-versioned file.
21299         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
21300         * lisp/hfy-cmap.el: Update file local.
21301         * lisp/htmlfontify.el: Remove autoloads, add require.
21302         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
21304 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21306         ibuffer generate autoloads to non-versioned file.
21308         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
21309         * lisp/ibuf-ext.el: Update file local.
21310         * lisp/ibuffer.el: Remove autoloads and add a require.
21311         * test/lisp/ibuffer-tests.el: Test that autoload is working.
21313 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21315         rmail generate autoloads to non-versioned file.
21317         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
21318         * lisp/mail/rmail.el: Remove autoloads, add require.
21319         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
21320           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
21321           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
21322           lisp/mail/undigest.el: Update file-local.
21323         * test/lisp/mail/rmail-tests.el:
21325 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21327         Add autoload-force target.
21329         * lisp/Makefile.in (autoload-force): New target.
21331 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21333         ps-print generate autoloads to non versioned file.
21335         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
21336         * lisp/ps-print.el: Remove autoloads.
21337         * lisp/ps-mule.el: Update file-local.
21338         * test/lisp/ps-print-tests.el: Test autoload functionality.
21340 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21342         reftex generate autoloads to non versioned file.
21344         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
21345         * lisp/textmodes/reftex.el: Remove autoloads.
21346         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
21347           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
21348           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
21349           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
21350           lisp/textmodes/reftex-toc.el: Update autoload file-local.
21351         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
21352           function.
21354 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21356         * lisp/calculator.el (calculator-define-key): Undo last change
21358         Make map argument mandatory instead (bug#22106).
21359         (calculator-add-operators): Pass the argument that's not optional any more.
21361 2015-12-03  Glenn Morris  <rgm@gnu.org>
21363         * Makefile.in: Avoid duplication.
21365         (have-tests): New rule.
21366         (check, check-maybe): Use it.
21368 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
21370         make check unconditional, check-maybe top-level.
21372          * Makefile.in: Add check-maybe target.
21373          * test/Makefile.in: Restore unconditional behaviour to make check.
21375 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
21377         Tests now support out-of-source-build.
21379          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
21380            about current working directory.
21382 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
21384         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
21386 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21388         Improve documentation and clean up.
21390          * test/Makefile.in: Improve documentation, use EMACS variable
21391            correctly, and clean up makefile rules.
21393 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21395         Update file headers for name change.
21397          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
21399 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21401         Test files renamed to new scheme.
21403          * (finalizer-tests.el): Now renamed alloc-tests.el
21404          * (zlib-tests.el): Now renamed decompress-tests.el.
21406 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21408         Tests now depend on source files
21410          * test/Makefile.in: Include dependences from tests to source files.
21411          * test/make-test-deps.emacs-lisp: New file
21412          * .gitignore: Ignore generated make include file
21414 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21416         * lisp/progmodes/which-func.el: Improve disabling the mode
21418         Use lexical-binding.
21419         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
21420         (which-func, which-func-format): Remove redundant :group arg.
21421         (which-func-try-to-enable): New function.
21422         (which-func-ff-hook, which-function-mode): Use it.
21423         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
21424         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
21426 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21428         * lisp/calculator.el (calculator-define-key): Silence warning
21430         ...about unknown calculator-mode-map.
21432 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21434         * lisp/calculator.el: more improvements and bugfixes.
21436         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
21437           effect anyway.)
21439         - Simplify `calculator-number-to-string' by throwing most of the work
21440           onto `number-to-string', leaving just some tweaks for decimal inputs.
21441           This leads to some minor changes, for example, pasting "1x1" in hex
21442           mode would warn that "x" is ignored and result in "11" (and it wasn't
21443           done in decimal mode), whereas now it just ignores everything from the
21444           "x" and on and result in a "1" just like in decimal input mode.  Also,
21445           overflows are left for `number-to-string' to deal with.
21447         - `calculator-paste' is very simple as a result.
21449         - Extend the simplified `calculator-paste': with a prefix argument it
21450           pastes a string as if the characters were entered.  This can be used
21451           to reduce expressions, but note that it's a simple literal operation,
21452           so precedence can be messed, a number can be paster while entering a
21453           number, spaces and newlines matter, etc.
21455         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
21456           operator.
21458         - Fix a bug in `calculator-put-value': avoid grouping in the display
21459           that is used to construct `calculator-curnum'.  This would trigger
21460           when pasting or getting a value from a register in some radix mode
21461           with a large enough value.  Another fix: make the output radix equal
21462           the input one, otherwise numbers could be converted twice.
21464 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21466         * lisp/calculator.el: Re-do key bindings.
21468         Use a helper function that arranges a parent keymap that binds alternate
21469         case keys so if some letter key is unbound and it's un/shifted version
21470         is, it will get used.  This makes the global-map trickery unnecessary.
21472         Also switch to passing strings that name keys through `kbd'.
21474 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21476         * lisp/calculator.el: improve radix modes
21478         Fix prompt for some input radix with decimal output (eg, "BD" instead of
21479         the incorrect "B="); also, some minor docstring tweaks for these.
21481 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21483         * lisp/calculator.el: better reading of register names
21485         Use `register-read-with-preview' with a dynamically bound
21486         `register-alist' and a proper preview function to read register names.
21488 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21490         * lisp/calculator.el: General improvements
21492         Use things like `when', `unless', and `push'.
21494         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
21495         non-electric mode.
21497 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
21499         Fix a problem with gfilenotify in filenotify-tests.el
21501         * test/lisp/filenotify-tests.el
21502         (file-notify--test-expected-events): Remove.
21503         (file-notify--test-cleanup): Do not set that variable.
21504         (file-notify--test-with-events): EVENTS can also be a list of lists.
21505         (file-notify-test02-events, file-notify-test04-file-validity):
21506         Adapt expected result.
21508 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
21510         * .gitignore: Adjust to changes in 'test' directory structure.
21512 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
21514         Fix test/manual/etags/Makefile
21516         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
21517         changes in 'test' directory structure.
21519 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21521         Exclude resource dirs from search for tests.
21523         * test/Makefile.in: Test file locations are now found with find
21524           rather than using finds native functions.
21526 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21528         Add test targets without directory names.
21530          * (test/Makefile.in): Extend test_template to add two targets for each
21531            file.
21533 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
21535         * lisp/emacs-lisp/package.el: Require url-handlers
21537 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21539         Move elisp-mode-tests to new function names.
21541          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
21542          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
21544 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
21546         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
21548 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
21550         Merge branch 'feature/standard-test-location'
21552 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
21554         * lisp/emacs-lisp/eieio.el: Add some default implementations
21556         (standard-class): Mark it obsolete.
21557         (slot-missing): Give it a default implementation.
21558         (destructor): Simplify and mark it obsolete.
21559         (object-print): Give it a default implementation.
21560         (eieio-change-class): Rename from change-class.
21561         (change-class): Redefine as obsolete alias.
21563 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21565         Mention kqueue in NEWS
21567 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21569         Merge from scratch/kqueue
21571         bec57a4 Some final fixes in file notification before merging with master
21572         0247489 Rework file notifications, kqueue has problems with directory monitors
21573         5154781 Continie with pending events
21574         6b490c0 Improve loops in file-notify-test06-many-events
21575         c8e266f Handle more complex rename operation in kqueue
21576         5044bdf New test with a larger number of events.
21577         65ba5a9 Further fixes for kqueue.
21578         13f3508 Code cleanup of kqueue.c
21579         99aa855 Doc changes for kqueue
21580         8deebe1 Finish implementation in kqueue.c
21581         90d6c69 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
21582         e95b309 More work on kqueue
21583         41d9bd0 Implement directory events
21584         c571fc1 Build fixes for kqueue support.
21585         e0a68f2 Continue kqueue implementation
21586         7543d1c Work on kqueue
21587         e3354e2 Add kqueue support
21588         c6457ce Minor fix to comment indentation and typo in last commit
21589         b92307f linum-mode plays more nicely with other margin-setting extensions
21590         58e6235 * lisp/image-mode.el: Support encrypted file
21591         9375652 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
21592         47f83b6 ; ChangeLog.2 fixes
21593         7cc233e * lisp/emacs-lisp/package.el: Fix a decoding issue
21594         5f9153f * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
21595         353f5e7 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
21596         70f1fda ; Auto-commit of ChangeLog files.
21597         ae0653b * CONTRIBUTE: Remove information about feature freeze.
21598         9459456 Merge branch 'release-process-lowercase'
21599         9a4aa0f Document the release process
21600         f8cc14b * admin/release-process: Rename from admin/FOR-RELEASE.
21601         dcd5877 gitmerge: Fix git log command
21602         2ac79ae gitmerge: Try to detect cherry-picks
21603         5f7a2a9 Increment Emacs version on master branch
21604         ed2e7e2 Mention CONTRIBUTE in README
21605         9e00a02 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
21606         138ad3d ; Fix warnings
21607         7126e9a ; Update xref-etags-mode for the latest change
21608         246d660 Use generic dispatch for xref backends
21609         31f6e93 Support rectangular regions for more commands
21610         f103a27 Handle multiple matches on the same line; add highlighting
21611         fe973fc Replace xref-match-bounds with xref-match-length
21612         92a5010 Merge from gnulib
21613         04ac097 Spruce up ftfont.c memory allocation
21614         4c4b520 Port recent XCB changes to 64-bit ‘long int’
21615         4f0ce9c * src/undo.c (run_undoable_change): Now static.
21616         695a6f9 Remove support for ':timeout' from w32 tray notifications
21617         a731c2f * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
21618         2b4c0c0 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
21619         66b9f7b * src/undo.c: Small fixes for previous change
21620         2fac30e Add a few more variables to redisplay--variables
21621         04f69f1 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
21622         e221d32 Fix point positioning after transposing with negative arg
21623         35f5afb Fix last change in shr.el
21624         508e77b Fix last change
21625         d60ed3f Another fix for MinGW64 and Cygwin builds due to notifications
21626         805a39b Remove intern calls and XXX comments from Fx_export_frames
21627         9463abf shr: don't invoke unbound function (Bug#21895)
21628         6e5186e * test/automated/keymaps-test.el: Fix test to make it repeatable
21629         0c92826 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
21630         39dbd1c : Tests for undo-auto functionality.
21631         20aa42e ; Merge branch 'fix/no-undo-boundary-on-secondary-buffer-change'
21632         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'.
21633         d2f73db Bind [?\S-\ ] to previous line command in Dired-like modes.
21634         c1bc6e5 Fix the MinGW64 and Cygwin-w32 builds
21635         1e363a8 Enable sorting of JSON object keys when encoding
21636         9dd7da9 * test/automated/keymap-tests.el: New test file
21637         aa17de9 Speed up x_real_pos_and_offsets using XCB
21638         a838c83 Enable use of XCB for checking window manager state
21639         c7f2b6a Detect XCB and save a connection handle
21640         e1c27db Reduce some data dependencies between X calls
21641         25e32bd Use color cache for creating bitmap
21642         851be0f Add "^" to the interactive specs of `dired-next/previous-line'
21643         055ca3a Sync with soap-client repository, version 3.0.2
21644         e0f64e7 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
21645         952395d * lisp/obarray.el: Fix shadowed variables
21646         436d330 Avoid error in submitting a form with EWW
21647         e887f6e ; * doc/lispref/os.texi: Fix indentation of sample code.
21648         51d840a Rename seq-p and map-p to seqp and mapp
21649         23036ba Rename obarray-p to obarrayp
21650         20aea42 Rename obarray-foreach to obarray-map
21651         a3b2101 New file with obarray functions.
21652         9d43941 Implement tray notifications for MS-Windows
21654 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21656         Some final fixes in file notification before merging with master
21658         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
21659         (file-notify-callback): Improve check for `stopped' event.  Call
21660         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
21661         (file-notify-add-watch): In case FILE is not a directory, call the
21662         file monitor for the kqueue backend.  Otherwise, call the
21663         directory monitor for the upper directory.
21665         * src/inotify.c (inotifyevent_to_event): Extract file name from
21666         watch_object if the event doesn't provide it.
21667         (Finotify_add_watch): Add file name to watch_object.
21669         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21670         Use different timeouts for different libraries.
21671         (file-notify--test-with-events): Suppress lock files.  Flush
21672         outstanding events before running the body.
21673         (file-notify-test02-events, file-notify-test04-file-validity): Do
21674         not skip cygwin tests.  Add additional test for file creation.
21675         Adapt expected result for different backends.
21676         (file-notify-test03-autorevert): Some of the tests don't work for
21677         w32notify.
21678         (file-notify-test06-many-events): Rename into both directions.
21680 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21682         Rework file notifications, kqueue has problems with directory monitors
21684         * lisp/filenotify.el (file-notify-add-watch): Call the native
21685         add-watch function on the file, not on the dir.
21687         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
21688         about already deleted entries.
21690         * test/automated/auto-revert-tests.el
21691         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
21692         since this deletes the target file first.
21694         * test/automated/file-notify-tests.el (file-notify--test-event-test):
21695         Make stronger checks.
21696         (file-notify-test01-add-watch, file-notify-test02-events)
21697         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21698         Rewrite in order to call file monitors but directory monitors.
21699         (file-notify-test06-many-events): Ler rename work in both directions.
21701 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21703         Continie with pending events
21705         * src/kqueue.c (pending_events): Remove global variable.
21706         (kqueue_compare_dir_list): Create `write' event for not used
21707         pending events.
21708         (globals_of_kqueue): Remove initialization of pending_events.
21710 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21712         Improve loops in file-notify-test06-many-events
21714         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
21715         Use `read-event' pauses for the `write-file' loops; otherwise
21716         events are lost in inotify and gfilenotify cases.
21718 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21720         Handle more complex rename operation in kqueue
21722         * src/kqueue.c (pending_events): New variable.
21723         (kqueue_compare_dir_list): Handle more complex rename operation.
21724         (globals_of_kqueue): Initialize pending_events.
21726         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
21727         Adapt expected events in the `rename-file' case.
21728         (file-notify-test06-many-events-remote): Declare.
21730 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
21732         New test with a larger number of events.
21734         * test/automated/file-notify-tests.el (file-notify--test-with-events):
21735         Make timeout heuristically depend on the number of events.
21737         (file-notify-test06-many-events): Use it for new test.
21739 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21741         Further fixes for kqueue.
21743         * lisp/filenotify.el (file-notify-callback): Raise also event if
21744         directory name matches.
21745         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
21747         * src/kqueue.c (kqueue_generate_event): Use watch_object as
21748         argument instead of ident.  Remove callback argument.  Adapt
21749         callees.  Check actions whether they are monitored flags.
21751         * test/automated/file-notify-tests.el (file-notify--test-library):
21752         New defun.
21753         (file-notify-test00-availability, file-notify-test02-events)
21754         (file-notify-test04-file-validity)
21755         (file-notify-test05-dir-validity): Use it.
21756         (file-notify-test02-events, file-notify-test04-file-validity): Add
21757         `read-event' calls between different file actions, in order to
21758         give the backends a chance to rais an event.  Needed especially
21759         for kqueue.  In case of deleting a directory, there are two
21760         `deleted' events.
21762 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21764         Code cleanup of kqueue.c
21766         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
21767         (kqueue_compare_dir_list): Do not loop when calling
21768         directory_files_internal.  Remove checks for "." and "..", this is
21769         done in kqueue_directory_listing now.
21770         (Fkqueue_add_watch): Check for proper emacs_open flags.
21772 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21774         Doc changes for kqueue
21776         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
21777         Fix some glitches in the example.
21779 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21781         Finish implementation in kqueue.c
21783         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
21784         Simplify access to list.
21785         (kqueue_compare_dir_list): Simplify access to list.  Raise
21786         `delete' event if directory does not exist any longer.  Otherwise,
21787         wait until directory contents has changed.  Fix error in check.
21789 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21791         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
21793 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21795         More work on kqueue
21797         * lisp/filenotify.el (file-notify-callback): Handle also the
21798         `rename' event from kqueue.
21799         (file-notify-add-watch): Do not register an entry twice.
21801         * src/kqueue.c (kqueue_directory_listing): New function.
21802         (kqueue_generate_event): New argument FILE1.  Adapt callees.
21803         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
21805 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21807         Implement directory events
21809         * lisp/filenotify.el (file-notify-handle-event)
21810         (file-notify-callback): Remove traces.
21812         * src/kqueue.c: Include <sys/time.h>.
21813         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
21814         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
21815         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
21816         Compute initial directory listing.  Close file descriptor in case
21817         of errors.
21818         (syms_of_kqueue): Declare Qcreate.
21820 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
21822         Build fixes for kqueue support.
21824         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
21825         flag.
21827         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
21828         kqueue on *BSD.
21830 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21832         Continue kqueue implementation
21834         * lisp/filenotify.el (file-notify-handle-event)
21835         (file-notify-callback): Enable trace messages.
21837         * src/kqueue.c: Include also <sys/types.h>.
21838         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
21839         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
21840         (syms_of_kqueue): Add them.
21842 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21844         Work on kqueue
21846         * lisp/filenotify.el (file-notify--library)
21847         (file-notify-descriptors, file-notify-callback)
21848         (file-notify-add-watch, file-notify-rm-watch)
21849         (file-notify-valid-p): Add kqueue support.
21851         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
21853 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21855         Add kqueue support
21857         * configure.ac (--with-file-notification): Add kqueue.
21858         (top): Remove special test for "${HAVE_NS}" and
21859         ${with_file_notification}, this is handled inside gfilenotify
21860         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
21861         instead of library specific variables.
21863         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
21865         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
21867         * src/kqueue.c: New file.
21869         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
21871 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21873         Some final fixes in file notification before merging with master
21875         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
21876         (file-notify-callback): Improve check for `stopped' event.  Call
21877         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
21878         (file-notify-add-watch): In case FILE is not a directory, call the
21879         file monitor for the kqueue backend.  Otherwise, call the
21880         directory monitor for the upper directory.
21882         * src/inotify.c (inotifyevent_to_event): Extract file name from
21883         watch_object if the event doesn't provide it.
21884         (Finotify_add_watch): Add file name to watch_object.
21886         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21887         Use different timeouts for different libraries.
21888         (file-notify--test-with-events): Suppress lock files.  Flush
21889         outstanding events before running the body.
21890         (file-notify-test02-events, file-notify-test04-file-validity): Do
21891         not skip cygwin tests.  Add additional test for file creation.
21892         Adapt expected result for different backends.
21893         (file-notify-test03-autorevert): Some of the tests don't work for
21894         w32notify.
21895         (file-notify-test06-many-events): Rename into both directions.
21897 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21899         Update elisp-mode-tests for changed file location.
21901          * test/lisp/progmodes/elisp-mode-tests.el:
21903 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21905         Exclude manual tests from Makefile
21907          * test/Makefile.in:
21909 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21911         Move package test files to new directory.
21913          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
21914          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
21916 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21918         Restore delete Makefiles and fix .gitignore.
21920          * .gitignore: Update Makefiles to changed locations
21921          * test/lisp/progmodes/flymake-resources/Makefile,
21922            test/manual/etags/Makefile,
21923            test/manual/etags/make-src/Makefile,
21924            test/manual/indent/Makefile: Restored and moved to new location.
21926 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21928         Test infrastructure: updates after directory move
21930          * (test/Makefile.in): Support directories several levels deep.
21931          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
21932          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
21934 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21936         Rename all test files to reflect source layout.
21938          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
21939            test directory moves.
21940          * test/file-organisation.org: New file.
21941          * test/automated/Makefile.in
21942            test/automated/data/decompress/foo.gz
21943            test/automated/data/epg/pubkey.asc
21944            test/automated/data/epg/seckey.asc
21945            test/automated/data/files-bug18141.el.gz
21946            test/automated/data/flymake/test.c
21947            test/automated/data/flymake/test.pl
21948            test/automated/data/package/archive-contents
21949            test/automated/data/package/key.pub
21950            test/automated/data/package/key.sec
21951            test/automated/data/package/multi-file-0.2.3.tar
21952            test/automated/data/package/multi-file-readme.txt
21953            test/automated/data/package/newer-versions/archive-contents
21954            test/automated/data/package/newer-versions/new-pkg-1.0.el
21955            test/automated/data/package/newer-versions/simple-single-1.4.el
21956            test/automated/data/package/package-test-server.py
21957            test/automated/data/package/signed/archive-contents
21958            test/automated/data/package/signed/archive-contents.sig
21959            test/automated/data/package/signed/signed-bad-1.0.el
21960            test/automated/data/package/signed/signed-bad-1.0.el.sig
21961            test/automated/data/package/signed/signed-good-1.0.el
21962            test/automated/data/package/signed/signed-good-1.0.el.sig
21963            test/automated/data/package/simple-depend-1.0.el
21964            test/automated/data/package/simple-single-1.3.el
21965            test/automated/data/package/simple-single-readme.txt
21966            test/automated/data/package/simple-two-depend-1.1.el
21967            test/automated/abbrev-tests.el
21968            test/automated/auto-revert-tests.el
21969            test/automated/calc-tests.el
21970            test/automated/icalendar-tests.el
21971            test/automated/character-fold-tests.el
21972            test/automated/comint-testsuite.el
21973            test/automated/descr-text-test.el
21974            test/automated/electric-tests.el
21975            test/automated/cl-generic-tests.el
21976            test/automated/cl-lib-tests.el
21977            test/automated/eieio-test-methodinvoke.el
21978            test/automated/eieio-test-persist.el
21979            test/automated/eieio-tests.el
21980            test/automated/ert-tests.el
21981            test/automated/ert-x-tests.el
21982            test/automated/generator-tests.el
21983            test/automated/let-alist.el
21984            test/automated/map-tests.el
21985            test/automated/advice-tests.el
21986            test/automated/package-test.el
21987            test/automated/pcase-tests.el
21988            test/automated/regexp-tests.el
21989            test/automated/seq-tests.el
21990            test/automated/subr-x-tests.el
21991            test/automated/tabulated-list-test.el
21992            test/automated/thunk-tests.el
21993            test/automated/timer-tests.el
21994            test/automated/epg-tests.el
21995            test/automated/eshell.el
21996            test/automated/faces-tests.el
21997            test/automated/file-notify-tests.el
21998            test/automated/auth-source-tests.el
21999            test/automated/gnus-tests.el
22000            test/automated/message-mode-tests.el
22001            test/automated/help-fns.el
22002            test/automated/imenu-test.el
22003            test/automated/info-xref.el
22004            test/automated/mule-util.el
22005            test/automated/isearch-tests.el
22006            test/automated/json-tests.el
22007            test/automated/bytecomp-tests.el
22008            test/automated/coding-tests.el
22009            test/automated/core-elisp-tests.el
22010            test/automated/decoder-tests.el
22011            test/automated/files.el
22012            test/automated/font-parse-tests.el
22013            test/automated/lexbind-tests.el
22014            test/automated/occur-tests.el
22015            test/automated/process-tests.el
22016            test/automated/syntax-tests.el
22017            test/automated/textprop-tests.el
22018            test/automated/undo-tests.el
22019            test/automated/man-tests.el
22020            test/automated/completion-tests.el
22021            test/automated/dbus-tests.el
22022            test/automated/newsticker-tests.el
22023            test/automated/sasl-scram-rfc-tests.el
22024            test/automated/tramp-tests.el
22025            test/automated/obarray-tests.el
22026            test/automated/compile-tests.el
22027            test/automated/elisp-mode-tests.el
22028            test/automated/f90.el
22029            test/automated/flymake-tests.el
22030            test/automated/python-tests.el
22031            test/automated/ruby-mode-tests.el
22032            test/automated/subword-tests.el
22033            test/automated/replace-tests.el
22034            test/automated/simple-test.el
22035            test/automated/sort-tests.el
22036            test/automated/subr-tests.el
22037            test/automated/reftex-tests.el
22038            test/automated/sgml-mode-tests.el
22039            test/automated/tildify-tests.el
22040            test/automated/thingatpt.el
22041            test/automated/url-future-tests.el
22042            test/automated/url-util-tests.el
22043            test/automated/add-log-tests.el
22044            test/automated/vc-bzr.el
22045            test/automated/vc-tests.el
22046            test/automated/xml-parse-tests.el
22047            test/BidiCharacterTest.txt
22048            test/biditest.el
22049            test/cedet/cedet-utests.el
22050            test/cedet/ede-tests.el
22051            test/cedet/semantic-ia-utest.el
22052            test/cedet/semantic-tests.el
22053            test/cedet/semantic-utest-c.el
22054            test/cedet/semantic-utest.el
22055            test/cedet/srecode-tests.el
22056            test/cedet/tests/test.c
22057            test/cedet/tests/test.el
22058            test/cedet/tests/test.make
22059            test/cedet/tests/testdoublens.cpp
22060            test/cedet/tests/testdoublens.hpp
22061            test/cedet/tests/testfriends.cpp
22062            test/cedet/tests/testjavacomp.java
22063            test/cedet/tests/testnsp.cpp
22064            test/cedet/tests/testpolymorph.cpp
22065            test/cedet/tests/testspp.c
22066            test/cedet/tests/testsppcomplete.c
22067            test/cedet/tests/testsppreplace.c
22068            test/cedet/tests/testsppreplaced.c
22069            test/cedet/tests/testsubclass.cpp
22070            test/cedet/tests/testsubclass.hh
22071            test/cedet/tests/testtypedefs.cpp
22072            test/cedet/tests/testvarnames.c
22073            test/etags/CTAGS.good
22074            test/etags/ETAGS.good_1
22075            test/etags/ETAGS.good_2
22076            test/etags/ETAGS.good_3
22077            test/etags/ETAGS.good_4
22078            test/etags/ETAGS.good_5
22079            test/etags/ETAGS.good_6
22080            test/etags/a-src/empty.zz
22081            test/etags/a-src/empty.zz.gz
22082            test/etags/ada-src/2ataspri.adb
22083            test/etags/ada-src/2ataspri.ads
22084            test/etags/ada-src/etags-test-for.ada
22085            test/etags/ada-src/waroquiers.ada
22086            test/etags/c-src/a/b/b.c
22087            test/etags/c-src/abbrev.c
22088            test/etags/c-src/c.c
22089            test/etags/c-src/dostorture.c
22090            test/etags/c-src/emacs/src/gmalloc.c
22091            test/etags/c-src/emacs/src/keyboard.c
22092            test/etags/c-src/emacs/src/lisp.h
22093            test/etags/c-src/emacs/src/regex.h
22094            test/etags/c-src/etags.c
22095            test/etags/c-src/exit.c
22096            test/etags/c-src/exit.strange_suffix
22097            test/etags/c-src/fail.c
22098            test/etags/c-src/getopt.h
22099            test/etags/c-src/h.h
22100            test/etags/c-src/machsyscalls.c
22101            test/etags/c-src/machsyscalls.h
22102            test/etags/c-src/sysdep.h
22103            test/etags/c-src/tab.c
22104            test/etags/c-src/torture.c
22105            test/etags/cp-src/MDiagArray2.h
22106            test/etags/cp-src/Range.h
22107            test/etags/cp-src/burton.cpp
22108            test/etags/cp-src/c.C
22109            test/etags/cp-src/clheir.cpp.gz
22110            test/etags/cp-src/clheir.hpp
22111            test/etags/cp-src/conway.cpp
22112            test/etags/cp-src/conway.hpp
22113            test/etags/cp-src/fail.C
22114            test/etags/cp-src/functions.cpp
22115            test/etags/cp-src/screen.cpp
22116            test/etags/cp-src/screen.hpp
22117            test/etags/cp-src/x.cc
22118            test/etags/el-src/TAGTEST.EL
22119            test/etags/el-src/emacs/lisp/progmodes/etags.el
22120            test/etags/erl-src/gs_dialog.erl
22121            test/etags/f-src/entry.for
22122            test/etags/f-src/entry.strange.gz
22123            test/etags/f-src/entry.strange_suffix
22124            test/etags/forth-src/test-forth.fth
22125            test/etags/html-src/algrthms.html
22126            test/etags/html-src/index.shtml
22127            test/etags/html-src/software.html
22128            test/etags/html-src/softwarelibero.html
22129            test/etags/lua-src/allegro.lua
22130            test/etags/objc-src/PackInsp.h
22131            test/etags/objc-src/PackInsp.m
22132            test/etags/objc-src/Subprocess.h
22133            test/etags/objc-src/Subprocess.m
22134            test/etags/objcpp-src/SimpleCalc.H
22135            test/etags/objcpp-src/SimpleCalc.M
22136            test/etags/pas-src/common.pas
22137            test/etags/perl-src/htlmify-cystic
22138            test/etags/perl-src/kai-test.pl
22139            test/etags/perl-src/yagrip.pl
22140            test/etags/php-src/lce_functions.php
22141            test/etags/php-src/ptest.php
22142            test/etags/php-src/sendmail.php
22143            test/etags/prol-src/natded.prolog
22144            test/etags/prol-src/ordsets.prolog
22145            test/etags/ps-src/rfc1245.ps
22146            test/etags/pyt-src/server.py
22147            test/etags/tex-src/gzip.texi
22148            test/etags/tex-src/nonewline.tex
22149            test/etags/tex-src/testenv.tex
22150            test/etags/tex-src/texinfo.tex
22151            test/etags/y-src/atest.y
22152            test/etags/y-src/cccp.c
22153            test/etags/y-src/cccp.y
22154            test/etags/y-src/parse.c
22155            test/etags/y-src/parse.y
22156            test/indent/css-mode.css
22157            test/indent/js-indent-init-dynamic.js
22158            test/indent/js-indent-init-t.js
22159            test/indent/js-jsx.js
22160            test/indent/js.js
22161            test/indent/latex-mode.tex
22162            test/indent/modula2.mod
22163            test/indent/nxml.xml
22164            test/indent/octave.m
22165            test/indent/pascal.pas
22166            test/indent/perl.perl
22167            test/indent/prolog.prolog
22168            test/indent/ps-mode.ps
22169            test/indent/ruby.rb
22170            test/indent/scheme.scm
22171            test/indent/scss-mode.scss
22172            test/indent/sgml-mode-attribute.html
22173            test/indent/shell.rc
22174            test/indent/shell.sh
22175            test/redisplay-testsuite.el
22176            test/rmailmm.el
22177            test/automated/buffer-tests.el
22178            test/automated/cmds-tests.el
22179            test/automated/data-tests.el
22180            test/automated/finalizer-tests.el
22181            test/automated/fns-tests.el
22182            test/automated/inotify-test.el
22183            test/automated/keymap-tests.el
22184            test/automated/print-tests.el
22185            test/automated/libxml-tests.el
22186            test/automated/zlib-tests.el: Files Moved.
22188 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
22190         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
22192         * verilog-mode.el (verilog-save-font-no-change-functions):
22193         Commentary and fix pre-Emacs 21 behavior.
22195 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
22197         Rework file notifications, kqueue has problems with directory monitors
22199         * lisp/filenotify.el (file-notify-add-watch): Call the native
22200         add-watch function on the file, not on the dir.
22202         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
22203         about already deleted entries.
22205         * test/automated/auto-revert-tests.el
22206         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
22207         since this deletes the target file first.
22209         * test/automated/file-notify-tests.el (file-notify--test-event-test):
22210         Make stronger checks.
22211         (file-notify-test01-add-watch, file-notify-test02-events)
22212         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22213         Rewrite in order to call file monitors but directory monitors.
22214         (file-notify-test06-many-events): Ler rename work in both directions.
22216 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
22218         Use obarray functions from obarray.
22220         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
22221           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
22222           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
22223           delegate to obarray.el functions.
22224         * lisp/loadup.el: load obarray before abbrev
22225         * test/automated/abbrev-tests.el: new tests
22227 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22229         Continie with pending events
22231         * src/kqueue.c (pending_events): Remove global variable.
22232         (kqueue_compare_dir_list): Create `write' event for not used
22233         pending events.
22234         (globals_of_kqueue): Remove initialization of pending_events.
22236 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22238         Improve loops in file-notify-test06-many-events
22240         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
22241         Use `read-event' pauses for the `write-file' loops; otherwise
22242         events are lost in inotify and gfilenotify cases.
22244 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22246         Handle more complex rename operation in kqueue
22248         * src/kqueue.c (pending_events): New variable.
22249         (kqueue_compare_dir_list): Handle more complex rename operation.
22250         (globals_of_kqueue): Initialize pending_events.
22252         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
22253         Adapt expected events in the `rename-file' case.
22254         (file-notify-test06-many-events-remote): Declare.
22256 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
22258         epa.el: Add option to replace original text
22260         * lisp/epa.el (epa-replace-original-text): New user option.
22261         (Bug#21947)
22263 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
22265         Add interactive seek command.
22267         * lisp/mpc.el (mpc-cmd-seekcur): New function.
22268         (mpc-seek-current): New command.
22269         (mpc-mode-menu): Add entry for mpc-seek-current
22270         (mpc-mode-map): Bind mpc-seek-current to "g"
22272 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
22274         Fix issue where a new tempfile was created every refresh
22276         * lisp/mpc.el (mpc-format): Leave dir as relative path
22278 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
22280         New test with a larger number of events.
22282         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22283         Make timeout heuristically depend on the number of events.
22285         (file-notify-test06-many-events): Use it for new test.
22287 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
22289         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
22291         (c-save-buffer-state): Use with-silent-modifications when available.
22292         (c--macroexpand-all): Check macroexpand-all directly rather than
22293         c--mapcan-status.
22295 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
22297         * lisp/loadup.el: Set max-lisp-eval-depth here
22299         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
22300         (BYTE_COMPILE_FLAGS): Adjust accordingly.
22302 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
22304         Further fixes for kqueue.
22306         * lisp/filenotify.el (file-notify-callback): Raise also event if
22307         directory name matches.
22308         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
22310         * src/kqueue.c (kqueue_generate_event): Use watch_object as
22311         argument instead of ident.  Remove callback argument.  Adapt
22312         callees.  Check actions whether they are monitored flags.
22314         * test/automated/file-notify-tests.el (file-notify--test-library):
22315         New defun.
22316         (file-notify-test00-availability, file-notify-test02-events)
22317         (file-notify-test04-file-validity)
22318         (file-notify-test05-dir-validity): Use it.
22319         (file-notify-test02-events, file-notify-test04-file-validity): Add
22320         `read-event' calls between different file actions, in order to
22321         give the backends a chance to rais an event.  Needed especially
22322         for kqueue.  In case of deleting a directory, there are two
22323         `deleted' events.
22325 2015-11-17  João Távora  <joaotavora@gmail.com>
22327         Minor fix to comment indentation and typo in last commit
22329         * linum.el (linum-update-window): Fix comment indentation and a
22330         typo.
22332 2015-11-17  João Távora  <joaotavora@gmail.com>
22334         linum-mode plays more nicely with other margin-setting extensions
22336         linum.el will only modify the left margin if it needs to, and will
22337         only reset the it back to 0 if it guesses that no-one has touched that
22338         margin in the meantime.
22340         As such, this is a more of a workaround than an actual fix, but fixes
22341         the problems described in bug#20674 regarding the interaction with
22342         modes such as darkroom-mode and olivetti-mode.
22344         A similar fix was commited to nlinum.el in ELPA.git's
22345         e7f5f549fbfb740b911fb7f33b42381ecece56d8
22347         * linum.el (linum-delete-overlays): Restore margins more
22348         criteriously.
22349         (linum-update-window): Set margins more criteriously.
22351 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
22353         Code cleanup of kqueue.c
22355         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
22356         (kqueue_compare_dir_list): Do not loop when calling
22357         directory_files_internal.  Remove checks for "." and "..", this is
22358         done in kqueue_directory_listing now.
22359         (Fkqueue_add_watch): Check for proper emacs_open flags.
22361 2015-11-16  Daiki Ueno  <ueno@gnu.org>
22363         * lisp/image-mode.el: Support encrypted file
22365         (image-toggle-display-image): Read content from the buffer instead
22366         of the file, if the buffer holds a decrypted data.  (Bug#21870)
22368 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
22370         Doc changes for kqueue
22372         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
22373         Fix some glitches in the example.
22375 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
22377         Finish implementation in kqueue.c
22379         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
22380         Simplify access to list.
22381         (kqueue_compare_dir_list): Simplify access to list.  Raise
22382         `delete' event if directory does not exist any longer.  Otherwise,
22383         wait until directory contents has changed.  Fix error in check.
22385 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
22387         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
22389 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
22391         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
22393 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
22395         * lisp/emacs-lisp/package.el: Fix a decoding issue
22397         (package--with-response-buffer): Use `url-insert-buffer-contents'.
22398         The previous code had some issues with decoding. Refactoring that
22399         function allows us to use the decoding from url-handlers while still
22400         treating both sync and async requests the same.
22402         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
22403         `url-insert-buffer-contents'.
22404         (url-insert-buffer-contents): New function
22406 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
22408         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
22410         (package--with-work-buffer-async): Reimplement as
22411         `package--with-response-buffer'.
22412         (package--with-work-buffer): Mark obsolete.
22413         (package--with-response-buffer): New macro. This is a more self
22414         contained and less contrived version of
22415         `package--with-work-buffer-async'.  It uses keyword arguments,
22416         doesn't have async on the name, doesn't fallback on
22417         `package--with-work-buffer', and has _much_ simpler error
22418         handling.
22420         (package--check-signature, package--download-one-archive)
22421         (package-install-from-archive, describe-package-1): Use it.
22423         (package--download-and-read-archives): Let
22424         `package--download-one-archive' take care of calling
22425         `package--update-downloads-in-progress'.
22427 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22429         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
22431         (verilog-save-buffer-state): Use with-silent-modifications when available.
22432         (verilog-save-font-no-change-functions): Don't bind
22433         before/after-change-functions if it's not needed.
22435 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
22437         More work on kqueue
22439         * lisp/filenotify.el (file-notify-callback): Handle also the
22440         `rename' event from kqueue.
22441         (file-notify-add-watch): Do not register an entry twice.
22443         * src/kqueue.c (kqueue_directory_listing): New function.
22444         (kqueue_generate_event): New argument FILE1.  Adapt callees.
22445         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
22447 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22449         * CONTRIBUTE: Remove information about feature freeze.
22451         Merge branch 'release-process-lowercase'
22453 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22455         Document the release process
22457         * admin/notes/versioning: Add information about RC releases.
22458         * admin/release-process: Document the release process.
22459         * admin/authors.el (authors-ignored-files):
22460         * admin/README: Change FOR-RELEASE to release-process.
22461         * CONTRIBUTE:
22462         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
22464 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22466         * admin/release-process: Rename from admin/FOR-RELEASE.
22468 2015-11-14  David Engster  <deng@randomsample.de>
22470         gitmerge: Fix git log command
22472         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
22473         only want commits from the branch that is to be merged.
22474         (gitmerge-setup-log-buffer): Use the same symmetric range as in
22475         `gitmerge-missing'.
22477 2015-11-14  David Engster  <deng@randomsample.de>
22479         gitmerge: Try to detect cherry-picks
22481         * admin/gitmerge.el (gitmerge-default-branch): Change to
22482         origin/emacs-25.
22483         (gitmerge-missing): Use symmetric difference ('...') between
22484         branch and master so that cherry-picks can be detected.
22486 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
22488         Implement directory events
22490         * lisp/filenotify.el (file-notify-handle-event)
22491         (file-notify-callback): Remove traces.
22493         * src/kqueue.c: Include <sys/time.h>.
22494         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
22495         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
22496         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
22497         Compute initial directory listing.  Close file descriptor in case
22498         of errors.
22499         (syms_of_kqueue): Declare Qcreate.
22501 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
22503         Increment Emacs version on master branch
22505         * lisp/cus-edit.el (customize-changed-options-previous-release):
22506         Increase previous version to 24.5.
22508         * configure.ac:
22509         * msdos/sed2v2.inp: Bump version to 25.1.50.
22511 2015-11-13  Xue Fuqiao  <xfq.free@gmail.com>
22513         Mention CONTRIBUTE in README
22515         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
22516         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
22517         * README: Mention CONTRIBUTE.
22519 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
22521         Update verilog-mode.el to 2015-11-09-b121d60-vpo.
22523         * verilog-mode.el (verilog-auto, verilog-delete-auto)
22524         (verilog-modi-cache-results, verilog-save-buffer-state)
22525         (verilog-save-font-no-change-functions): When internally suppressing change
22526         functions, use `inhibit-modification-hooks' and call
22527         `after-change-funtions' to more nicely work with user hooks.  Reported by
22528         Stefan Monnier.
22530         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
22531         Create `verilog-delete-auto-buffer' to avoid double-calling
22532         fontification hooks.
22534         (verilog-restore-buffer-modified-p, verilog-auto)
22535         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
22536         set-buffer-modified-p. Reported by Stefan Monnier.
22538         (verilog-diff-auto, verilog-diff-buffers-p)
22539         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
22541         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
22542         AUTOINST with unpacked dimensional parameters, bug981. Reported by
22543         by Amol Nagapurkar.
22545         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
22546         properties inside internal structures. No functional change
22547         intended.
22549 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
22551         Build fixes for kqueue support.
22553         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
22554         flag.
22556         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
22557         kqueue on *BSD.
22559 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22561         Continue kqueue implementation
22563         * lisp/filenotify.el (file-notify-handle-event)
22564         (file-notify-callback): Enable trace messages.
22566         * src/kqueue.c: Include also <sys/types.h>.
22567         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
22568         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
22569         (syms_of_kqueue): Add them.
22571 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22573         Work on kqueue
22575         * lisp/filenotify.el (file-notify--library)
22576         (file-notify-descriptors, file-notify-callback)
22577         (file-notify-add-watch, file-notify-rm-watch)
22578         (file-notify-valid-p): Add kqueue support.
22580         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
22582 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22584         Add kqueue support
22586         * configure.ac (--with-file-notification): Add kqueue.
22587         (top): Remove special test for "${HAVE_NS}" and
22588         ${with_file_notification}, this is handled inside gfilenotify
22589         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
22590         instead of library specific variables.
22592         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
22594         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
22596         * src/kqueue.c: New file.
22598         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
22600 This file records repository revisions from
22601 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
22602 commit f15f6b53078ac2176f8d2c05d99d3d9b4d32986b (inclusive).
22603 See ChangeLog.1 for earlier changes.
22605 ;; Local Variables:
22606 ;; coding: utf-8
22607 ;; End:
22609   Copyright (C) 2015-2017 Free Software Foundation, Inc.
22611   This file is part of GNU Emacs.
22613   GNU Emacs is free software: you can redistribute it and/or modify
22614   it under the terms of the GNU General Public License as published by
22615   the Free Software Foundation, either version 3 of the License, or
22616   (at your option) any later version.
22618   GNU Emacs is distributed in the hope that it will be useful,
22619   but WITHOUT ANY WARRANTY; without even the implied warranty of
22620   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22621   GNU General Public License for more details.
22623   You should have received a copy of the GNU General Public License
22624   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.