Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
[emacs.git] / ChangeLog.3
blob9f43511991cdeb47e752fe326b0c2a2f92f08488
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" occurred 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  Alexander Gramiak  <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         * lisp/outline.el (outline-invisible-p): Only return `t' for
3993         the 'outline property.
3995 2016-09-29  Paul Eggert  <eggert@cs.ucla.edu>
3997         Fix problems found by static checking --with-ns
3999         This is for Fedora 24 when configured with --enable-gcc-warnings.
4000         Although it does not fix all the problems, it fixes many of them.
4001         * src/frame.c (XParseGeometry):
4002         * src/nsterm.m (mouseDown:):
4003         Mark locals with UNINIT to pacify --enable-gcc-warnings.
4004         * src/image.c (PIX_MASK_DRAW, DefaultDepthOfScreen):
4005         Remove unused macros.
4006         (slurp_file xbm_scan, xbm_read_bitmap_data, xbm_load_image)
4007         (xbm_file_p, xbm_load, xpm_scan, xpm_make_color_table_v)
4008         (xpm_put_color_table_v, xpm_get_color_table_v)
4009         (xpm_make_color_table_h, xpm_put_color_table_h)
4010         (xpm_get_color_table_h, xpm_load_image, xpm_load)
4011         (pbm_next_char, pbm_scan_number, pbm_load, svg_load)
4012         (svg_load_image):
4013         * src/nsfns.m (x_get_string_resource):
4014         * src/nsimage.m (ns_image_from_XBM):
4015         Fix pointer signedness problems.
4016         * src/image.c (xpm_load_image, x_build_heuristic_mask, pbm_load)
4017         (imagemagick_load_image): Omit unused locals.
4018         * src/nsfns.m (ns_send_types, ns_return_types, ns_drag_types)
4019         (Fx_open_connection):
4020         * src/nsfont.m (ns_antialias_threshold):
4021         Move extern decl to nsterm.h so it can be checked.
4022         * src/nsmenu.m (svcsMenu, dockMenu):
4023         Move to the only file that uses them, so they can be static.
4024         * src/nsterm.h (find_and_call_menu_selection):
4025         * src/nsterm.m (x_set_frame_alpha):
4026         Omit duplicate decls.
4027         * src/nsterm.h (ns_dump_glyphstring): Mark as EXTERNALLY_VISIBLE.
4028         * src/nsfns.m (ns_tooltip, ns_display_info_for_name)
4029         (ns_set_name_as_filename, x_set_menu_bar_lines)
4030         (x_set_tool_bar_lines, x_set_internal_border_width):
4031         * src/nsterm.m (ns_drag_types, ns_draw_text_decoration):
4032         Now static.
4033         * src/nsfns.m (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp):
4034         * src/nsterm.m (ns_free_indexed_color, ns_color_to_lisp):
4035         Remove; unused.
4036         * src/nsfont.m (ns_dump_glyphstring):
4037         * src/nsterm.m (hide_bell, ns_get_color, ns_color_to_lisp)
4038         (ns_clear_frame, keyDown:):
4039         Fix signedness problem with printf arg.
4040         * src/nsterm.h (ns_input_events, ns_finish_events):
4041         * src/nsterm.m (ns_finish_events, hide_bell):
4042         Prototype the decls.
4043         * src/nsterm.m (NSMenuDidBeginTrackingNotification):
4044         Omit unnecessary decl.
4045         (dockMenu):
4046         (mainMenu) [NS_IMPL_COCOA]: Now static, and in this file.
4047         (ns_dumpglyphs_box_or_relief, changeFont:, initFrameFromEmacs:)
4048         (toggleFullScreen:): Use FACE_FROM_ID instead of
4049         FACE_FROM_ID_OR_NULL in contexts where the caller expects the
4050         result to be non-null.
4051         (applicationShouldTerminate:): Fix misleading indentation.
4053 2016-09-28  Mark Oteiza  <mvoteiza@udel.edu>
4055         Turn on more lexical-binding
4057         * lisp/dom.el:
4058         * lisp/faces.el:
4059         * lisp/htmlfontify.el: Turn on lexical-binding.
4060         (htmlfontify-string): Use pushnew instead of add-to-list.
4061         * lisp/info-xref.el:
4062         * lisp/isearch.el:
4063         * lisp/man.el:
4064         * lisp/ps-def.el:
4065         * lisp/ps-print.el:
4066         * lisp/replace.el: Turn on lexical-binding.  Require cl-lib at compile
4067         time.
4068         (multi-occur): Use cl-pushnew instead of add-to-list.
4069         (replace-match-string-symbols): Remove unused lexical variable.
4070         (replace-search, replace-highlight): Fix argument shadowing.
4071         * lisp/sort.el:
4072         * lisp/xml.el: Turn on lexical-binding.
4073         (xml--parse-buffer): Use push instead of add-to-list.
4074         * lisp/xt-mouse.el: Turn on lexical-binding.
4076 2016-09-27  Michael Albinus  <michael.albinus@gmx.de>
4078         * admin/notes/bug-triage: Do not mention closed bugs
4080         * admin/notes/bug-triage: Do not mention closed bugs, they are
4081         suppressed by default in debbugs-{gnu,org}.
4083 2016-09-27  Michael Albinus  <michael.albinus@gmx.de>
4085         * etc/PROBLEMS: Remove problem Bug#22814, again.
4087 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4089         Stick with debbugs-supported tags in triage
4091         * admin/notes/bug-triage: Stick to the tag "unreproducible", which
4092         debbugs supports, rather than suggesting "doneunreproducible" or
4093         "unreproducable".
4095 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4097         Merge from origin/emacs-25
4099         9fc9988 Improve documentation of 'expand-abbrev' and wrapper hooks
4100         c14a1d4 Minor copyedits of MS-Windows installation instructions
4101         f281924 Fix display of cursor when 'blink-cursor-delay' has small value
4103         # Conflicts:
4104         #       lisp/minibuffer.el
4106 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4108         Merge from origin/emacs-25
4110         0ae9a81 Document 'timerp'
4111         2c72c46 Improve documentation of overlay priorities
4112         f6fa160 Fix 'dired-compress-files'
4113         2b8c5f0 Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
4115         # Conflicts:
4116         #       lisp/dired.el
4117         #       src/buffer.h
4118         #       src/character.h
4120 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4122         Merge from origin/emacs-25
4124         cf9e174 Document the optional zlib library in MS-Windows builds
4125         84eb144 ; * admin/notes/unicode: Mention BidiCharacterTest.txt.
4126         73c67dd Fix tagging of DEFUN by etags
4127         ea1960b Avoid resetting track-mouse by mouse clicks
4128         505fef3 Improve nt/README.W32 instructions
4129         1229cc4 Document that desktop file overrides frame parameters
4130         f0eb70d ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 release
4132         # Conflicts:
4133         #       ChangeLog.2
4134         #       admin/notes/unicode
4135         #       lisp/ldefs-boot.el
4137 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4139         Merge from origin/emacs-25
4141         0ffc9ce Update admin/authors.el
4142         0ad7410 Update Antinews in ELisp manual
4143         ea0f750 Fix comments on window height macros
4144         0bbdeed Fix 'url-http-create-request' when cookies are used
4145         0045998 Fix cross reference in frames.texi
4146         1392894 ; * etc/DEBUG: Minor copyedits.
4147         304a5c8 ; * etc/DEBUG: Improve documentation of getting control to GDB.
4148         56bf7d7 Fix regexp-opt documentation (bug #17862)
4149         803ad6f ; Fix documentation of seq-subseq
4150         ed4530d * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in doc...
4151         88ea396 ; Spelling fixes
4152         17197d0 Fix tags-query-replace docstring
4153         80a7f8b Clarify documentation of precision in format specs
4154         88a5052 Improve and clarify documentation of subprocesses
4155         89eb09f * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
4157         # Conflicts:
4158         #       etc/PROBLEMS
4159         #       src/process.c
4161 2016-09-26  Michael Albinus  <michael.albinus@gmx.de>
4163         * lisp/net/tramp-compat.el (tramp-compat-funcall): Don't use `subrp'.
4165 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4167         Fix 'dired-mark-extension' with prefix argument
4169         * lisp/dired-x.el (dired-mark-extension): Allow to specify
4170         MARKER-CHAR interactively as a string, not as a character's
4171         codepoint.  (Bug#24518)
4173         * doc/misc/dired-x.texi (Advanced Mark Commands): Document the
4174         behavior when invoked with a prefix arg.
4176 2016-09-24  Simen Heggestøyl  <simenheg@gmail.com>
4178         Support completion of classes and IDs in CSS mode
4180         * lisp/textmodes/css-mode.el (css-class-list-function): New variable
4181         holding the function to call for retrieving completions of class
4182         names.
4183         (css-id-list-function): New variable holding the function to call for
4184         retrieving completions of IDs.
4185         (css--foreign-completions): New function for retrieving completions
4186         from other buffers.
4187         (css--complete-selector): Support completing HTML class names and IDs
4188         from other buffers in addition to completing HTML tags.
4190         * lisp/textmodes/sgml-mode.el (html--buffer-classes-cache): New
4191         variable holding a cache for `html-current-buffer-classes'.
4192         (html--buffer-ids-cache): New variable holding a cache for
4193         `html-current-buffer-ids'.
4194         (html-current-buffer-classes): New function returning a list of class
4195         names used in the current buffer.
4196         (html-current-buffer-ids): New function returning a list of IDs used
4197         in the current buffer.
4198         (html-mode): Set `css-class-list-function' and `css-id-list-function'
4199         to `html-current-buffer-classes' and `html-current-buffer-ids'
4200         respectively.
4202 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4204         Update test suite files due to removal of test/lisp/legacy
4206         * test/README: Reference file-organization.org.
4207         * test/file-organization.org: Remove the description of files in
4208         the lisp/legacy/ directory.
4210 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4212         Incorporate syntax-tests in lisp-tests.
4214         * test/lisp/emacs-lisp/lisp-tests.el: Add tests from
4215         test/lisp/legacy/syntax-tests.el.
4216         * test/lisp/legacy/syntax-tests.el: File deleted.
4218 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4220         Incorporate occur-tests in replace-tests
4222         * test/lisp/replace-tests.el: Add tests from
4223         test/lisp/legacy/occur-tests.el.
4224         * test/lisp/legacy/occur-tests.el: File deleted.
4226 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4228         Incorporate lexbind-tests.el in bytecomp-test.el
4230         * test/lisp/emacs-lisp/bytecomp-tests.el: Added tests from
4231         test/lisp/legacy/lexbind-tests.el.
4232         * test/lisp/legacy/lexbind-tests.el: File deleted.
4234 2016-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4236         Improve integer overflow handling a bit
4238         * src/charset.c (read_hex): Use INT_LEFT_SHIFT_OVERFLOW for clarity.
4239         The machine code is the same on my platform.
4240         * src/doprnt.c (doprnt):
4241         * src/emacs-module.c (module_funcall):
4242         * src/font.c (font_intern_prop):
4243         * src/keyboard.c (Frecursion_depth):
4244         * src/lread.c (read1):
4245         Use WRAPV macros instead of checking overflow by hand.
4246         * src/editfns.c (hi_time, time_arith, decode_time_components):
4247         * src/emacs-module.c (Fmodule_load):
4248         Simplify by using FIXNUM_OVERFLOW_P.
4249         * src/emacs-module.c: Include intprops.h.
4250         * src/xdisp.c (percent99): New function.
4251         (decode_mode_spec): Use it to simplify overflow avoidance and
4252         formatting of %p and %P.
4254 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4256         Incorporate core-elisp-tests in lisp-tests
4258         * test/lisp/emacs-lisp/lisp-tests.el: Added tests from
4259         test/lisp/legacy/core-elisp-tests.el.
4260         * test/lisp/legacy/core-elisp-tests.el: File removed.
4262 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4264         Move coding-tests.el and decoder-test.el to their places
4266         * test/src/coding-tests.el: Added all the tests from
4267         test/lisp/legacy/decoder-tests.el.
4268         * test/lisp/legacy/decoder-tests.el: File deleted.
4270 2016-09-23  Vibhav Pant  <vibhavp@gmail.com>
4272         Use correct TYPE value for displaying error messages in (erc-display-message)
4274 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
4276         Bump the version to 25.2.50
4278         * README:
4279         * configure.ac:
4280         * etc/NEWS:
4281         * msdos/sed2v2.inp: Increment the Emacs version to 25.2.50.
4283 2016-09-22  Tino Calancha  <tino.calancha@gmail.com>
4285         ibuffer-do-view-other-frame: Display each buffer in a new frame
4287         * lisp/ibuffer.el (ibuffer-do-view-1):
4288         When TYPE equals 'other-frame, then display each buffer
4289         in a new frame (Bug#24086).
4291 2016-09-22  Paul Eggert  <eggert@cs.ucla.edu>
4293         Update from gnulib
4295         This incorporates:
4296         2016-09-22 stdint: port to GCC 7
4297         2016-09-22 limits-h, stdint: don't assume extensions
4298         * doc/misc/texinfo.tex, m4/limits-h.m4, m4/stdint.m4: Copy from gnulib.
4300 2016-09-22  Alan Mackenzie  <acm@muc.de>
4302         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Fix coding error
4304 2016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4306         Port recent flexmember changes to NetBSD
4308         The NetBSD library supports localtime_rz directly, and without
4309         this change 'configure' omitted the flexmember test that is marked
4310         as conditional on localtime_rz.  Emacs now needs to use
4311         flexmember.m4 even when localtime_rz works.
4312         Problem reported by Thomas Klausner.
4313         * admin/merge-gnulib (GNULIB_MODULES): Add flexmember.
4314         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4316 2016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4318         * doc/misc/texinfo.tex: Copy from gnulib.
4320 2016-09-21  Michael Albinus  <michael.albinus@gmx.de>
4322         * lisp/net/tramp.el (tramp-clear-passwd): Call also `auth-source-forget'.
4324 2016-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4326         Use flexmembers on IBM XL C for AIX
4328         This removes a workaround where Emacs did not use flexible
4329         array members when compiled with IBM XL C.  Instead, avoid
4330         the problem by making the aliasing issues more obvious to
4331         this compiler.
4332         * admin/merge-gnulib: Don’t remove m4/flexmember.m4.
4333         * m4/flexmember.m4: Copy from gnulib.
4334         * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Remove workaround.
4335         * src/alloc.c (allocate_string_data): Rephrase to avoid aliasing
4336         problem that would otherwise mess up code generated for flexible
4337         array members by IBM XL C for AIX, V12.1.
4338         * src/conf_post.h (FLEXIBLE_ARRAY_MEMBER): Remove; now done
4339         by gnulib code.
4341 2016-09-19  Michael Albinus  <michael.albinus@gmx.de>
4343         Fix a problem with Tramp when the temporary dir isn't C:/Temp on w32
4345         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name): Don't use
4346         `tramp-drop-volume-letter' any longer, it causes collateral
4347         damages.  Reported by Chris Zheng <chriszheng99@gmail.com>.
4349 2016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4351         Port January __morecore changes to AIX 7.1
4353         * src/vm-limit.c (__MALLOC_HOOK_VOLATILE, __morecore)
4354         (__after_morecore_hook):
4355         * src/ralloc.c (__morecore):
4356         Declare if DOUG_LEA_MALLOC is not defined, not if HAVE_MALLOC_H is
4357         not defined.  <malloc.h> does not declare these in AIX 7.1.
4359 2016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4361         Define _GNU_SOURCE in files delaying config.h
4363         Problem reported by Richard Copley in:
4364         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00440.html
4365         * src/w32.c, src/w32notify.c, src/w32proc.c (_GNU_SOURCE):
4366         Define early.
4368 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
4370         Update the bidi test code and data
4372         * test/manual/BidiCharacterTest.txt: Import the version from
4373         Unicode Standard 9.0.0.
4374         * test/manual/biditest.el (biditest-generate-testfile): Allow 'x'
4375         in the 4th field of the test data.
4377 2016-09-17  Tino Calancha  <tino.calancha@gmail.com>
4379         ibuffer-do-toggle-read-only: Fix unused argument
4381         * lisp/ibuffer.el (ibuffer-do-toggle-read-only): Call
4382         'read-only-mode' with ARG when its an integer.
4383         Clarify the meaning of ARG in doc string.
4385 2016-09-17  Alan Mackenzie  <acm@muc.de>
4387         Improve accuracy of line/column numbers in byte compiler's warning messages.
4389         * lisp/emacs-lisp/bytecomp.el (byte-compile-set-symbol-position): ensure new
4390         value of byte-compile-last-position is not lower than old value.
4391         (byte-compile-function-warn): call byte-compile-set-symbol-position.
4393 2016-09-17  Michael Albinus  <michael.albinus@gmx.de>
4395         Minor Tramp tweaks
4397         * lisp/net/tramp.el (tramp-get-buffer): Reuse connection
4398         property "process-buffer" if already existing.
4399         (tramp-connectable-p): Suppress debug messages.
4401 2016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4403         Define _GNU_SOURCE in unexmacosx.c
4405         Problem reported by Bob Halley in:
4406         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00427.html
4407         * src/unexmacosx.c (_GNU_SOURCE): Define if not already defined.
4409 2016-09-16  Alan Mackenzie  <acm@muc.de>
4411         C Mode: Fix mis-fontification of macro invocation as function declaration
4413         This happened with a macro invocation which was followed by a statement block
4414         in braces.
4416         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): CASE 11: distinguish
4417         between contexts nil and top, being less permissive in the former case.
4418         (c-just-after-func-arglist-p): call c-forward-decl-or-cast-1 with context top.
4420 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4422         Improve the doc string of 'format'
4424         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
4425         of a literal period.  (Bug#24407)
4427 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4429         Improve doc strings in whitespace.el
4431         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
4432         (global-whitespace-mode, global-whitespace-newline-mode): Improve
4433         the doc strings.  (Bug#24413)
4435 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4437         Improve detectability of 'next-logical-line' and 'previous-logical-line'
4439         * lisp/simple.el (next-line, previous-line): Mention
4440         'next-logical-line' and 'previous-logical-line' in the doc
4441         strings.  (Bug#24443)
4443 2016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4445         Update from gnulib
4447         This incorporates:
4448         2016-09-16 extensions: fix typo in comment
4449         2016-09-16 stdio: don't redefine __USE_MINGW_ANSI_STDIO
4450         * m4/extensions.m4, m4/stdio_h.m4: Copy from gnulib.
4452 2016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4454         Prefer now-standard int width macros
4456         * src/data.c (ULL_WIDTH):
4457         * src/lisp.h (EMACS_INT_WIDTH, BITS_PER_BITS_WORD):
4458         * src/lread.c (read_integer):
4459         * src/term.c (produce_glyphless_glyph):
4460         * src/xterm.c (x_send_scroll_bar_event):
4461         Use *_WIDTH macros instead of CHAR_BIT * sizeof.
4462         * src/data.c (ULL_WIDTH): Rename from BITS_PER_ULL for consistency
4463         with the *_WIDTH standard macros.  All uses changed.
4464         * src/gmalloc.c (INT_BIT): Remove.  All uses replaced with INT_WIDTH.
4465         * src/lisp.h (EMACS_INT_WIDTH): Rename from BITS_PER_EMACS_INT
4466         for consistency with the *_WIDTH standard macros.  All uses changed.
4467         (BITS_PER_CHAR): Remove; all uses replaced by CHAR_BIT.  This must
4468         be the same as CHAR_WIDTH and avoids confusion with Elisp
4469         char-width, which counts columns not bits.
4470         (BITS_PER_SHORT): Remove; all uses replaced by SHRT_WIDTH.
4471         (BITS_PER_LONG): Remove; all uses replaced by LONG_WIDTH.
4472         * src/lread.c: Do not include limits.h since CHAR_BIT is no longer
4473         used directly.
4475 2016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4477         Update from gnulib
4479         This incorporates:
4480         2016-09-15 stdint: support new _WIDTH macros
4481         2016-09-15 limits-h: new module
4482         2016-09-15 sys_types: avoid glibc 2.25 warnings about major()
4483         2016-09-15 extensions: port to more ISO C TSes
4484         2016-09-13 intprops: new macro TYPE_WIDTH
4485         2016-09-13 extensions: port to recent ISO C TRs
4486         * .gitignore: Add lib/limits.h.
4487         * doc/misc/texinfo.tex, lib/ftoastr.h, lib/intprops.h:
4488         * lib/stdint.in.h, m4/extensions.m4, m4/stdint.m4, m4/stdio_h.m4:
4489         * m4/sys_types_h.m4: Copy from gnulib.
4490         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4491         * lib/limits.in.h, m4/limits-h.m4: New files, copie from gnulib.
4492         * nt/gnulib.mk: Merge changes from lib/gnulib.mk.
4494 2016-09-15  Michael Albinus  <michael.albinus@gmx.de>
4496         Rework fixing Bug#24432
4498         * lisp/net/tramp.el (tramp-get-buffer): Set connection property
4499         "process-buffer" in order to mark connection as active.
4501         * lisp/net/tramp-cache.el (tramp-get-hash-table)
4502         (tramp-set-connection-property)
4503         (tramp-dump-connection-properties): Do not use "active" property.
4504         (tramp-list-connections): Use "process-buffer" property.
4506         * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Flush process
4507         properties prior deletion of process.
4509 2016-09-14  Johan Bockgård  <bojohan@gnu.org>
4511         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix debug spec (Bug#24430).
4513         * lisp/emacs-lisp/edebug.el (defun): Fix debug spec.
4515 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
4517         Avoid compiler warning on MS-Windows due to clone_file
4519         * src/fileio.c (clone_file): Condition on !WINDOWSNT, since the
4520         call to it is not compiled in that build, and having it defined
4521         causes compiler warnings.
4523 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
4525         Avoid aborts in GC due to abort_on_gc
4527         * src/lisp.h:
4528         * src/print.c (Fprin1_to_string):
4529         * src/eval.c (signal_or_quit):
4530         * src/alloc.c (garbage_collect_1): Remove declarations, setting,
4531         and testing the value of abort_on_gc.  It is no longer needed, and
4532         using it causes rare aborts in GC for no good reason.  (Bug#23912)
4534 2016-09-14  Michael Albinus  <michael.albinus@gmx.de>
4536         Fix Bug#24432
4538         * lisp/net/tramp-cache.el (tramp-get-hash-table): Initialize a
4539         connection as inactive.
4540         (tramp-set-connection-property): Make the connection active.
4541         (tramp-dump-connection-properties): Don't save "active" property.
4542         (tramp-list-connections): List only active connections.  (Bug#24432)
4544 2016-09-14  Lars Ingebrigtsen  <larsi@gnus.org>
4546         Don't bug out on all-whitespace URLs
4548         * lisp/net/shr.el (shr-expand-url): Don't bug out on
4549         degenerate all-whitespace URLs.
4551 2016-09-13  Katsumi Yamaoka  <yamaoka@jpl.org>
4553         sieve-manage.el: Rename sieve-manage-ignore-broken-tls
4555         * lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
4556         Rename from sieve-manage-ignore-broken-tls.  If it is set,
4557         sieve-manage will never use STARTTLS even if the server says
4558         it is capable (but may be broken).
4560 2016-09-13  Paul Eggert  <eggert@cs.ucla.edu>
4562         Port to ISO/IEC TS 18661-1:2014
4564         * src/character.h (CHARACTER_WIDTH): Rename from CHAR_WIDTH.
4565         All uses changed.
4567 2016-09-13  Tino Calancha  <tino.calancha@gmail.com>
4569         dired-jump: Expand file-name before dired-goto-file call
4571         Command dired-goto-file requires its argument to be an absolute
4572         file name.  Interactively FILE-NAME is read with read-file-name,
4573         which could return an abbreviated file name (Bug#24409).
4574         * lisp/dired-x.el (dired-jump): Use expand-file-name on FILE-NAME.
4575         Clarify in doc string the meaning of arg FILE-NAME.
4577 2016-09-13  Tino Calancha  <tino.calancha@gmail.com>
4579         Add test for Bug#21454
4581         * test/lisp/legacy/files-tests.el (files-test-bug-21454): New test.
4583 2016-09-12  Katsumi Yamaoka  <yamaoka@jpl.org>
4585         * lisp/net/sieve-manage.el (sieve-manage-ignore-broken-tls): Add :version.
4587 2016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
4589         sieve.el: Make the buffer to edit unmodified initially (bug#24423)
4591         * lisp/net/sieve.el (sieve-edit-script):
4592         Make the buffer to edit be not modified-p initially (bug#24423).
4594 2016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
4596         sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)
4598         * lisp/net/sieve-manage.el
4599         (sieve-manage-ignore-broken-tls): New user option.
4600         (sieve-manage-open-server):
4601         Don't test STARTTLS capability if the option is set (bug#24422).
4603 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4605         Fix compiler thinking width and height may be unitialised in frame.c
4607         This fixes the following warning:
4609                 frame.c: In function ‘x_set_frame_parameters’:
4610                 frame.c:3329:25: error: ‘width’ may be used uninitialized in
4611                         this function [-Werror=maybe-uninitialized]
4612                        adjust_frame_size (f, width_change ? width : -1,
4613                                  ^
4615         * src/frame.c (x_set_frame_parameters): Drop width_changed and
4616         height_changed variables in favour of storing that information in
4617         width and height variables.
4619 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4621         Fix compiler thinking tmpdir may be unitialised in emacsclient
4623         This fixes the following warning:
4625                 emacsclient.c: In function ‘set_local_socket’:
4626                 /usr/include/x86_64-linux-gnu/bits/string3.h:111:3: error:
4627                         ‘tmpdir’ may be used uninitialized in this function
4628                         [-Werror=maybe-uninitialized]
4629                    return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
4630                    ^
4631                 emacsclient.c:1197:17: note: ‘tmpdir’ was declared here
4632                      const char *tmpdir;
4634         * lib-src/emacsclient.c (set_local_socket): Get rid of use_tmpdir
4635         variable and instead use tmpdir being non-NULL as sign that it should
4636         be used.
4638 2016-09-12  Tino Calancha  <tino.calancha@gmail.com>
4640         image-dired: Signal an error before calling a missing executable
4642         Reverts commit ca473907
4643         Add a defun to check if an executable exists, and call it
4644         on each function using an external program: when the executable
4645         is not available signal an error.
4646         See discussion on:
4647         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00135.html
4648         * lisp/image-dired.el (image-dired--check-executable-exists): New defun.
4649         Throw and error when the executable arg is missing.
4650         (image-dired-display-image, image-dired-rotate-thumbnail)
4651         (image-dired-rotate-original, image-dired-set-exif-data)
4652         (image-dired-get-exif-data):
4653         Use it.
4655 2016-09-12  Eli Zaretskii  <eliz@gnu.org>
4657         Fix daemon shutdown when emacs-kill-hooks ask questions
4659         * lisp/server.el (server-start): Put the server's kill-emacs-hook
4660         last, to allow other hooks to have a frame to interact with the
4661         user.  (Bug#24326)
4663 2016-09-12  Paul Eggert  <eggert@cs.ucla.edu>
4665         * src/casefiddle.c (casify_word): Simplify.
4667         * src/casefiddle.c (casify_word): Return Qnil.
4669 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4671         Refactor common code in {upcase,downcase,capitalize}-word functions
4673         * src/casefiddle.c (operate_on_word): Removed in favour of…
4674         (casify_word) …new function which does what operate_on_word did plus
4675         what all of the common code from *-word functions.
4676         (upcase-word, downcase-word, capitalize-word): Move code common between
4677         those functions (pretty much the whole body of those functions) into
4678         casify_word and use that instead of now deleted operate_on_word.
4680 2016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
4682         * doc/lispref/files.texi: Remove @vindex.
4684 2016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
4686         Remove unnecessary ref to coreutils manual
4688         * doc/lispref/files.texi: Document write-region-inhibit-fsync.
4690 2016-09-11  Alan Mackenzie  <acm@muc.de>
4692         Correctly fontify C++ direct initializations with parens inside functions
4694         Or, more clearly, when something looks like a function declaration and it's
4695         inside a function, fontify it as a direct initialization.
4697         For this purpose, introduce a "brace stack" for each buffer, where an entry on
4698         the brace stack states how deeply nested a particular position is inside
4699         braces inside a "top level", which includes classes and namespaces.
4701         Also introduce a new "context", "top", with which c-font-lock-declarations
4702         signals to c-forward-decl-or-cast-1 that point is at the top level.
4704         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): add
4705         c-truncate-bs-cache.
4706         (c-flat-decl-block-kwds, c-brace-stack-thing-key, c-brace-stack-no-semi-key)
4707         (c-type-decl-operator-prefix-key): new language constants/variables.
4709         * lisp/progmodes/cc-engine.el (c-bs-interval, c-bs-cache, c-bs-cache-limit)
4710         (c-bs-prev-pos, c-bs-prev-stack): New mostly local variables for the brace
4711         stack cache.
4712         (c-init-bs-cache, c-truncate-bs-cache, c-truncate-bs-cache, c-brace-stack-at)
4713         (c-bs-at-toplevel-p): New functions which manipulate the brace stack (cache).
4714         (c-find-decl-prefix-search): Keep track of whether we're at top level.
4715         (c-find-decl-spots): New local variable cfd-top-level which records what it
4716         says.  On calling cfd-fun, pass cfd-top-level as an additional argument.
4717         (c-forward-declarator): Add new element DECORATED to the result list.  Set it
4718         to non-nil when a match for c-type-decl-operator-prefix-key is found.
4719         (c-forward-decl-or-cast-1): Handle the newly introduced context "top".
4720         Introduce "CASE 9.5", which recognizes direct initializations.
4722         * lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
4723         (c-font-lock-enum-tail, c-font-lock-cut-off-declarators)
4724         (c-font-lock-enclosing-decls, c-simple-decl-matchers, c-basic-matchers-after):
4725         Add appropriate `not-top' argument to calls to c-font-lock-declarators.
4726         (c-font-lock-declarators): Additional parameter `not-top'.  Use not-top to
4727         participate in the decision whether to fontify an identifier as a function or
4728         a variable.
4729         (c-font-lock-declarations): The internal lambda function takes an additional
4730         argument `toplev' from c-find-decl-spots, which it uses in determining the
4731         "context" of a declaration.  Add appropriate `not-top' argument to calls to
4732         c-font-lock-declarators.
4733         (c-font-lock-objc-methods): Add extra parameter to internal lambda function,
4734         like for c-font-lock-declarators.
4736         * lisp/progmodes/cc-mode.el (c-basic-common-init): Initialize the brace stack
4737         cache.
4739 2016-09-11  Eli Zaretskii  <eliz@gnu.org>
4741         Avoid signaling errors when computing "Stop" in GDB menu
4743         * lisp/progmodes/gdb-mi.el (gdb-show-stop-p): Don't assume
4744         'gdb-running-threads-count' must have a numeric value.
4745         (Bug#24414)
4747 2016-09-11  Philipp Stephani  <phst@google.com>
4749         Stop calling ‘byte-compile-log-warning’
4751         For errors, use ‘byte-compile-report-error’ instead so that the error
4752         is registered and causes compilation to fail (Bug#24359).
4754         For warnings, use ‘byte-compile-warn’ instead so that
4755         ‘byte-compile-error-on-warn’ is honored (Bug#24360).
4757         * lisp/emacs-lisp/macroexp.el (macroexp--funcall-if-compiled)
4758         (macroexp--warn-and-return): Use ‘byte-compile-warn’ instead of
4759         ‘byte-compile-log-warning’.
4761         * lisp/emacs-lisp/bytecomp.el (byte-compile-form, byte-compile-unfold-bcf)
4762         (byte-compile-setq, byte-compile-funcall): Use
4763         ‘byte-compile-report-error’ instead of ‘byte-compile-log-warning’.
4764         (byte-compile-log-warning): Convert comment to documentation
4765         string.  Explain that the function shouldn’t be called directly.
4766         (byte-compile-report-error): Add optional FILL argument.
4768         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
4769         (cconv--analyze-function, cconv-analyze-form): Use
4770         ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
4772         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Use
4773         ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
4775         * lisp/subr.el (add-to-list): Use ‘byte-compile-report-error’ instead
4776         of ‘byte-compile-log-warning’.
4777         (do-after-load-evaluation): Use ‘byte-compile-warn’ instead of
4778         ‘byte-compile-log-warning’.
4780 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4782         * etc/NEWS: Remove comment lost in emacs-25 merge.
4784 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4786         Document file synchronization issues
4788         * doc/lispref/files.texi (Files and Storage): New section.
4790 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4792         copy-file now uses GNU/Linux file cloning
4794         From a suggestion by Kieran Colford (see Bug#23904).
4795         * configure.ac: Check for linux/fs.h.
4796         * src/fileio.c [HAVE_LINUX_FS_H]: Include sys/ioctl.h and linux/fs.h.
4797         (clone_file): New function.
4798         (Fcopy_file): Use it.
4800 2016-09-10  Alan Third  <alan@idiocy.org>
4802         Invert y coord of NS image files (bug#7847)
4804         * src/nsterm.m (ns_dumpglyphs_image): Invert y co-ordinate of the image
4805         when compositing.
4807 2016-09-10  Noam Postavsky  <npostavs@gmail.com>
4809         Don't require isearch-update before isearch-done
4811         It is useful to be able to call `isearch-done' unconditionally to
4812         ensure a non-isearching state.
4814         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
4815         is a live buffer before using it (Bug #21091).
4816         * test/lisp/isearch-tests.el (isearch--test-done): Test it.
4818 2016-09-09  Simen Heggestøyl  <simenheg@gmail.com>
4820         * lisp/emacs-lisp/ring.el: Use lexical-binding
4822         * lisp/emacs-lisp/ring.el (ring-elements): Don't use the RESULT
4823         argument of `dotimes' when the iteration variable isn't referred by
4824         it.
4825         (ring-member): Don't pass nil as the RESULT argument of `dotimes'
4826         since it's the default.
4828 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4830         Split regex character class test into smaller chunks
4832         Having one test for all character classes it is not always trivial to
4833         determine which class is failing.  This happens when failure is caused
4834         by ‘(should (equal (point) (point-max)))’ not being met.
4836         With per-character class tests, it is immidiatelly obvious which test
4837         causes issues plus tests for all classes are run even if some of them
4838         fail.
4840         * test/src/regex-tests.el (regex-character-classes): Delete and split
4841         into…
4842         (regex-tests-alnum-character-class, regex-tests-alpha-character-class,
4843         regex-tests-ascii-character-class, regex-tests-blank-character-class,
4844         regex-tests-cntrl-character-class, regex-tests-digit-character-class,
4845         regex-tests-graph-character-class, regex-tests-lower-character-class,
4846         regex-tests-multibyte-character-class,
4847         regex-tests-nonascii-character-class,
4848         regex-tests-print-character-class, regex-tests-punct-character-class,
4849         regex-tests-space-character-class,
4850         regex-tests-unibyte-character-class,
4851         regex-tests-upper-character-class, regex-tests-word-character-class,
4852         regex-tests-xdigit-character-class): …new tests.
4854 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4856         Don’t allocate char-table’s extra slots in regexp-out-charset
4858         * lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Do not use
4859         'case-table as charmap char-table’s property.  The function has nothing
4860         to do with casing and in addition using 'case-table causes unnecessary
4861         extra slots to be allocated which ‘regexp-opt-charset’ does not use.
4863 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4865         Remove dead loop iterations in regex.c
4867         RE_CHAR_TO_MULTIBYTE(c) yields c for ASCII characters and a byte8
4868         character for c ≥ 0x80.  Furthermore, CHAR_BYTE8_P(c) is true only
4869         for byte8 characters.  This means that
4871                 c = RE_CHAR_TO_MULTIBYTE (ch);
4872                 if (! CHAR_BYTE8_P (c) && re_iswctype (c, cc))
4874         is equivalent to:
4876                 c = c;
4877                 if (! false && re_iswctype (c, cc))
4879         for 0 ⪬ c < 0x80, and
4881                 c = BYTE8_TO_CHAR (c);
4882                 if (! true && re_iswctype (c, cc))
4884         for 0x80 ⪬ c < 0x100.  In other words, the loop never executes for
4885         c ≥ 0x80 and RE_CHAR_TO_MULTIBYTE call is unnecessary for c < 0x80.
4887         * src/regex.c (regex_compile): Simplyfy a for loop by eliminating
4888         dead iterations and unnecessary macro calls.
4890 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4892         Replace decimalnump with alphanumericp
4894         decimalnump was used in regex.c only in ISALNUM macro which ored it with
4895         alphabeticp.  Because both of those functions require Unicode general
4896         category lookup, this resulted in unnecessary lookups (if alphabeticp
4897         return false decimalp had to perform another lookup).  Drop decimalnump
4898         in favour of alphanumericp which combines decimelnump with alphabeticp.
4900         * src/character.c (decimalnump): Remove in favour of…
4901         (alphanumericp): …new function.
4903         * src/regex.c (ISALNUM): Use alphanumericp.
4905 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4907         Remove inaccurate comment in regex.c
4909         * src/regex.c (regex_compile): Remove comment indicating that wctype of
4910         some character classes may be negative.  All wctypes are in fact
4911         non-negative.
4913 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4915         STRING_CHAR does not unify characters; update documentation
4917         * src/character.h (STRING_CHAR): Update doc.
4918         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update doc.  While at it, change
4919         the function to use BYTE_POS_ADDR instead of open-coding it.
4921 2016-09-08  Simen Heggestøyl  <simenheg@gmail.com>
4923         Add tests for ring.el
4925         * test/lisp/emacs-lisp/ring-tests.el: New file with tests for ring.el.
4927 2016-09-07  Martin Rudalics  <rudalics@gmx.at>
4929         New file test/src/marker-tests.el
4931 2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4933         Port flexible array members to GCC + valgrind
4935         These changes are needed to conform to the C standard's rule for
4936         allocating structs containing flexible array members.  C11 says
4937         that malloc (offsetof (struct s, m) + n) does not suffice to
4938         allocate a struct with an n-byte tail; instead, malloc’s arg
4939         should be rounded up to the nearest multiple of alignof (struct s).
4940         Although this is arguably a defect in C11, gcc -O2 + valgrind
4941         sometimes complains when this rule is violated, and when debugging
4942         it’s better to keep valgrind happy.
4943         For details please see the thread containing the message at:
4944         https://gcc.gnu.org/ml/gcc-patches/2016-09/msg00416.html
4945         * lib-src/ebrowse.c, src/alloc.c, src/image.c, src/process.c:
4946         Include flexmember.h.
4947         * lib-src/ebrowse.c (add_sym, add_member, make_namespace)
4948         (register_namespace_alias):
4949         * src/alloc.c (SDATA_SIZE, allocate_string_data):
4950         * src/image.c (xpm_cache_color, imagemagick_create_cache):
4951         * src/process.c (Fmake_network_process):
4952         Use FLEXSIZEOF instead of offsetof and addition.
4953         * src/alloc.c (SDATA_SIZE, vector_alignment):
4954         Use FLEXALIGNOF instead of sizeof (ptrdiff_t).
4955         * src/lisp.h (ALIGNOF_STRUCT_LISP_VECTOR):
4956         Remove, as alloc.c can now calculate this on its own.
4958 2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4960         Update from gnulib
4962         This incorporates:
4963         2016-09-07 flexmember: new macro FLEXALIGNOF
4964         2016-09-07 flexmember: port better to GCC + valgrind
4965         2016-08-18 Port modules to use getprogname explicitly
4966         2016-09-02 manywarnings: add -fno-common
4967         * admin/merge-gnulib (GNULIB_TOOL_FLAGS): Don’t avoid flexmember,
4968         since time_rz now uses part of it.  Instead, remove m4/flexmember.m4.
4969         * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Define away,
4970         since Emacs assumes C99 and therefore removes m4/flexmember.m4.
4971         * lib/euidaccess.c, lib/group-member.c, lib/time_rz.c:
4972         * m4/manywarnings.m4: Copy from gnulib.
4973         * lib/flexmember.h: New file, from gnulib.
4974         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4976 2016-09-07  Noam Postavsky  <npostavs@gmail.com>
4978         Don't --load directories
4980         * lisp/startup.el (command-line-1): Only pass expanded FILENAME argument
4981         of --load when it refers to a normal file, since `load' doesn't handle
4982         directories (Bug #16406).
4984 2016-09-07  Peder O. Klingenberg  <peder@klingenberg.no>
4986         Avoid error in icalendar--read-element
4988         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
4989         stack overflow by not using regex to extract values from calendar
4990         events. (Bug#24315)
4992 2016-09-07  Kaushal Modi  <kaushal.modi@gmail.com>
4994         Fix back-white <-> black-white typo
4996         * lisp/ps-print.el (ps-begin-job): back-white -> black-white (Bug#24308)
4998 2016-09-07  Alan Third  <alan@idiocy.org>
5000         Fix cursor at bottom left of rectangle (bug#24364)
5002         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
5003         require rectangle--point-crutches to be set.
5005 2016-09-07  Eli Zaretskii  <eliz@gnu.org>
5007         Fix documentation of convert-standard-filename on MS-Windows
5009         * lisp/files.el (convert-standard-filename): Doc fix.  (Bug#24387)
5011         * etc/NEWS: Suggest a way for mirroring slashes where previously
5012         'convert-standard-filename' was used.
5014 2016-09-06  Paul Eggert  <eggert@cs.ucla.edu>
5016         Use DEV_TTY more consistently
5018         * src/conf_post.h (DEV_TTY): Move from here ...
5019         * src/keyboard.c, src/keyboard.h: ... to here, as it doesn’t need
5020         to be visible everywhere.  Make it a constant.
5021         * src/keyboard.c (handle_interrupt, Fset_quit_char):
5022         * src/process.c (create_process): Prefer DEV_TTY to "/dev/tty".
5024 2016-09-06  Eli Zaretskii  <eliz@gnu.org>
5026         Avoid assertion violations when using marker positions
5028         * src/intervals.c (set_point_from_marker): If MARKER comes from
5029         another buffer, recalculate its byte position before using it to
5030         set point.
5031         * src/marker.c (set_marker_internal): If POSITION is a marker from
5032         another buffer, recalculate its byte position before using it.
5033         (Bug#24368)
5035 2016-09-06  Alan Mackenzie  <acm@muc.de>
5037         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Fix coding bug
5039 2016-09-06  Alan Mackenzie  <acm@muc.de>
5041         New options for handling of literals in c-syntactic-re-search-forward
5043         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): `noerror' can
5044         be given the values `before-literal' and `after-literal', so that when a
5045         search fails, and the `bound' is inside a literal, point is left respectively
5046         before or after that literal.
5048 2016-09-05  Eli Zaretskii  <eliz@gnu.org>
5050         Avoid assertion violations when scrolling narrowed buffer
5052         * src/window.c (window_scroll_pixel_based):
5053         * src/xdisp.c (pos_visible_p): Don't allow simulated redisplay to
5054         start outside the accessible portion of the buffer.  This avoids
5055         assertion violations when some Lisp narrows the buffer to less
5056         than the current window, and then attempts to scroll the buffer.
5058 2016-09-05  Eli Zaretskii  <eliz@gnu.org>
5060         Treat SIGINT correctly in GUI sessions on MS-Windows
5062         * src/w32proc.c (sys_signal): Don't reject SIGINT, as it is
5063         supported by MS runtime.
5064         * src/term.c (DEV_TTY): Move from here ...
5065         * src/conf_post.h (DEV_TTY): ... to here.  Separate definitions
5066         for WINDOWSNT and for the rest.
5067         * src/keyboard.c (handle_interrupt_signal): Use DEV_TTY instead of
5068         a literal "/dev/tty".
5070         * etc/NEWS: Mention the behavior change.
5072 2016-09-04  Alan Third  <alan@idiocy.org>
5074         Fix synthetic bold on macOS retina displays
5076         * src/macfont.m (macfont_draw): Multiply the synthetic bold scaling
5077         factor by the OS window backing scale factor.
5079 2016-09-04  Tino Calancha  <tino.calancha@gmail.com>
5081         image-dired: Report when a necessary executable is not found
5083         See discussion on:
5084         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00552.html
5085         * lisp/image-dired.el (image-dired-cmd-rotate-original-program)
5086         (image-dired-cmd-create-thumbnail-program)
5087         (image-dired-cmd-create-temp-image-program)
5088         (image-dired-cmd-rotate-thumbnail-program)
5089         (image-dired-cmd-write-exif-data-program)
5090         (image-dired-cmd-read-exif-data-program):
5091         Use executable-find to set the default value of this option.
5092         (image-dired-cmd-rotate-original-program): Idem.
5093         Search for program 'convert' if 'jpegtran' is not available.
5094         (image-dired-cmd-rotate-original-options):
5095         Set the default value consistent with the executable in
5096         image-dired-cmd-rotate-original-program.
5097         (image-dired-create-thumb, image-dired-display-image)
5098         (image-dired-rotate-thumbnail, image-dired-rotate-original)
5099         (image-dired-set-exif-data, image-dired-get-exif-data):
5100         Throw and error when the executable used in the function is missing.
5101         (image-dired-next-line, image-dired-previous-line):
5102         Use 'forward-line'.
5104 2016-09-03  Tino Calancha  <tino.calancha@gmail.com>
5106         image-type-from-file-name: Perform a case insensitive match
5108         Fix Bug#24317
5109         * lisp/image.el (image-type-from-file-name): Bind case-fold-search
5110         to a non-nil value to force a case insensitive match.
5111         * lisp/image-dired.el (image-dired-rotate-original):
5112         Use image-type (Bug#24317).
5113         (image-dired-get-exif-file-name): Idem.
5114         Set 'no-exif-data-found' and 'data' in same setq call.
5115         Use file-attribute-modification-time.
5117 2016-09-03  Tino Calancha  <tino.calancha@gmail.com>
5119         image-increase-size: Fix non-interactive calls
5121         * lisp/image.el (image-increase-size, image-decrease-size):
5122         Compute a floating point division.
5123         Problem reported in:
5124         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00067.html
5126 2016-09-03  Robert Cochran  <robert-git@cochranmail.com>
5128         Fix uses of (call-interactively) in lisp/emacs-lisp/checkdoc.el
5130         Passing the prefix argument as the 3rd argument to 'call-interactively'
5131         causes the prefix argument to be interpreted as events, which is not
5132         only wrong, but also causes a type error, as 'current-prefix-arg' can
5133         never be a vector as 'call-interactively' expects.  'call-interactively'
5134         automatically passes its prefix argument to the called function, so just
5135         do that, eliminating faulty behavior.
5137         * lisp/emacs-lisp/checkdoc.el (checkdoc-ispell):
5138         (checkdoc-ispell-current-buffer):
5139         (checkdoc-ispell-interactive):
5140         (checkdoc-ispell-message-text):
5141         (checkdoc-ispell-start):
5142         (checkdoc-ispell-continue):
5143         (checkdoc-ispell-comments):
5144         (checkdoc-ispell-defun):
5145         Do not pass 'current-prefix-arg' to 'call-interactively' as an event
5146         vector; merely allow it to propagate forward to the interactive call.
5148 2016-09-03  Richard Stallman  <rms@gnu.org>
5150         Fix mail-combine-fields
5152         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
5153         avoid losing our place in the search loop.
5155 2016-09-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5157         Check actual contents before promting about changed file
5159         * lisp/userlock.el (userlock--check-content-unchanged)
5160         (userlock--ask-user-about-supersession-threat): New functions.
5161         * src/filelock.c (lock_file): Use them to avoid spurious prompting.
5162         * doc/lispref/buffers.texi (Modification Time): Update doc of
5163         ask-user-about-supersession-threat.
5165 2016-09-02  Michael Albinus  <michael.albinus@gmx.de>
5167         Make a reference to fakecygpty in the Tramp manual
5169         * doc/misc/tramp.texi (Windows setup hints): Make a reference to
5170         fakecygpty on the Emacs Wiki.
5171         (Frequently Asked Questions): Fix url.
5173 2016-09-01  Paul Eggert  <eggert@cs.ucla.edu>
5175         Don’t create fd >= FD_SETSIZE
5177         This avoids a potential crash if too many subprocesses (Bug#24325).
5178         * src/process.c [HAVE_SETRLIMIT]: Include <sys/resource.h>.
5179         (init_process_emacs): If ulimit -n is greater than FD_SETSIZE,
5180         set it to FD_SETSIZE.
5182 2016-09-01  Alan Mackenzie  <acm@muc.de>
5184         Fix c-declaration-limits to return correct limits in all cases.
5186         This function is the guts of c-indent-defun and c-mark-function.
5188         In particular, when c-defun-tactic is nil, return a correct value rather than
5189         always nil, and when it's 'go-outward, go through an intricate algorithm to
5190         determine the requisite narrowing before the "top-level" defuns go to work.
5192         * lisp/progmodes/cc-cmds.el (c-narrow-to-most-enclosing-decl-block): Enhance
5193         to take additional optional parameter LEVEL, saying how many enclosing levels
5194         of decl-block to narrow to.
5195         (c-declaration-limits): Introduce algorithm to determine narrowing.  Use
5196         c-where-wrt-to-brace-block to determine whether to go back to BOD to determine
5197         lower bound.
5199 2016-09-01  Eli Zaretskii  <eliz@gnu.org>
5201         * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make commentary more accurate.
5203 2016-09-01  Eli Zaretskii  <eliz@gnu.org>
5205         Avoid compiler warnings with MinGW64 GCC 6
5207         * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make the prototype match
5208         the GCC 6 builtin, to avoid warnings.  For more details, see
5209         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00721.html.
5211 2016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5213         Fix over-substitution of quotes on error
5215         Problem reported by Tino Calancha in:
5216         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00000.html
5217         * src/print.c (print_error_message):
5218         Substitute quotes in errmsg only when gotten from a property.
5220 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5222         Improve testing of etags
5224         * test/manual/etags/y-src/cccp.c:
5225         * test/manual/etags/y-src/parse.c: Correct #line directives to
5226         allow testing invalidate_nodes in etags.c.
5227         * test/manual/etags/ETAGS.good_1:
5228         * test/manual/etags/ETAGS.good_2:
5229         * test/manual/etags/ETAGS.good_3:
5230         * test/manual/etags/ETAGS.good_4:
5231         * test/manual/etags/ETAGS.good_5:
5232         * test/manual/etags/ETAGS.good_6:
5233         * test/manual/etags/CTAGS.good: Adapt to changes in test files.
5235 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5237         * lib-src/etags.c (invalidate_nodes): Fix another thinko.
5239 2016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5241         Fix etags problems found by static checking
5243         * lib-src/etags.c (invalidate_nodes, put_entry):
5244         Remove now-unnecessary tests for null pointers.  Simplify.
5245         (put_entries): Rewrite to avoid GCC 6.2 warning about
5246         dereferencing null pointer.
5248 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5250         Fix a thinko in etags.c
5252         * lib-src/etags.c (invalidate_nodes): Don't try to dereference
5253         a null pointer.
5255 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5257         Avoid recursive calls in etags
5259         * lib-src/etags.c (stack_entry): New struct.
5260         (push_node, pop_node, put_entry): New functions.
5261         (free_tree, add_node, invalidate_nodes, put_entries): Re-implement
5262         in a non-recursive way, to avoid stack overflow.  (Bug#5847)
5264 2016-08-31  Leo Liu  <sdl.web@gmail.com>
5266         Add 451 to url-http-codes
5268         * lisp/url/url-http.el (url-http-codes): Add 451.
5270 2016-08-30  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
5272         * src/editfns.c (Fformat_message): Fix doc to match current behavior.
5274 2016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5276         Minor doc quoting fixes
5278         * doc/misc/htmlfontify.texi (Interactive):
5279         * lisp/htmlfontify.el (htmlfontify-buffer):
5280         Spell out character names, for clarity.  The old doc string
5281         generated the *Help* text ‘^L ([FF]) or ¤ (244)’, where ‘[FF]’
5282         stands for a form feed character; this was confusing.
5283         * lisp/electric.el (electric-quote-mode):
5284         * src/doc.c (syms_of_doc):
5285         * src/editfns.c (Fformat_message):
5286         Remove no-longer-necessary ‘\=’s in doc strings.
5288 2016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5290         Update from gnulib
5292         This incorporates:
5293         2016-08-30 intprops: tune INT_NEGATE_OVERFLOW for GCC 5 and 6
5294         2016-08-29 xalloc-oversized.h: port change to GCC 6.2.0
5295         2016-08-29 intprops.h: port recent changes to GCC 6.2.0
5296         2016-08-29 intprops.h: use __typeof__ with GCC 7
5297         2016-08-29 intprops.h, xalloc-oversized.h: work with gcc 7
5298         2016-08-24 intprops: fix paren typo on old platforms
5299         2016-08-24 intprops: port to OpenVMS
5300         * lib/intprops.h, lib/xalloc-oversized.h: Copy from gnulib.
5302 2016-08-30  Tassilo Horn  <tsdh@gnu.org>
5304         Fix rules for \phi and \varphi which were reversed
5306         * lisp/leim/quail/latin-ltx.el: Special-case phi/varphi because those
5307           are reversed in ucs-names.  Also remove FIXME stating sigma/varsigma
5308           were reversed which is not true (anymore?).
5310 2016-08-30  Tassilo Horn  <tsdh@gnu.org>
5312         Fix prettification of \phi, \varphi, and \varsigma
5314         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Fix
5315           prettification of \phi, \varphi, and \varsigma.
5317         Concretely, \phi's symbol was actually varphi, \varphi was missing, and
5318         \varsigma was commented out with a FIXME that it was reversed with
5319         \sigma which it was not.
5321 2016-08-30  Karl Fogel  <kfogel@red-bean.com>
5323         Use normal double quotes in TeX / LaTeX comments
5325         * lisp/textmodes/tex-mode.el (tex-insert-quote): When in a comment,
5326           default to inserting a normal double quote (") instead of TeX-style
5327           open (``) or close ('') quote marks.
5329         * etc/NEWS (TeX mode): Note the change.
5331         * test/lisp/electric-tests.el (autowrapping-7): Adjust accordingly.
5333         See this thread for discussion:
5335           https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00611.html
5336           From: Karl Fogel <kfogel {_AT_} red-bean.com>
5337           To: Emacs Development <emacs-devel {_AT_} gnu.org>
5338           Subject: [PATCH] Have LaTeX mode use normal double quotes in comments.
5339           Date: Mon, 29 Aug 2016 14:44:12 -0500
5340           Message-ID: <87twe3icmr.fsf@red-bean.com>
5342 2016-08-30  Alan Mackenzie  <acm@muc.de>
5344         Correctly analyze C++ list initialization in member init areas.
5346         * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Remove a
5347         superfluous call to c-backward-syntactic-ws.
5348         (c-looking-at-or-maybe-in-bracelist): Change calling convention, so that it
5349         reports encountering the Java "new" keyword.  Add, as an alternative, a check
5350         that we can move back over member initializations, and handle this as finding
5351         a brace block.
5352         (c-looking-at-special-brace-list, c-guess-continued-construct): Adapt to the
5353         new calling convention of c-looking-at-or-maybe-in-bracelist.
5354         (c-guess-basic-syntax, CASE 5A.3): Replace lots of inline ad-hoc code with
5355         calls to c-backward-over-enum-header and c-looking-at-or-maybe-in-bracelist,
5356         using the extra info from the value of that function to generate a
5357         topmost-into-cont element where needed (in Java).
5359         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Adapt to the new
5360         calling convention of c-looking-at-or-maybe-in-bracelist.
5362         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Adapt to the new calling
5363         convention of c-looking-at-or-maybe-in-bracelist.
5365 2016-08-30  Michael Albinus  <michael.albinus@gmx.de>
5367         Use `file-attribute-*' in Tramp
5369         * lisp/net/tramp-compat.el (tramp-compat-file-attribute-type)
5370         (tramp-compat-file-attribute-link-number)
5371         (tramp-compat-file-attribute-user-id)
5372         (tramp-compat-file-attribute-group-id)
5373         (tramp-compat-file-attribute-modification-time)
5374         (tramp-compat-file-attribute-size)
5375         (tramp-compat-file-attribute-modes): New defaliases.
5377         * lisp/net/tramp.el (tramp-handle-file-modes)
5378         (tramp-handle-file-newer-than-file-p)
5379         (tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
5380         (tramp-handle-set-visited-file-modtime)
5381         (tramp-handle-verify-visited-file-modtime)
5382         (tramp-get-local-gid, tramp-check-cached-permissions):
5383         * lisp/net/tramp-adb.el (tramp-adb-handle-file-directory-p)
5384         (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file):
5385         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
5386         (tramp-gvfs-handle-file-directory-p)
5387         (tramp-gvfs-handle-write-region, tramp-gvfs-get-remote-uid)
5388         (tramp-gvfs-get-remote-gid):
5389         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
5390         (tramp-sh-handle-set-visited-file-modtime)
5391         (tramp-sh-handle-verify-visited-file-modtime)
5392         (tramp-sh-handle-file-newer-than-file-p)
5393         (tramp-sh-handle-file-ownership-preserved-p)
5394         (tramp-do-copy-or-rename-file)
5395         (tramp-do-copy-or-rename-file-via-buffer)
5396         (tramp-do-copy-or-rename-file-directly)
5397         (tramp-do-copy-or-rename-file-out-of-band)
5398         (tramp-sh-handle-file-local-copy)
5399         (tramp-sh-handle-write-region):
5400         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
5401         (tramp-smb-handle-copy-file)
5402         (tramp-smb-handle-file-directory-p)
5403         (tramp-smb-handle-file-writable-p)
5404         (tramp-smb-handle-insert-directory): Use them.
5406 2016-08-30  Martin Rudalics  <rudalics@gmx.at>
5408         In `pop-to-buffer' handle case where `display-buffer' fails (Bug#24332)
5410         * lisp/window.el (pop-to-buffer): Don't assume that
5411         `display-buffer' has supplied a window (Bug#24332).
5412         Rename BUFFER argument to BUFFER-OR-NAME.
5413         * doc/lispref/windows.texi (Switching Buffers): Fix
5414         `pop-to-buffer' documentation.
5416 2016-08-29  Alan Third  <alan@idiocy.org>
5418         Clarify docstrings
5420         * src/nsterm.m: Clarified that ns-x-modifier variables require a symbol.
5422 2016-08-29  Michael Albinus  <michael.albinus@gmx.de>
5424         Use `process-live-p' in Tramp
5426         * lisp/net/tramp-compat.el (tramp-compat-process-live-p): New defun.
5428         * lisp/net/tramp.el (tramp-connectable-p, tramp-handle-file-remote-p)
5429         (tramp-handle-file-notify-valid-p)
5430         (tramp-action-process-alive, tramp-action-out-of-band)
5431         (tramp-wait-for-regexp):
5432         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
5433         (tramp-adb-maybe-open-connection):
5434         * lisp/net/tramp-cache.el (tramp-get-connection-property):
5435         * tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
5436         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
5437         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
5438         * tramp-sh.el (tramp-process-sentinel)
5439         (tramp-sh-handle-file-notify-add-watch)
5440         (tramp-maybe-open-connection):
5441         * lisp/net/lisp/net/lisp/net/tramp-smb.el (tramp-smb-action-with-tar)
5442         (tramp-smb-handle-copy-directory, tramp-smb-action-get-acl)
5443         (tramp-smb-handle-process-file, tramp-smb-action-set-acl)
5444         (tramp-smb-get-cifs-capabilities)
5445         (tramp-smb-get-stat-capability)
5446         (tramp-smb-maybe-open-connection, tramp-smb-wait-for-output)
5447         (tramp-smb-kill-winexe-function): Use it.
5449 2016-08-29  Eli Zaretskii  <eliz@gnu.org>
5451         Avoid crashes for invalid value of key modifiers
5453         * src/keyboard.c (parse_solitary_modifier): If the argument SYMBOL
5454         is not a symbol, don't try to recognize it.  See
5455         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00502.html
5456         for the details.
5458         * test/src/keymap-tests.el (keymap-where-is-internal-test): New
5459         test, for testing the above fix.
5461 2016-08-29  Oleh Krehel  <ohwoeowho@gmail.com>
5463         Make dired-do-compress understand files with spaces in them
5465         * lisp/dired-aux.el (dired-compress-file): Add `shell-quote-argument'
5466           and `literal' flag to `replace-regexp-in-string'.
5468 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5470         * INSTALL.REPO: Suggest Texinfo 4.13 or later.
5472 2016-08-28  Simen Heggestøyl  <simenheg@gmail.com>
5474         Add tests for dom.el
5476         * test/lisp/dom-tests.el: New file with tests for dom.el.
5478 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5480         Memory allocator alignment fixes
5482         These changes remove some assumptions about heap allocator
5483         alignment that may not be true on unusual platforms.
5484         * src/alloc.c (POWER_OF_2): New macro.
5485         (ROUNDUP): Use it.
5486         (BLOCK_ALIGN): Verify that it is a power of 2.
5487         (aligned_alloc): Check that alignment passed to posix_memalign
5488         satisfies POSIX restrictions.
5489         (lisp_align_malloc): Check that size passed to aligned_alloc
5490         satisfies C11 restrictions.
5491         (MALLOC_IS_GC_ALIGNED): Check that GCALIGNMENT is 8, since the
5492         code has not been verified to work with other GCALIGNMENT values
5493         and the ice is thin here.  On GNU/Linux, malloc can return a value
5494         that is a multiple of 8 but not 16, even though __alignof__
5495         (max_align_t) is 16.  See:
5496         https://gcc.gnu.org/ml/gcc-patches/2016-08/msg01902.html
5497         (lmalloc) [USE_ALIGNED_ALLOC]: Use aligned_alloc only if size
5498         is a multiple of alignment, since C11 says the behavior is
5499         undefined otherwise.
5500         (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on size_t, as in
5501         general this macro is restricted to signed types.  Remove
5502         assertion that the result is a multiple of GCALIGNMENT, as that
5503         need not be true.
5505 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5507         Pacify --enable-gcc-warnings for lib-src/pop.c
5509         * lib-src/pop.c: Include c-ctype.h.
5510         (socket_connection): Pacify --enable-gcc-warnings by rewriting to
5511         avoid 'if (v = E) ...'.  Use c_tolower, instead of a combination
5512         of the (undeclared) isupper and tolower.  Fix pointer constness
5513         problem.
5515 2016-08-27  Alan Mackenzie  <acm@muc.de>
5517         Handle the C++ "identifiers" "final" and "override" correctly.
5519         This fixes bug #24319, allowing destructors affixed with these identifiers to
5520         be correctly fontified.
5522         * lisp/progmodes/cc-engine.el (c-forward-type, c-forward-decl-or-cast-1):
5523         After reaching the "end" of a type expression, skip over any occurrences of
5524         c-type-decl-suffix-ws-ids-key.
5526         * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "override" and
5527         "final" from the C++ value.
5528         (c-type-decl-suffix-ws-ids-kwds, c-type-decl-suffix-ws-ids-key): New lang
5529         constants/variables for "final" and "override".
5531 2016-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
5533         * lisp/textmodes/page-ext.el (pages-directory-mode): Use special-mode.
5535 2016-08-27  Alan Mackenzie  <acm@muc.de>
5537         Handle template delimiters in C++ member init constructs.
5539         * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Add
5540         handling for "<....>"s.
5542 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
5544         Fix etags test suite messed up by merges from emacs-25
5546         * test/manual/etags/go-src/test.go:
5547         * test/manual/etags/go-src/test1.go: Move from test/etags/.
5548         * test/manual/etags/ruby-src/test1.ru: Replace test1.ruby.
5549         * test/etags/: Directory deleted.
5551 2016-08-26  Simen Heggestøyl  <simenheg@gmail.com>
5553         Add "supports" to list of CSS at-rules
5555         * lisp/textmodes/css-mode.el (css-at-ids): Add "supports" at-rule.
5557 2016-08-26  Michael Albinus  <michael.albinus@gmx.de>
5559         * lisp/net/tramp-sh.el (tramp-get-remote-perl): Perform a basic check.
5561         (Bug#22478)
5563 2016-08-25  Tino Calancha  <tino.calancha@gmail.com>
5565         Rename option to shell-command-dont-erase-buffer
5567         Suggested by Clément Pit--Claudel in:
5568         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00487.html
5569         * lisp/simple.el (shell-command-dont-erase-buffer):
5570         (shell-command--save-pos-or-erase):
5571         (shell-command--set-point-after-cmd):
5572         (shell-command-on-region):
5573         * doc/emacs/misc.texi (shell-command-dont-erase-buffer):
5574         * etc/NEWS (Changes in Emacs 25.2):
5575         Rename from shell-command-not-erase-buffer.
5577 2016-08-25  Alan Mackenzie  <acm@muc.de>
5579         Fix an infinite loop in C++ Mode when we have "{ .... [ .... }"
5581         * lisp/progmodes/cc-fonts.el (c-font-lock-c++-lambda-captures): In the inner
5582         `while' form's condition, check for "\\s)" rather than merely "\\]", so that
5583         the loop won't hang at a "terminating" paren of a different type (due to the
5584         c-syntactic-re-search-forward at the end of the loop stopping at such
5585         characters).
5587 2016-08-25  Tino Calancha  <tino.calancha@gmail.com>
5589         call-shell-region: New defun
5591         Suggested by Stefan Monnier in Bug#22679.
5592         * lisp/subr.el (call-shell-region): New defun; execute a command
5593         in an inferior shell with the buffer region as input.
5594         * lisp/simple.el (shell-command-on-region): Use it.
5595         * lisp/gnus/message.el (message-do-fcc): Idem.
5596         * doc/lispref/processes.texi: Document call-shell-region in the manual.
5597         ;* etc/NEWS: Add entry for this new function.
5599 2016-08-25  Martin Rudalics  <rudalics@gmx.at>
5601         In ‘clone-indirect-buffer’ fix argument mixup (Bug#24306)
5603         * lisp/simple.el (clone-indirect-buffer): Add value for ACTION
5604         argument in `pop-to-buffer' call (Bug#24306).
5606 2016-08-25  Martin Rudalics  <rudalics@gmx.at>
5608         Some fixes around `delete-other-frames' and `next-frame'
5610         * src/frame.c (Fdelete_frame): Clarify doc-string.
5611         * lisp/frame.el (delete-other-frames): Delete other frames on
5612         FRAME's terminal instead of the current terminal.  Delete
5613         non-minibuffer-only surrogate frames too.  See
5614         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00467.html
5615         * doc/lispref/frames.texi (Deleting Frames): Minor fixes for
5616         docs of `delete-frame' and `frame-live-p'.  Add entry for
5617         `delete-other-frames'.
5618         (Finding All Frames): Fix doc of `next-frame'.
5620 2016-08-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5622         Find message.el thumbnail toggling
5624         * lisp/gnus/message.el (message-toggle-image-thumbnails):
5625         Don't infloop when toggling thumbnails.
5627 2016-08-24  Alan Third  <alan@idiocy.org>
5629         Fix macOS 12 deprecation notices
5631         * src/nsterm.h: Add #defines to allow older versions of macOS to use the
5632         new constant names.
5633         * src/nsmenu.m: Replace old constant names with
5634         new.
5635         (fillWithWidgetValue): Remove calls to deprecated
5636         setMenuChangedMessagesEnabled.
5637         * src/nsterm.m: Replace old constant names with new.
5638         * src/nsfns.m: Replace old constant names with new.
5640 2016-08-23  Alan Mackenzie  <acm@muc.de>
5642         Analyze and fontify correctly a C++ `enum' with colon, but lacking a tag.
5644         * lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for "enum"
5645         directly preceding the colon, and handle it.
5647 2016-08-23  Noah Friedman  <friedman@splode.com>
5649         * src/xfns.c (Fx_change_window_property): Modify previous change.
5650         Instead of forcing format to 8 for strings, check that the length of
5651         the string is appropriate for whatever format given.
5652         (Fx_window_property_attributes): If prop isn't found on frame's inner window,
5653         try its outer window.  This mimics the behavior of Fx_window_property.
5655 2016-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
5657         Fix invalid image rotations
5659         * lisp/image.el (image-rotate): Limit rotation to 360 degrees.
5661 2016-08-23  Tino Calancha  <tino.calancha@gmail.com>
5663         call-process instead of call-process-region with empty region
5665         * lisp/calc/calc-graph.el (calc-graph-show-tty):
5666         Use call-process and shell-command-switch.
5668 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5670         Merge from origin/emacs-25
5672         927afa1 ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 RC2
5673         6bf83b5 * etc/AUTHORS: Update the AUTHORS file
5674         73cbb81 ; ChangeLog spelling fixes
5675         9b99772 Some assorted documentation clarifications
5676         37d4723 Improve commentary in src/character.h
5677         5ccd593 ; Fix typo in /etc/NEWS
5678         96e3d16 * etc/NEWS: Mention the change in json-encode-string.
5679         2e524034 ; * etc/NEWS: Mention incompatible change in url-http-create...
5680         2e4e74e Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
5681         66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
5683         # Conflicts:
5684         #       ChangeLog.2
5685         #       lisp/ldefs-boot.el
5687 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5689         Merge from origin/emacs-25
5691         66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
5693 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5695         Merge from origin/emacs-25
5697         8c2946e In NEWS describe new handling of window margins (Bug#24193)
5698         0cee66c Facultatively ignore margins when splitting and resizing wind...
5699         8d68147 Document CATEGORY arg to modify-category-entry
5700         8342e74 Document char-script-table's effect on word motion
5701         e9ff485 Further fix for 'url-http-create-request' and multibyte strings
5702         0695235 Fix docstring of eval-expression
5703         98b01dd Clarify when 'cursor' property is in effect
5704         75f1882 Convert the remaining strings to unibyte before concatenating
5705         d2db5dd Fix bug with handling the bidi cache
5706         ccd0e92 * doc/lispref/text.texi (Change Hooks): Minor copyedits.
5707         f785ff4 Clarify documentation of before/after-change-functions
5708         3c9cb57 Document use of vectors in keymaps
5710         # Conflicts:
5711         #       src/xdisp.c
5713 2016-08-22  Michael Albinus  <michael.albinus@gmx.de>
5715         Handle remote file names in gdb-mi.el
5717         * lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
5718         If `default-directory' is remote, full file names are adapted
5719         accordingly.  (Bug#23608)
5721 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
5723         Display mini-window resized even when there are several frames
5725         * src/xdisp.c (x_consider_frame_title): Bind inhibit-redisplay to
5726         t to avoid resizing back the mini-window as result of considering
5727         the title of other frames.  (Bug#24285)
5728         (redisplay_window): No need to bind inhibit-redisplay here.
5730 2016-08-22  Michael Albinus  <michael.albinus@gmx.de>
5732         Explain gdb warning on remote hosts
5734         * doc/misc/tramp.texi (Remote processes): Explain gdb warning
5735         on remote hosts.  (Bug#4604, Bug#6360, Bug#622569)
5737 2016-08-21  Martin Rudalics  <rudalics@gmx.at>
5739         Fix (next-frame nil t) crash (Bug#24281)
5741         * src/frame.c (candidate_frame): Check minibuf argument before
5742         comparing it to zero (Bug#24281).
5744 2016-08-21  Noah Friedman  <friedman@splode.com>
5746         Fix interpretation of signed vs unsigned values when retrieving X
5747         Window properties, and make sure the full value is returned when not
5748         parsed.
5750         New subr to export type and format information about X Window
5751         properties to lisp.
5753         * src/xselect.c (selection_data_to_lisp_data): Treat any data as
5754         unsigned unless its actual type is INTEGER.
5755         CARDINALs, in particular, are unsigned.
5757         * src/xfns.c (Fx_change_window_property): If value is a string, ignore
5758         any provided format and force to 8.
5759         (x_window_property_intern): If returning value as a string, the length
5760         is actual_size times the actual format of each element, which is not
5761         necessarily bytes.
5762         (Fx_window_property_attributes): New subr.
5763         (syms_of_xfns): Declare it.
5765 2016-08-21  Noam Postavsky  <npostavs@gmail.com>
5767         Improve error when installing non-package dirs
5769         * lisp/emacs-lisp/package.el (package-dir-info): Throw meaningful error
5770         when no file with package info is found (Bug #19851).
5772 2016-08-21  Alan Mackenzie  <acm@muc.de>
5774         Adapt CC Mode for C++11 uniform initialization.
5776         For fontification, introduce a new "context", 'non-decl, to be used for
5777         brace
5778         lists; also a new value for the property 'c-type, called 'c-not-decl.
5780         * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): Check that
5781         an ostensible symbol we're going to move over isn't a keyword.
5782         (c-forward-decl-or-cast-1): CASE 1: Where we have two consecutive identifiers
5783         (hence a declaration), and an unmatched open paren, perform
5784         c-fdoc-shift-type-backwards to recognize the partial construct correctly.
5785         Whilst checking a type decl expression, check for and handle C++11's "copy
5786         initialization", where we have <type>(<constant>).  Recognize
5787         <id><id>(... (where the paren is unclosed) as a declaration.
5788         (c-looking-at-or-maybe-in-bracelist): New function, extracted from
5789         c-inside-bracelist-p.  Recognize as bracelists "{"s which are preceded by
5790         valid tokens other than "=".  Recognize a bracelist when preceded by a
5791         template declaration.
5792         (c-inside-bracelist-p): Call c-looking-at-or-maybe-in-bracelist in place of
5793         much inline code.
5794         (c-looking-at-inexpr-block): Amend so that it won't wrongly recognise an
5795         initialization starting "({" as an in-expression block, by checking for
5796         semicolons, as opposed to commas, separating elements inside it.
5797         (c-guess-continued-construct): (CASE B-2): Recognize a brace-list-open by
5798         calling c-looking-at-or-maybe-in-bracelist rather than checking for a
5799         preceding "=".  (CASE B-5): New code to recognize new construct "return {
5800         ...}".
5801         (c-guess-basic-syntax): (CASE 5A.3): Additionally recognize a "{" preceded by
5802         "return", or "{" preceded by <type><identifier> as a bracelist.
5804         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize brace
5805         lists, giving them `context' 'non-decl.  Pass over elements of one by regexp
5806         search for "," rather than calling c-forward-decl-or-cast-1.
5808         * lisp/progmodes/cc-langs.el (c-return-kwds, c-return-key): New lang
5809         constants/variables to recognize "return".
5810         (c-pre-id-bracelist-key): New lang constant/variable to recognize tokens
5811         which, when preceding an identifier followed by a brace, signify the brace as
5812         a bracelist.
5814         * lisp/progmodes/cc-mode.el (c-fl-decl-start): When searching outwards for
5815         the start of a "local" declaration, move out from an enclosing brace when
5816         that is the start of a brace list.
5818 2016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5820         Update from gnulib
5822         This incorporates:
5823         2016-08-17 maint: preprocessor changes to support z/OS
5824         2016-08-17 string: rename to avoid '__string'
5825         * doc/misc/texinfo.tex, lib/alloca.in.h, lib/string.in.h:
5826         Copy from gnulib.
5828 2016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5830         Minor text-quoting-style fixes
5832         * src/charset.c (check_iso_charset_parameter):
5833         * src/frame.c (store_frame_param):
5834         * src/xselect.c (x_fill_property_data):
5835         Use grave accent for left single quote in ‘error’ format strings.
5837 2016-08-21  Martin Rudalics  <rudalics@gmx.at>
5839         Fix semantics of 'minibuffer' frame parameter
5841         The 'minibuffer' frame parameter is now t for a normal frame
5842         (a frame with a root window plus a minibuffer window) and the
5843         frame's minibuffer window for a minibuffer-less frame (a frame
5844         whose minibuffer window is on another frame).  See also:
5845         https://lists.gnu.org/archive/html/emacs-devel/2016-07/msg01259.html
5847         * src/frame.c (make_frame, make_frame_without_minibuffer)
5848         (make_minibuffer_frame): When assigning the frame's minibuffer
5849         window also store corresponding 'minibuffer' frame parameter.
5850         (store_frame_param): Move the 'minibuffer' parameter checks to
5851         the beginning so we can silently override the value before it
5852         gets stored in the parameter alist.  Fix error handling.
5853         (Fframe_parameters): Return value of 'minibuffer' parameter
5854         unmodified.
5856         * lisp/frameset.el (frameset-filter-minibuffer): When the cdr of
5857         the parameter is a minibuffer window, save (minibuffer . nil)
5858         instead of (minibuffer . t).
5859         (frameset--reuse-frame): To find a non-minibuffer-only frame
5860         look out for a frame whose 'minibuffer' parameter is t instead
5861         of that frame's minibuffer window.
5862         (frameset-minibufferless-first-p): To find a minibuffer-less
5863         frame look out for a frame whose 'minibuffer' parameter is a
5864         window instead of nil.
5866 2016-08-20  Alan Mackenzie  <acm@muc.de>
5868         * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Resolve overelaborate "nil"
5870 2016-08-20  Alan Mackenzie  <acm@muc.de>
5872         In c-\(go-\)?-\(up-\|down-\)?list-\(forward\|backward\) check limit isn't nil
5874         Check the limit both at macro expansion time (for a hard coded nil) and at run
5875         time in the generated code.  Tidy up these macros generally.
5877         * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Check `limit' is present and
5878         not identically nil before generating a narrow-to-region call.  Generate code
5879         to check `limit' is not nil at run time.
5880         (c-go-list-forward, c-go-list-backward): Remove the generation of redundant
5881         narrow-to-region, instead calling c-safe-scan-lists directly.
5882         (c-go-up-list-forward, c-go-up-list-backward, c-go-down-list-forward)
5883         (c-go-down-list-backward): Invoke the corresponding macros without the "go-"
5884         to determine the destination position instead of generating a redundant
5885         narrow-to-region.
5887 2016-08-19  Robert Cochran  <robert-git@cochranmail.com>
5889         * lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
5891         The docstring referenced a non-existant parameter, as well as a
5892         parameter that has been renamed since the docstring was written. Fix
5893         both errors, fixing (Bug#24182).
5895 2016-08-19  Alan Mackenzie  <acm@muc.de>
5897         Amend hack-local-variables-prop-line not always to return any mode on line 1.
5899         This fixes bug #24266.
5901         * lisp/files.el (hack-local-variables-prop-line): Change the name of the
5902         parameter mode-only to handle-mode.  Change its meaning, such that it being
5903         set to a value non-nil and not t removes any mode parameter from the result
5904         list.  Leave its values nil and t with the same meanings they had.
5905         (hack-local-variables): Call hack-local-variables-prop-line appropriately.
5907 2016-08-19  Daiki Ueno  <ueno@gnu.org>
5909         Improve doc string of epg-*-program
5911         * lisp/epg-config.el (epg-gpg-program, epg-gpgsm-program):
5912         Suggest to use Customize when setting.  (Bug#24229)
5914 2016-08-19  Tino Calancha  <tino.calancha@gmail.com>
5916         Add tests for Bug#24264
5918         * test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-test-bug24264):
5919         Add test for Bug#24264.
5920         (cl-seq-fill-test, cl-seq-replace-test)
5921         (cl-seq-remove-test ,cl-seq-delete-test)
5922         (cl-seq-remove-duplicates-test, cl-seq-substitute-test)
5923         (cl-seq-nsubstitute-test, cl-seq-position-test)
5924         (cl-seq-count-test, cl-seq-mismatch-test)
5925         (cl-seq-search-test, cl-seq-test-bug24264):
5926         Add tests for all functions in the file; test all keywords.
5928 2016-08-18  Johan Bockgård  <bojohan@gnu.org>
5930         Fix bug in --eval reply message from server
5932         * lisp/server.el (server-reply-print): Fix check for truncated quote
5933         sequence at end of message. Problem reported in:
5934         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00101.html
5936 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
5938         Add tests for 'substitute-command-keys'
5940         * test/src/doc-tests.el (doc-test-substitute-command-keys): New
5941         tests.
5943 2016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
5945         lisp/textmodes/table.el (table-generate-source): Fix completing-read call
5947         Doesn't make sense to pass '(("html") ("latex") ("cals")) to
5948         `completing-read'.
5950 2016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
5952         lisp/dired-aux.el (dired-compress-file-suffixes): Add entry for tgz
5954         The previous behavior resulted in a "tgz" -> "tar" -> "tgz" loop,
5955         without any files being extracted.
5957 2016-08-18  Andreas Politz  <politza@hochschule-trier.de>
5959         Don't let window start override window point in `window-state-put' (Bug#24240)
5961         * lisp/window.el (window--state-put-2): Set 'noforce argument
5962         when restoring a window's start position.  This avoids that the
5963         effect of `set-window-point' gets overidden by that of
5964         `set-window-start' (Bug#24240).
5966 2016-08-17  Alan Mackenzie  <acm@muc.de>
5968         Fontify constructs following "::" in C++ argument lists correctly - part 2.
5970         This fixes bug #24246.
5972         * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Put a
5973         `save-match-data' around the new `looking-at' introduced by the previous CC
5974         Mode patch this evening.
5976 2016-08-17  Alan Mackenzie  <acm@muc.de>
5978         Fontify constructs following "::" in C++ argument lists correctly.
5980         This fixes bug #24246.
5982         * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): In the "pseudo
5983         match" loop, test a found string for a match with c-opt-identifier-concat-key
5984         (e.g. with "::").
5986 2016-08-17  Paul Eggert  <eggert@cs.ucla.edu>
5988         * src/doc.c (Fsubstitute_command_keys): Clarify GC comments.
5990 2016-08-17  K. Handa  <handa@gnu.org>
5992         Fix hz encoding and decoding (bug#23814)
5994         * lisp/language/china-util.el (decode-hz-region): Pay
5995         attention to "~~}" sequence at the end of Chinese character
5996         range.
5997         (hz-category-table): New variable.
5998         (encode-hz-region): Convert non-encodable characters to
5999         \u... and \U...  Preserve ESC on ecoding.  Put
6000         `chinese-gb2312' `charset' text property in advance to force
6001         iso-2022-encoding to select chinese-gb2312 designation.
6003 2016-08-17  Tino Calancha  <tino.calancha@gmail.com>
6005         file-attribute-collect: New defun
6007         * lisp/files.el (file-attribute-collect):
6008         Return a sublist of the attributes returned by 'file-attributes'.
6009         Suggested by Ted Zlatanov in:
6011         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg01195.html
6013 2016-08-17  Michael Albinus  <michael.albinus@gmx.de>
6015         Fix Bug#24203
6017         * lisp/comint.el (comint-password-prompt-regexp): Relax regexp.  (Bug#24203)
6019 2016-08-16  Karl Fogel  <kfogel@red-bean.com>
6021         Improve doc string.
6023         * src/fileio.c (Ffile_name_as_directory): Be precise about the
6024         conditions under which a slash is appended.
6026 2016-08-16  Paul Eggert  <eggert@cs.ucla.edu>
6028         Omit substitute-command-keys code no longer needed
6030         * src/doc.c (Fsubstitute_command_keys):
6031         Remove duplicate initializations.
6033 2016-08-16  Tino Calancha  <tino.calancha@gmail.com>
6035         Allow not erase output buffer in shell commands
6037         * lisp/simple.el (shell-command-not-erase-buffer): New option to allow
6038         not erasing the output buffer between shell commands.  Defaults to nil.
6039         (shell-command-on-region): Use it.
6040         (shell-command--save-pos-or-erase): New defun; store a buffer position
6041         if 'shell-command-not-erase-buffer' is non-nil; otherwise
6042         erase the output buffer of the shell command.
6043         (shell-command, shell-command-on-region): Use it.
6044         (shell-command--set-point-after-cmd): New defun;
6045         if 'shell-command-not-erase-buffer' is non-nil, set point
6046         in the output buffer to the position in 'shell-command-saved-pos'.
6047         (shell-command-sentinel, shell-command-on-region): Use it.
6048         * doc/emacs/misc.texi (shell-command-not-erase-buffer):
6049         Document this feature in the manual.
6050         See discussion on:
6051         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00610.html
6053 2016-08-16  Michael Albinus  <michael.albinus@gmx.de>
6055         Rearrange Tramp manual title page
6057         * doc/misc/tramp.texi: Move @insertcopying out of the title
6058         page.  Do not use @ifnottex anymore.
6060 2016-08-15  Glenn Morris  <rgm@gnu.org>
6062         * doc/misc/tramp.texi: Adapt 2016-08-14 change for makeinfo 4.
6064 2016-08-15  Alan Mackenzie  <acm@muc.de>
6066         Fix minor bug in c-syntactic-re-search-forward.
6068         Bug was: when NOERROR is neither nil nor t, BOUND is non-nil, PAREN-LEVEL is
6069         non-nil, and the first internal search attempt fails, point wrongly ends up at
6070         BOUND, rather than just before the next closing paren.
6072         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Guard against
6073         the above situation.
6075 2016-08-15  Alan Mackenzie  <acm@muc.de>
6077         Handle C++11 lambda functions.
6079         * lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): Enhance also to
6080         handle C++ lambda functions.
6081         (c-looking-at-c++-lambda-capture-list): New function.
6083         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize the
6084         parameter list of a lambda function and set `context' and
6085         `c-restricted-<>-arglists' suitably for it.
6086         (c-font-lock-c++-lambda-captures): New function.
6087         (c-complex-decl-matchers): Insert c-font-lock-c++-lambda-captures into it.
6089         * lisp/progmodes/cc-langs.el (c-pre-lambda-tokens, c-pre-lambda-tokens-re):
6090         New language constants/variables.
6091         (c-paren-nontype-kwds): Include "noexcept" in the C++ value.
6093         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Handle being in a C++ lambda
6094         function capture list.
6096 2016-08-15  Michael Albinus  <michael.albinus@gmx.de>
6098         Fix stale cache problem in Tramp
6100         * lisp/net/tramp-cache.el (tramp-get-connection-property):
6101         Check, that a process as key is still running.  (Bug#22478)
6103 2016-08-14  Paul Eggert  <eggert@cs.ucla.edu>
6105         * doc/misc/tramp.texi (Configuration): Fix @xref typo.
6107 2016-08-14  Eli Zaretskii  <eliz@gnu.org>
6109         Another fix for scroll-conservatively and overlay strings
6111         * src/xdisp.c (redisplay_window): Handle also the case where the
6112         calculated window-start point has an overlay string touching it.
6113         (Bug#24179)
6115 2016-08-14  Michael Albinus  <michael.albinus@gmx.de>
6117         Improve handling of defcustoms in tramp
6119         * doc/misc/tramp.texi: Protect all multi-line examples by
6120         @group ... @end group.  Use proper `custom-set-variables'
6121         examples.  Use consequently @option for user options.  Remove
6122         superfluous @cindex and @vindex entries.
6123         (Top): Remove reference to outdated mail archives.
6124         (Configuration): Tune references.
6125         (Default Method): Make `tramp-default-method' and
6126         `tramp-default-method-alist' a @defopt.
6127         (Default User): Make `tramp-default-user' and
6128         `tramp-default-user-alist' a @defopt.
6129         (Default Host): Make `tramp-default-host' and
6130         `tramp-default-host-alist' a @defopt.
6132         * lisp/net/tramp.el (tramp-mode, tramp-verbose)
6133         (tramp-backup-directory-alist, tramp-auto-save-directory)
6134         (tramp-encoding-shell, tramp-encoding-command-switch)
6135         (tramp-encoding-command-interactive, tramp-default-method)
6136         (tramp-default-method-alist, tramp-default-user)
6137         (tramp-default-user-alist, tramp-default-host)
6138         (tramp-default-host-alist, tramp-default-proxies-alist)
6139         (tramp-save-ad-hoc-proxies)
6140         (tramp-restricted-shell-hosts-alist)
6141         (tramp-local-end-of-line, tramp-rsh-end-of-line)
6142         (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
6143         (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
6144         (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
6145         (tramp-terminal-prompt-regexp)
6146         (tramp-operation-not-permitted-regexp)
6147         (tramp-copy-failed-regexp, tramp-process-alive-regexp)
6148         (tramp-syntax, tramp-chunksize)
6149         (tramp-process-connection-type, tramp-connection-timeout)
6150         (tramp-connection-min-time-diff)
6151         (tramp-completion-reread-directory-timeout):
6152         * lisp/net/tramp-adb.el (tramp-adb-program)
6153         (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
6154         * lisp/net/tramp-cache.el (tramp-connection-properties)
6155         (tramp-persistency-file-name):
6156         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
6157         (tramp-gvfs-zeroconf-domain)
6158         (tramp-bluez-discover-devices-timeout):
6159         * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
6160         (tramp-copy-size-limit, tramp-terminal-type)
6161         (tramp-histfile-override)
6162         (tramp-use-ssh-controlmaster-options, tramp-remote-path)
6163         (tramp-remote-process-environment, tramp-sh-extra-args):
6164         * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
6165         (tramp-smb-conf, tramp-smb-winexe-program)
6166         (tramp-smb-winexe-shell-command)
6167         (tramp-smb-winexe-shell-command-switch): Add :require 'tramp.
6169 2016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6171         Minor text-quoting-style fixes
6173         * lisp/cus-edit.el (custom-buffer-create-internal):
6174         * lisp/recentf.el (recentf-edit-list):
6175         Follow text-quoting-style preference when quoting in UI strings.
6176         * src/doc.c (Fsubstitute_command_keys): Don’t say that curved
6177         quotes are substituted for, as this is no longer true.
6179 2016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6181         Fix substitute-command-keys unibyte, alloc bugs
6183         * src/doc.c (Fsubstitute_command_keys): Fix some problems with
6184         unibyte strings and with buffer allocation.  Make strings
6185         multibyte, to avoid problems with unibyte strings that are not
6186         valid UTF-8 (Bug#24206).  Redo buffer allocation so that it is
6187         O(N), not O(N**2).  Avoid going past the end of the input string
6188         when given invalid input.  Avoid some unlikely problems in
6189         accessing the wrong storage after a GC.
6191 2016-08-13  Joakim Jalap  <joakim.jalap@fastmail.com>
6193         Fix "C-u" when an input method is active
6195         * lisp/international/quail.el (quail-input-method): Defer to the
6196         input method iff 'overriding-terminal-local-map' is
6197         'universal-argument-map' and the given key has no binding there.
6198         (Bug#22958)
6200 2016-08-13  Martin Rudalics  <rudalics@gmx.at>
6202         Fix docs on `display-buffer-below-selected' (Bug#24213)
6204         * lisp/window.el (display-buffer-below-selected): Fix
6205         doc-string (Bug#24213).
6206         * doc/lispref/windows.texi (Display Action Functions): Fix
6207         documentation of `display-buffer-below-selected'.
6209 2016-08-12  Tino Calancha  <tino.calancha@gmail.com>
6211         cl-fill: Rename arguments to cl-seq and cl-item
6213         * lisp/emacs-lisp/cl-seq.el (cl-fill):
6214         Rename arguments to 'cl-seq' and 'cl-item' as elsewhere.
6216 2016-08-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6218         Fix display.texi typo
6220         * doc/lispref/display.texi (Faces): Fix typo.
6222 2016-08-11  Paul Eggert  <eggert@cs.ucla.edu>
6224         Fix process leak with make-network-process
6226         This problem was introduced by the recent async changes (Bug#23808).
6227         * src/process.c (Fmake_process): Move USE_SAFE_ALLOCA later,
6228         so that it follows the start_process_unwind unwind-protect.
6229         Set pid to -1 while the process is being created.
6230         (start_process_unwind): Omit unnecessary emacs_abort test.
6231         (connect_network_socket): Simplify use of counts.  Unwind
6232         bind_polling_period a bit earlier, so that a remove_process
6233         unwind-protect can be added when needed; this is the heart of
6234         the fix.  Undo the unwind-protect just before returning.
6236 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
6238         Avoid annoying re-scroll when buffer has many overlay strings
6240         * src/xdisp.c (redisplay_window): Add better recovery from a
6241         situation where window-start is on buffer position which has a
6242         before-string that includes newlines, with the result that point
6243         is not visible in the window, because the display engine starts
6244         displaying with the before-string.  (Bug#24179)
6246 2016-08-10  Paul Eggert  <eggert@cs.ucla.edu>
6248         Omit unnecessary process initialization
6250         * src/process.c (make_process, Fmake_process)
6251         (Fmake_pipe_process, Fmake_serial_process)
6252         (Fmake_network_process, server_accept_connection):
6253         Omit unnecessary initialization of already-cleared storage.
6255 2016-08-10  Tino Calancha  <tino.calancha@gmail.com>
6257         cl-delete-duplicates: Parse :if to have cl-if bound
6259         * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
6260         We need also to parse keyword :if, otherwise cl-if
6261         is unbound.
6262         This reverts commit:
6263         68fdbeb917b80e29e0b15506f18f7ed41d8ffdfd
6265 2016-08-10  Tino Calancha  <tino.calancha@gmail.com>
6267         cl-delete-duplicates: do not parse :if keyword
6269         * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
6270         Parse only the supported keywords.
6272 2016-08-10  Michael Albinus  <michael.albinus@gmx.de>
6274         Add compatibility layer for `temporary-file-directory-function'
6276         * lisp/net/tramp-compat.el
6277         (tramp-compat-temporary-file-directory-function): New defalias.
6279         * lisp/net/tramp.el (tramp-handle-make-nearby-temp-file): Use it.
6281         * test/lisp/net/tramp-tests.el (tramp-test32-make-nearby-temp-file):
6282         Skip for older Emacs versions.
6284 2016-08-10  Michael Albinus  <michael.albinus@gmx.de>
6286         * lisp/comint.el (comint-password-prompt-regexp): Add "PEM" for OpenVPN.
6288         (Bug#24059)
6290 2016-08-10  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6292         Handle nil cell value in compiled printer functions.
6294         * doc/misc/ses.texi (Quick Tutorial): Minor clarification about the
6295         ses-range `!' modifier.
6296         (More on cell printing): Fix this that the fallback printer is
6297         `ses-prin1', not "%S".  That makes a difference for any cell value for
6298         which "%S" would insert a backslash characters.
6300         * lisp/ses.el (ses-local-printer-compile): Handle the nil cell value
6301         --- contrary to emacs-25 branches ses-call-printer does not handle
6302         prior to calling a function printer.  Not doing this would still work
6303         because the compiled function would throw and error and SES would in
6304         the end resort to the ses-prin1 fallback, however this way would not
6305         be in line with the raison d'être of compiling printer which is speed.
6307 2016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
6309         Turn on lexical-binding in json.el
6311         Measuring with (benchmark-run 100 (json-read-file "foobar.json"))
6312         showed 12-31% reduction in execution time.
6313         * lisp/json.el: Turn on lexical-binding.
6315 2016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
6317         Nudge WoMan toward lexical-binding
6319         * lisp/woman.el (woman-parse-man.conf, woman-manpath-add-locales):
6320         Use cl-pushnew instead of add-to-list.
6321         (woman-justify-list): Rename to woman-justify-styles.
6322         (woman-justify-styles): New array.
6323         (woman-justify, woman-decode-region, woman2-ad, woman2-na): Use it.
6324         (woman-cached-data): Use cl-pushnew instead of add-to-list.
6326 2016-08-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6328         Apply changes from commits 3c97b0f758 and 8a38e948b0 to master branch.
6330         Here follows the logs from the two commits which I apply to master.
6332         commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d
6333         Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
6334         Date:   Fri Jul 29 13:44:14 2016 +0200
6336         Fix ses-delete-blanks to delete only blanks + documentation.
6338         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
6339         'ses-range' modifier as an alternative to 'ses+'.
6340         (Advanced Features): Add a refernce to node 'Nonrelocatable
6341         references' concerning function 'ses-rename-cell'.
6342         (Standard formula functions): Mention the '!' 'ses-range'
6343         modifier as an alternative to 'ses-delete-blanks'.
6344         (More on cell printing): Fix fallback printer
6345         definition.  Minor editorial formatting changes.
6346         (Nonrelocatable references): Document the use of
6347         'ses-rename-cell' as a better way to make cell reference
6348         non-relocatable.
6349         (The data area): Document the presence of local printer
6350         definitions in the data area.
6352         * lisp/ses.el (ses-delete-blanks): Do not remove
6353         *error*.  Any error in an argument should propagate into the
6354         using formula rather than being silently hidden !
6356         commit 8a38e948b039516e70176ebe20c5349e2ade6ac5
6357         Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
6358         Date:   Thu Jul 28 19:49:37 2016 +0200
6360         Fix local printer set to left aligned string formatter.
6362         * lisp/ses.el (ses-local-printer-compile): Add missing case
6363         for left-aligned string formatter.
6365 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6367         * .dir-locals.el (c-noise-macro-names): Remove NONVOLATILE.
6369 2016-08-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6371         * lisp/emacs-lisp/cconv.el: Fix λ-lifting in the presence of shadowing
6373         Change the code which detects and circumvents the case where one of the
6374         variables used in λ-lifting is shadowed, so that it also works when the
6375         shadowing comes before the λ-lifted function (bug#24171).
6377         (cconv--remap-llv): New function, extracted from cconv-convert.
6378         (cconv-convert): Use it, but differently for `let' and `let*'.
6380 2016-08-09  Alan Mackenzie  <acm@muc.de>
6382         CC Mode: check for and fix missing call to before_change_functions.
6384         Fixes bug #24094 and bug #24074.
6386         This can happen with `revert-buffer' or sometimes `find-file', when the file
6387         is already in a buffer, but the file has been changed outside of Emacs.
6389         * lisp/progmodes/cc-mode (c-after-change): When we detect a missing
6390         invocation of c-before-change-functions, we assume the changed region is the
6391         entire buffer, and call c-before-change explicitly before proceding.
6393 2016-08-09  Alan Mackenzie  <acm@muc.de>
6395         Make c-deprepertize-CPP work on deletion/insertion of "s.  Fixes bug #24132.
6397         * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Rewrite function.
6399 2016-08-09  Michael Albinus  <michael.albinus@gmx.de>
6401         Support $ENV in Tramp
6403         * doc/misc/tramp.texi (Remote processes): Explain setting $ENV.
6405         * etc/NEWS: Explain the "ENV" environment variable in
6406         `tramp-remote-process-environment'.
6408         * lisp/net/tramp-sh.el (tramp-remote-process-environment): Add "ENV=''".
6409         (tramp-open-shell): Read $ENV value from
6410         `tramp-remote-process-environment'.
6411         (tramp-open-connection-setup-interactive-shell): Set values in
6412         proper order.
6414 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6416         Simplify exec_byte_code via moving decls etc.
6418         * src/bytecode.c (exec_byte_code): Simplify, mostly by moving
6419         initializers into decls, and by omitting some unnecessary
6420         changes to ‘top’.  This improves performance a bit on x86-64,
6421         as it happens.
6423 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6425         Remove interpreter’s byte stack
6427         This improves performance overall on my benchmark on x86-64,
6428         since the interpreted program-counter resides in a machine
6429         register rather than in RAM.
6430         * etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
6431         is no longer a byte stack to decode.
6432         * src/bytecode.c (struct byte_stack, byte_stack_list)
6433         (relocate_byte_stack): Remove.  All uses removed.
6434         (FETCH): Simplify now that pc is now local (typically, in a
6435         register) and no longer needs to be relocated.
6436         (CHECK_RANGE): Remove.  All uses now done inline, in a different way.
6437         (BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
6438         (exec_byte_code): Allocate a copy of the function’s bytecode,
6439         so that there is no problem if GC moves it.
6440         * src/lisp.h (struct handler): Remove byte_stack member.
6441         All uses removed.
6442         (SAFE_ALLOCA_LISP_EXTRA): New macro, a generalization of
6443         SAFE_ALLOCA_LISP.
6444         (SAFE_ALLOCA_LISP): Use it.
6446 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6448         Remove arbitrary limit on bytecode maxdepth
6450         * src/bytecode.c (exec_byte_code): Remove MAX_ALLOCA-based limit
6451         on bytecode maxdepth, by using SAFE_ALLOCA_LISP instead of alloca.
6453         pipeline is fuller.
6455 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6457         Tune bytecode quitting
6459         * src/bytecode.c (BYTE_CODE_QUIT): Check for GC, too.  Do the
6460         check only once every 256 times.  This should be good enough, and
6461         improves performance significantly on x86-64 as branch-prediction
6462         typically assumes checking will not be done so the instruction
6463         pipeline stays fuller.
6464         (exec_byte_code): Set up the quit counter.  Don’t call maybe_gc
6465         directly, as BYTE_CODE_QUIT does that now.
6467 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6469         Simplify BYTE_CODE_SAFE checking
6471         * src/bytecode.c (BYTE_CODE_SAFE): Default to false, so that it
6472         can be used outside #if.  All uses of ‘defined BYTE_CODE_SAFE’
6473         changed to ‘BYTE_CODE_SAFE’.  Use BYTE_CODE_SAFE in plain
6474         expressions instead of #if expressions when this is easy.
6475         (struct byte_stack) [BYTE_CODE_SAFE]: Remove member ‘bottom’,
6476         as it is no longer needed.
6477         (exec_byte_code): Omit #if BYTE_CODE_SAFE when this is easy.
6478         Simplify stack-overflow checking when BYTE_CODE_SAFE.
6480 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6482         Get BYTE_CODE_METER working again
6484         BYTE_CODE_METER hasn’t worked since 2013, and nobody seems to have
6485         noticed.  Perhaps we should remove it?
6486         * src/bytecode.c (METER_2) [BYTE_CODE_METER]:
6487         Use *aref_addr instead of AREF, since it needs to be an lvalue.
6489 2016-08-08  Eli Zaretskii  <eliz@gnu.org>
6491         Fix cursor position under scroll-conservatively and overlay strings
6493         * src/xdisp.c (try_scrolling): Handle the case where the last
6494         visible screen line of a window displays a before- or after-string
6495         that takes up the whole screen line, and therefore there's no
6496         place to display the cursor, even though the window does seem to
6497         include the position of point.  (Bug#24179)
6499 2016-08-08  Michael Albinus  <michael.albinus@gmx.de>
6501         * lisp/files.el (file-ownership-preserved-p): Fix docstring.  (Bug#23998)
6503 2016-08-07  Paul Eggert  <eggert@cs.ucla.edu>
6505         Tune interpretation of integer arglist descriptor
6507         * src/bytecode.c (exec_byte_code):
6508         Simplify and tune when INTEGERP (args_template).
6510 2016-08-07  Noam Postavsky  <npostavs@gmail.com>
6512         Fix debugging of string-match-p errors
6514         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
6515         that debugger code that needs to do regexp match won't break
6516         (Bug #23949, Bug #24166, Bug#16294).
6518 2016-08-07  Michael Albinus  <michael.albinus@gmx.de>
6520         Add `make-nearby-temp-file' and `temporary-file-directory'
6522         * doc/lispref/files.texi (Unique File Names):
6523         Introduce `make-nearby-temp-file' and `temporary-file-directory'.
6524         (Magic File Names): Mention `make-nearby-temp-file' and
6525         `temporary-file-directory'.
6527         * etc/NEWS (provided): Mention `make-nearby-temp-file' and
6528         `temporary-file-directory'.
6530         * lisp/files.el (mounted-file-systems): New defcustom.
6531         (temporary-file-directory, make-nearby-temp-file): New defuns.
6532         (normal-backup-enable-predicate): Fix docstring.
6534         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
6535         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
6536         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
6537         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
6538         <make-nearby-temp-file, temporary-file-directory>: Add handler.
6540         * lisp/net/tramp.el (tramp-file-name-for-operation):
6541         Add `make-nearby-temp-file' and `temporary-file-directory'.
6542         (tramp-get-remote-tmpdir): Remove compatibility code.
6543         (tramp-handle-temporary-file-directory)
6544         (tramp-handle-make-nearby-temp-file): New defuns.
6546         * lisp/org/ob-core.el (org-babel-local-file-name):
6547         * lisp/progmodes/gud.el (gud-common-init):
6548         * lisp/vc/vc-hooks.el (vc-user-login-name): Use `file-remote-p'.
6550         * lisp/vc/vc-git.el (vc-git-checkin): Handle remote log message.
6552         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
6553         Check `tramp--test-enabled'.
6554         (tramp-test18-file-attributes): Add tests for
6555         `file-ownership-preserved-p'.
6556         (tramp-test27-start-file-process, tramp-test28-shell-command):
6557         Reduce timeouts in `accept-process-output'.
6558         (tramp-test--shell-command-to-string-asynchronously): Add timeout.
6559         (tramp-test29-environment-variables): Remove additional sleep calls.
6560         (tramp-test32-make-nearby-temp-file): New test.
6561         (tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
6562         (tramp-test33-special-characters)
6563         (tramp-test33-special-characters-with-stat)
6564         (tramp-test33-special-characters-with-perl)
6565         (tramp-test33-special-characters-with-ls, tramp-test34-utf8)
6566         (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
6567         (tramp-test34-utf8-with-ls)
6568         (tramp-test35-asynchronous-requests)
6569         (tramp-test36-recursive-load, tramp-test37-unload): Rename.
6570         (tramp--test-ftp-p): Simplify check.
6571         (tramp--test-sh-p): New defun.
6572         (tramp-test20-file-modes, tramp-test22-file-times)
6573         (tramp-test26-process-file, tramp-test27-start-file-process)
6574         (tramp-test28-shell-command)
6575         (tramp-test29-environment-variables)
6576         (tramp-test30-vc-registered)
6577         (tramp-test33-special-characters-with-stat)
6578         (tramp-test33-special-characters-with-perl)
6579         (tramp-test33-special-characters-with-ls)
6580         (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
6581         (tramp-test34-utf8-with-ls)
6582         (tramp-test35-asynchronous-requests): Use it.
6584 2016-08-06  Michael Albinus  <michael.albinus@gmx.de>
6586         Add missing dcstrings in Tramp, remove chec for obsolee methods
6588         * lisp/net/tramp.el (tramp-progress-reporter-update)
6589         (tramp-unload-file-name-handlers, tramp-get-local-uid)
6590         (tramp-get-local-gid, tramp-get-local-locale):
6591         * lisp/net/tramp-adb.el (tramp-adb-ls-date-regexp)
6592         (tramp-adb-ls-toolbox-regexp, tramp-adb-get-ls-command):
6593         * lisp/net/tramp-compat.el (tramp-compat-funcall):
6594         * lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
6595         * lisp/net/tramp-gw.el (tramp-gw-process-filter):
6596         * lisp/net/tramp-sh.el (tramp-get-remote-path)
6597         (tramp-get-remote-locale, tramp-get-ls-command)
6598         (tramp-get-ls-command-with-dired)
6599         (tramp-get-ls-command-with-quoting-style)
6600         (tramp-get-ls-command-with-w-option)
6601         (tramp-get-test-nt-command, tramp-get-file-exists-command)
6602         (tramp-get-remote-ln, tramp-get-remote-perl)
6603         (tramp-get-remote-stat, tramp-get-remote-readlink)
6604         (tramp-get-remote-trash, tramp-get-remote-touch)
6605         (tramp-get-remote-gvfs-monitor-dir)
6606         (tramp-get-remote-inotifywait, tramp-get-remote-id)
6607         (tramp-get-remote-uid-with-id)
6608         (tramp-get-remote-uid-with-perl, tramp-get-remote-python)
6609         (tramp-get-remote-uid-with-python, tramp-get-remote-uid)
6610         (tramp-get-remote-gid-with-id)
6611         (tramp-get-remote-gid-with-perl)
6612         (tramp-get-remote-gid-with-python, tramp-get-remote-gid)
6613         (tramp-get-env-with-u-option): Add missing docstrings.
6615         * lisp/net/tramp.el (tramp-obsolete-methods)
6616         (tramp-warned-obsolete-methods): Remove.
6617         (tramp-find-method): Do not check for obsolete methods any longer.
6619 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6621         Make sh-mode always use p-s-lookup-properties
6623         This lets functions which rely on syntax-propertize for parsing
6624         work correctly even before font lock has a chance to run.
6626         * lisp/progmodes/sh-script.el (sh-set-shell): Set
6627         parse-sexp-lookup-properties unconditionally (Bug #4920).
6629 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6631         Fix cl-assert with atomp FORM, non-nil SHOW-ARGS
6633         * lisp/emacs-lisp/cl-macs.el (cl-assert): Don't require that FORM is a
6634         list when showing its (non-existent) arguments (Bug #18587).
6636 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6638         Don't delete selection after indent-rigidly
6640         * lisp/indent.el (indent-rigidly): Pass `deactivate-mark' as the ON-EXIT
6641         function to `set-transient-map', this prevents `delete-selection-mode'
6642         from deleting the text that was just indented (Bug #20408).
6644 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6646         Fix byte-compile of interactive closures
6648         * lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function): Put
6649         bindings after docstring and `interactive' form, if any (Bug #24122).
6651 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6653         Error if --eval arg has text beyond 1 expression
6655         * lisp/startup.el (command-line-1): If --eval argument has more data
6656         than constitutes a single Lisp expression, signal an error (Bug #23159).
6658 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6660         Fix quoted lambda warning from lexical-let
6662         * lisp/emacs-lisp/cl.el (cl--function-convert): Quote the inner lambda
6663         with `function', not `quote' (Bug #11357).
6665 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6667         Make emerge always use shell-quote-argument
6669         * lisp/vc/emerge.el (emerge-metachars): Obsolete.
6670         (emerge-protect-metachars): Delete.
6671         (emerge-make-diff-list, emerge-make-diff3-list): Replace all calls to
6672         `emerge-protect-metachars' with `shell-quote-argument' so that shell
6673         quoting is done the same on all system types (Bug #6136).  Also shell
6674         quote `emerge-diff-program' and `emerge-diff3-program'.
6676 2016-08-06  Eli Zaretskii  <eliz@gnu.org>
6678         Fix 'dired-diff' when backup file is in another directory
6680         * lisp/dired-aux.el (dired-diff): Clarify the doc string wrt how
6681         the default for FILE is computed, especially when backup files
6682         are involved.  Support backup files in another directory.
6683         Don't suggest the default FILE if it doesn't exist.  (Bug#24089)
6685 2016-08-06  Eli Zaretskii  <eliz@gnu.org>
6687         Fix the 'T' command in Dired with non_ASCII file names
6689         * lisp/dired-aux.el (dired-do-chxxx): Bind coding-system-for-write
6690         to correctly encode file names passed to the invoked PROGRAM.
6691         (Bug#24162)
6693 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
6695         * lisp/files.el (version-control): Drop :group vc (Bug #14687)
6697 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6699         Merge from origin/emacs-25
6701         d841a03 ; Spelling fix
6702         a6ae479 Post AppDefined events from the main thread ONLY (bug#23934)
6703         d35d398 Update to the AUTHORS file for Bob Weiner
6704         4d2f4df Revert "Fix local printer set to left aligned string formatter."
6705         cd1b4d6 Revert "Fix ses-delete-blanks to delete only blanks + documen...
6706         f7ceb8e Revert "Fix English."
6707         baa7abd Improve doc strings of 'gud-gdb' and 'gdb'
6708         aa4271a Fix doc string of 'minibuffer-message-timeout'
6709         b275cc7 Fix English.
6710         3c97b0f Fix ses-delete-blanks to delete only blanks + documentation.
6711         272391f profiler: document prefix arg for tree expansion
6712         442cc39 Clarify usage of eshell-visual-options
6713         b443c3c Fix comment in files-in-below-directory
6714         8a38e94 Fix local printer set to left aligned string formatter.
6715         0f0b191 ; Fix typos in NEWS
6716         6bdf687 ; * etc/NEWS: Remove temporary marks
6718 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6720         Merge from origin/emacs-25
6722         d08afa1 * etc/AUTHORS: Update the AUTHORS file
6723         2668500 ;; * ChangeLog.2: ChangeLog update.
6724         7acfaea ; ChangeLog fixes
6725         97d28b4 * admin/authors.el (authors-valid-file-names): Addition.
6726         9ab52f6 * admin/authors.el: Additions.
6727         0e646c7 Warn about Cairo-related problems
6728         bc4c07f Don't let completion break `declare' handling
6729         66f95e0 Adjust match data before calling after-change-funs
6730         52cf0d5 Do not show string-rectangle preview if minibuffer is empty
6731         6a3d031 * etc/PROBLEMS: Add entry about selection problems under Plas...
6733         # Conflicts:
6734         #       ChangeLog.2
6735         #       src/lisp.h
6737 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6739         Merge from origin/emacs-25
6741         9a41cd1 ; Fix typo
6742         9356fe2 Expand FIXME near definition of fboundp
6743         219b39f kill-rectangle should mention killed-rectangle
6744         59fa4c3 Avoid assertion violations in nhexl-mode
6746 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6748         Merge from origin/emacs-25
6750         9ba51ed Document buffer-swap-text+save-excursion interaction
6751         452aa94 Fix eieio vs cl-generic incompatibilities found in Rudel (bug...
6752         248d5dd Include cl-generic in package--builtin-versions (bug#22817)
6753         8f5a8b6 Improve timing in `tramp-test29-environment-variables'
6754         05ba7a0 Add test for handling environment variables in Tramp
6755         e393d4f * lisp/emacs-lisp/package.el (describe-package-1) (package-st...
6756         5e38887 ; * lisp/net/tramp.el: Fix 2010-10-04 comment typo.  (Bug#23913)
6757         90f2169 ; Spelling fixes
6758         069fc05 Improve documentation of search functions
6759         0a0144a Delete environment variables in Tramp when needed
6760         f624671 Add "New in Emacs 25" section to the FAQ
6761         658daf9 Fix 'vertical-motion' in non-interactive sessions
6762         686b520 Fix memory leak in imagemagick-types
6763         4069b71 Update ELisp manual to match 'string-collate-equalp' doc string
6764         1b2d6a6 Clarify docstring of find-feature-regexp
6765         aac62a6 Add details to cl-lib defining macros' docstrings
6766         d6aa4da Clarify doc string of 'save-buffer'
6767         03bcf11 Un-confuse doc string of 'string-collate-equalp'
6768         c53135b Clarify documentation of 'mouse-on-link-p'
6770         # Conflicts:
6771         #       lisp/emacs-lisp/eieio-core.el
6773 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6775         Merge from origin/emacs-25
6777         6f285d9 Amend last addition to etc/PROBLEMS
6778         7067890 * etc/PROBLEMS: Mention GTK+ problem with unexpected frame wi...
6780 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6782         Merge from origin/emacs-25
6784         d4c6774 Fix missing point information in undo
6785         3a9d629 Avoid crashes when buffer modification hooks clobber match data
6786         178b2f5 Note combine-and-quote-strings doesn't shell quote
6787         dec7567 Explain when package-initialize isn't called
6788         113d1e2 Fix escaping in sh-indent-after-continuation docstr
6789         80e2044 ; * etc/NEWS: Improve previous change.
6790         5bb9e6c ; * etc/NEWS: Document how to avoid horizontal scroll bars.
6791         38f4b8e Clarify the documentation of back-references in replacements
6793 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6795         Merge from origin/emacs-25
6797         850ba44 Clarify lexical binding with symbol args behavior
6798         f981b31 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
6799         68fc964 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23...
6800         21110af Avoid assertion violations when rendering some fonts
6801         6192b6c Document more details of package activation
6802         272ddc6 Fixup warning message regarding HOME a bit more
6803         43206d6 * lisp/leim/quail/indian.el ("bengali-probhat"): Change indic...
6804         d41f7ff Fix input method "probhat" for Bengali
6805         c150a64 ; Fix typo in commit before last
6806         ebf0472 Add to elisp-completion-at-point's docstring
6807         fd9fad0 Give more helpful warning about setting HOME
6808         ea6b01d ; * lisp/term.el (term-mode): FIXME comment about bidi reorde...
6810         # Conflicts:
6811         #       lisp/term.el
6813 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6815         Merge from origin/emacs-25
6817         26d4da0 New input method "probhat" for Bengali
6818         4f445bf ; Spelling fix
6819         f403f03 ; Fix typo
6821 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6823         Spelling and minor grammar fixes
6825         * test/file-organization.org: Rename from test/file-organisation.org.
6827 2016-08-04  Alan Mackenzie  <acm@muc.de>
6829         Widen in certain low level CC Mode functions.  This fixes bug #24148.
6831         * lisp/progmodes/cc-engine (c-state-semi-pp-to-literal)
6832         (c-state-full-pp-to-literal): Widen around the functionality.
6833         (c-parse-ps-state-below): Correct the order of save-excursion and
6834         save-restriction.
6836 2016-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
6838         Fix Bug#24149
6840         * lisp/subr.el (set-transient-map): Don't wait if MAP not present in
6841         overriding-terminal-local-map.  (Bug#24149)
6843 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6845         Update from gnulib
6847         This incorporates:
6848         2016-07-03 mktime: call tzset as per POSIX
6849         * doc/misc/texinfo.tex, lib/mktime.c, m4/mktime.m4:
6850         Copy from gnulib.
6852 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6854         Fix GnuTLS includes
6856         * src/gnutls.c [HAVE_GNUTLS]: Don’t include gnutls/gnutls.h
6857         a second time; although it doesn’t hurt, it’s not needed.
6858         * src/sysdep.c [!HAVE_GNUTLS]: Don’t include gnutls/crypto.h,
6859         as it may not be available.  Problem reported by Glenn Morris in:
6860         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00100.html
6862 2016-08-03  Michal Nazarewicz  <mina86@mina86.com>
6864         Fix accessing regex-resources in out-of-tree test runs in regex-tests
6866         [82a487d: Fix reading of regex-resources in regex-tests] attempted to
6867         fix regex-tests failing when run from the source tree (i.e. via make)
6868         by hard-coding path to regex-resources directory relative to the test
6869         directory.
6871         This fixed runs from the tree but broke the test when run using other
6872         methods.
6874         Fix by trying ‘load-file-name’ or ‘buffer-file-name’, whichever is set.
6876         * test/src/regex-tests.el (regex-tests--resources-dir): New variable
6877         storing path to the regex-resources directory.
6878         (regex-tests-generic-line): Use aforementioned variable.
6880 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6882         Simplify by assuming GnuTLS 2.12.2 or later
6884         * src/gnutls.c (gnutls_certificate_details):
6885         * src/sysdep.c: Assume GnuTLS 2.12.2 or later.
6887 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6889         Port to systems lacking GNUTLS_NONBLOCK
6891         Problem reported by Colin Baxter in:
6892         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00096.html
6893         * src/gnutls.c (Fgnutls_boot): Don’t assume GNUTLS_NONBLOCK is defined.
6895 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6897         Fix non-blocking GnuTLS with slow connection
6899         Although the problem is reported for OS X (Bug#23982), it seems to
6900         be possible on other POSIXish platforms.
6901         * src/gnutls.c (emacs_gnutls_nonblock_errno) [!WINDOWSNT]:
6902         New function.
6903         (emacs_gnutls_handshake) [!WINDOWSNT]:
6904         Use it as the errno function, if non-blocking.
6905         (Fgnutls_boot): Use GNUTLS_NONBLOCK if non-blocking.
6907 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6909         Require GnuTLS 2.12.2 or later
6911         * configure.ac, etc/NEWS: Require GnuTLS 2.12.2 or later,
6912         instead of merely 2.6.6 or later (Bug#23982#20).
6913         * src/gnutls.c (init_gnutls_functions, emacs_gnutls_handshake)
6914         [WINDOWSNT]: Don’t bother with gnutls_check_version or
6915         gnutls_transport_set_lowat, as they are no longer needed now that
6916         we require gnutls 2.12.2 or later.
6918 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6920         * src/window.c (sanitize_window_sizes): Remove unused arg `frame'
6922         * src/window.h (sanitize_window_sizes): Adjust prototype.
6923         * src/frame.c (adjust_frame_size): Adjust calls.
6925 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6927         Fix (mapcar F S) crash when F alters S’s length
6929         * src/fns.c (mapcar1): Return number of elements computed,
6930         which can be less than LENI if the function alters the list.
6931         All callers changed.  (Bug#24118)
6933 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6935         Port window changes to --enable-gcc-warnings
6937         * src/window.c (sanitize_window_sizes): Return void.
6938         This pacifies GCC, and no caller uses the return value anyway.
6940 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6942         * src/window.c: Fix bootstrap failure due to window.el changes
6944         (sanitize_window_sizes): Adjust to new calling convention of
6945         window--sanitize-window-sizes and only call it if defined.
6946         (Fwindow__sanitize_window_sizes): Remove.
6947         (syms_of_window): Don't defsubr it.
6949 2016-08-02  Michael Albinus  <michael.albinus@gmx.de>
6951         Fix Bug#23883
6953         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
6954         Call `process-actions' with adapted position.  The connection
6955         buffer might have been cleaned up already.  (Bug#23883)
6957 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6959         Port regex changes to strict ISO C
6961         * src/regex.c (regex_compile): Redo casts.
6963 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6965         * lisp/window.el: Use lexical-binding
6967         (window--min-size-ignore-p): Remove unused arg `horizontal'.
6968         (window--sanitize-window-sizes): Remove unused arg `frame'.
6969         (window-edges): Remove unused vars left-off and right-off.
6970         (display-buffer-reuse-mode-window): Remove unused var `frame?'.
6971         Avoid extraneous setq and do a bit of CSE.
6972         (fit-frame-to-buffer): Remove unused vars `window', `fit-width',
6973         and `toolbar-extra-height'.
6974         (window-adjust-process-window-size): Remove unused arg `process'.
6976 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
6978         Fix unused lexical variable
6980         This fixes the following warning:
6982             In toplevel form:
6983             src/regex-tests.el:416:1:Warning: Unused lexical variable ‘newline’
6985         * test/src/regex-tests.el (regex-tests-BOOST): Remove unused lexical
6986         variable.
6988 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
6990         Remove unused STREQ macro
6992         This fixes the following compilation warning:
6994             regex.c:516:0: warning: macro "STREQ" is not used [-Wunused-macros]
6995              #define STREQ(s1, s2) ((strcmp (s1, s2) == 0))
6996              ^
6998         * src/regex.c (STREQ): Remove unused macro.  It should have been removed
6999         in a [4538a5e: Refactor regex character class parsing in [:name:]]
7000         commit but was mistakenly left out.
7002 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
7004         * cl-generic.el: Fix problems introduced by new load-history format
7006         * lisp/emacs-lisp/cl-generic.el (cl--generic-load-hist-format): New function.
7007         (cl-generic-define-method, cl--generic-describe): Use it.
7008         (cl--generic-search-method): Adjust for new format.
7010         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
7011         * test/lisp/progmodes/elisp-mode-tests.el:
7012         Use cl--generic-load-hist-format rather than hard-coding cl-generic's
7013         internal format.
7015 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7017         Hardcode regex syntax to remove dead code handling different syntax
7019         Emacs only ever uses its own regex syntax so support for other syntaxes
7020         is never used.  Hardcode the syntax so that the compilar can detect such
7021         dead code and remove it from compiled code.
7023         The only exception is RE_NO_POSIX_BACKTRACKING which can be separatelly
7024         specified.  Handle this separatelly with a function argument (replacing
7025         now unnecessary syntax argument).
7027         With this patchset, size of Emacs binary on x86_64 machine is reduced by
7028         around 60 kB:
7030                 new-sizes:-rwx------ 3 mpn eng 30254720 Jul 27 23:31 src/emacs
7031                 old-sizes:-rwx------ 3 mpn eng 30314828 Jul 27 23:29 src/emacs
7033         * src/regex.h (re_pattern_buffer): Don’t define syntax field #ifdef emacs.
7034         (re_compile_pattern): Replace syntax with posix_backtracking argument.
7036         * src/regex.c (print_compiled_pattern): Don’t print syntax #ifdef emacs.
7037         (regex_compile): #ifdef emacs, replace syntax argument with
7038         posix_backtracking which is now used instead of testing for
7039         RE_NO_POSIX_BACKTRACKING syntax.
7040         (re_match_2_internal): Don’t access bufp->syntax #ifndef emacs.
7041         (re_compile_pattern): Replace syntax with posix_backtracking argument.
7043         * src/search.c (compile_pattern_1): Pass boolean posix_backtracking
7044         instead of syntax to re_compile_pattern.
7046 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7048         Get rid of re_set_whitespace_regexp
7050         * src/regex.h (re_set_whitespace_regexp): Delete.
7051         (re_compile_pattern): Add whitespace_regexp argument #ifdef emacs.
7053         * src/regex.c (re_set_whitespace_regexp, whitespace_regexp): Delete.
7054         (regex_compile): Add whitespace_regexp argument #ifdef emacs and wrap
7055         whitespace_regexp-related code in an #ifdef emacs so it’s compiled out
7056         unless building Emacs.
7057         (re_compile_pattern): Pass whitespace_regexp argument to regex_compile
7059         * src/search.c (compile_pattern_1): Don’t use re_set_whitespace_regexp,
7060         pass the regex as argument to re_compile_pattern instead.
7062 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7064         Get rid of re_set_syntax
7066         Instead of using a global variable for storing regex syntax, pass it
7067         to re_compile_pattern.  This is only enabled when compiling Emacs (i.e.
7068         ‘#ifdef emacs’).
7070         * src/regex.h (re_set_syntax): Declare only #ifndef emacs.
7071         (re_compile_pattern): Now takes syntax argument #ifdef emacs.
7073         * src/regex.c (re_syntax_options): Define only #ifndef emacs.
7074         (re_compile_pattern): Use the new syntax argument #ifdef emacs.
7076         * src/search.c (compile_pattern_1): Don’t use re_set_syntax and
7077         instead pass syntax to re_compile_pattern directly.
7079 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7081         Remove dead opcodes in regex bytecode
7083         There is no way to specify before_dot and after_dot opcodes in a regex
7084         so code handling those ends up being dead.  Remove it.
7086         * src/regex.c (print_partial_compiled_pattern, regex_compile,
7087         analyze_first, re_match_2_internal): Remove handling and references to
7088         before_dot and after_dot opcodes.
7090 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7092         Refactor regex character class parsing in [:name:]
7094         re_wctype function is used in three separate places and in all of
7095         those places almost exact code extracting the name from [:name:]
7096         surrounds it.  Furthermore, re_wctype requires a NUL-terminated
7097         string, so the name of the character class is copied to a temporary
7098         buffer.
7100         The code duplication and unnecessary memory copying can be avoided by
7101         pushing the responsibility of parsing the whole [:name:] sequence to
7102         the function.
7104         Furthermore, since now the function has access to the length of the
7105         character class name (since it’s doing the parsing), it can take
7106         advantage of that information in skipping some string comparisons and
7107         using a constant-length memcmp instead of strcmp which needs to take
7108         care of NUL bytes.
7110         * src/regex.c (re_wctype): Delete function.  Replace it with:
7111         (re_wctype_parse): New function which parses a whole [:name:] string
7112         and returns a RECC_* constant or -1 if the string is not of [:name:]
7113         format.
7114         (regex_compile): Use re_wctype_parse.
7115         * src/syntax.c (skip_chars): Use re_wctype_parse.
7117 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7119         Split regex glibc test cases into separet tests
7121         * test/src/regex-tests.el (regex-tests): Remove and split into multiple
7122         tests cases.
7123         (regex-tests-glbic-BOOST, regex-tests-glibc-PCRE,
7124         regex-tests-glibc-PTESTS, regex-tests-glibc-TESTS): New test cases split
7125         from ‘regex-tests’.
7127 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7129         Don’t (require 'cl)
7131         * test/src/regex-test.el: Don’t (require 'cl).
7132         (regex-tests-PCRE): s/loop/cl-loop/
7134 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7136         Fix reading of regex-resources in regex-tests
7138         * test/src/regex-tests.el (regex-tests-generic-line): Referring to
7139         ‘buffer-file-name’ does not work when running the test from command
7140         line, i.e. via make, which results in (wrong-type-argument stringp nil)
7141         failures.  Replace it with hard-coded path.
7142         (regex-tests-BOOST, regex-tests-PCRE, regex-tests-PTESTS-whitelist,
7143         regex-tests-TESTS-whitelist): ‘regex-tests-generic-line’ now  includes
7144         the ‘regex-resources’ path component so the tests don’t need to specify
7145         it explicitly.
7147 2016-08-02  Dima Kogan  <dima@secretsauce.net>
7149         Added driver for the regex tests
7151         * test/src/regex-tests.el (regex-tests): Test executing glibc tests
7152         cases.
7154         [mina86@mina86.com: merged test with existing file]
7156 2016-08-02  Dima Kogan  <dima@secretsauce.net>
7158         New regex tests imported from glibc 2.21
7160         * test/src/regex-resources/BOOST.tests:
7161         * test/src/regex-resources/PCRE.tests:
7162         * test/src/regex-resources/PTESTS:
7163         * test/src/regex-resources/TESTS:
7164         New test data files
7166         [mina86@mina86.com: Moved files from test/src/regex/* to test/src/*.]
7168 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7170         Fix use-after-close in connect_network_socket
7172         * src/process.c (connect_network_socket):
7173         Reverse sense of previous fix.  Problem reported by Ken Brown in:
7174         http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00004.html
7176 2016-08-01  Glenn Morris  <rgm@gnu.org>
7178         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
7179         Respect autoload-timestamps for "actual autoloads are elsewhere" case.
7181 2016-07-31  Stefan Merten  <stefan@merten-home.de>
7183         * lisp/textmodes/rst.el: Major refactoring, minor changes, minor fixes
7185         (rst-Ado, rst-Hdr, rst-Ttl, rst-Stn): Introduce classes
7186         representing reStructuredText section header concepts.
7187         (rst-mode-map, rst-new-preferred-hdr)
7188         (rst-update-section, rst-classify-adornment)
7189         (rst-ttl-at-point, rst-all-ttls-cache)
7190         (rst-hdr-hierarchy-cache, rst-reset-section-caches)
7191         (rst-all-ttls, rst-infer-hdr-hierarchy, rst-hdr-hierarchy)
7192         (rst-all-ttls-with-level, rst-get-previous-hdr)
7193         (rst-adornment-complete-p, rst-next-hdr, rst-adjust)
7194         (rst-adjust-section, rst-promote-region)
7195         (rst-display-hdr-hierarchy, rst-straighten-sections)
7196         (rst-all-stn, rst-remaining-stn, rst-toc-insert)
7197         (rst-toc-insert-node, rst-toc-node, rst-toc)
7198         (rst-forward-section, rst-adornment-level)
7199         (rst-font-lock-handle-adornment-pre-match-form)
7200         (rst-imenu-convert-cell, rst-imenu-create-index): Refactor
7201         using classes.
7202         (rst-compare-adornments, rst-get-adornment-match): Remove
7203         functions now in classes.
7204         (rst-re-alist-def, rst-toc-mode)
7205         (rst-font-lock-extend-region-extend): Minor improvements.
7206         (rst-mode, rst-compile): Use `setq-local'.
7207         (rst-cvs-header, rst-svn-rev, rst-svn-timestamp)
7208         (rst-official-version, rst-official-cvs-rev)
7209         (rst-package-emacs-version-alist): Maintain version tags.
7211 2016-07-30  Martin Rudalics  <rudalics@gmx.at>
7213         Fix calculation of tool bar width reported by `frame-geometry' (Bug#24107)
7215         * src/w32fns.c (Fw32_frame_geometry): Fix calculation of tool
7216         bar width (Bug#24107).  Reindent.
7217         * src/xfns.c (frame_geometry): Fix calculation of tool bar
7218         width on non-GTK builds.
7220 2016-07-30  Eli Zaretskii  <eliz@gnu.org>
7222         Fix region display while dragging mouse
7224         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
7225         buffer of the drag event, to allow mark to be set and the region
7226         be shown as we drag the mouse.  (Bug#24030)
7228 2016-07-30  Tino Calancha  <tino.calancha@gmail.com>
7230         Copy just non-empty strings to kill-ring
7232         * lisp/dired.el (dired-copy-filename-as-kill):
7233         Do not change the kill ring when the string is empty (Bug#24103).
7235 2016-07-30  Eli Zaretskii  <eliz@gnu.org>
7237         Avoid warnings about undo list while decoding
7239         * src/coding.c (coding_restore_undo_list): New function.
7240         (decode_coding_gap, decode_coding_object): Temporarily set the
7241         buffer's undo list to t, to avoid warnings when decoding changes
7242         the buffer many times, e.g. due to post-read-conversion.  Use
7243         coding_restore_undo_list to make sure the undo list is restored.
7244         (Bug#23813)
7246 2016-07-28  Noam Postavsky  <npostavs@gmail.com>
7248         profiler: Add mouse-1 binding for tree expansion
7250         (profiler-report-mode-map): Add mouse-1 binding for
7251         profiler-report-toggle-entry (Bug #13455).
7253 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7255         Enable addition of local printers from a mode hook.
7257         * doc/misc/ses.texi (Printer functions): Split the node into 5
7258         sub-nodes + add some extra documentation.
7259         (Various kinds of printer functions): Make an itemisation to
7260         disintguish better the 3 types of printers, give an example of
7261         lambda printer definition.
7262         (Standard printer functions): Add documentation for ses-prin1
7263         printer function.
7264         (Local printer functions): Add documentation for creating
7265         local printers programmatically from a hook.
7266         (Writing a lambda printer function): Add documentation about
7267         anti-stackoverflow precautions to take when you call the
7268         standard printer functions from inside a local printer.
7270         * lisp/ses.el (ses-standard-printer-functions): Add ses-prin1
7271         among standard printer function, and update docstring
7272         accordingly.
7273         (ses-call-printer, ses-export-tab): Call `ses-prin1' instead
7274         of prin1-to-string.
7275         (ses-define-local-printer): Add definition to arguments so
7276         that a local printer can be defined programmatically from a
7277         mode hook.  Make docstring more substantial.  Use completing
7278         read for local printer name input.  Plus some minor
7279         optimization.
7280         (ses-define-if-new-local-printer): New defsubst.
7281         (ses-center, ses-center-span, ses-dashfill)
7282         (ses-dashfill-span, ses-tildefill-span): Allow to pass printer
7283         as an optional argument to superseed column printer/default
7284         spreadsheet printer.
7285         (ses-prin1): New defun.
7287 2016-07-27  Ted Zlatanov  <tzz@lifelogs.com>
7289         Prompt to save gnus-cloud-method.
7291         Since `gnus-cloud-method' is a defcustom, when it's set, we should
7292         prompt the user to save it, so the customization is not lost on
7293         restart.
7295         * gnus-srvr.el (gnus-server-toggle-cloud-method-server): Prompt to
7296         save the customization of `gnus-cloud-method'.
7298 2016-07-27  Ken Brown  <kbrown@cornell.edu>
7300         Fix dired-test-bug22694
7302         * test/lisp/dired-tests.el (dired-test-bug22694): Delete the
7303         "bug22694" directory, if it exists, before running the test.  It
7304         might be left over from a previous aborted run of the test.
7306 2016-07-27  Michal Nazarewicz  <mina86@mina86.com>
7308         Fix ‘is multibyte’ test regex.c’s mutually_exclusive_p (bug#24020)
7310         * src/regex.c (mutually_exclusive_p): Fix how whether character is
7311         unibyte is tested when calling execute_charset function.  This bug has
7312         been introduced by [6dc6b00: Fix ‘[[:cc:]]*literal’ regex failing to
7313         match ‘literal’] which dropped a call to IS_REAL_ASCII (c) macro.
7314         Reinstitute it.
7316 2016-07-27  Tino Calancha  <tino.calancha@gmail.com>
7318         Remove hook when disabling ibuffer-auto-mode
7320         * lisp/ibuf-ext.el (ibuffer-auto-mode):
7321         Remove 'ibuffer-auto-update-changed' from 'post-command-hook'.
7323 2016-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
7325         * lisp/subr.el (cancel-change-group): Reset cell in case of error
7327         Since the setcdr/setcdr is supposed to be temporary, use unwind-protect
7328         to make sure we properly undo the temporary change even in case of error.
7330 2016-07-26  Eli Zaretskii  <eliz@gnu.org>
7332         Avoid segfaults in compute_motion
7334         * src/indent.c (compute_motion): Don't turn on and don't use the
7335         width cache unless the buffer's width-table is non-nil.  This
7336         avoids segfaults because code that uses the width cache assumes
7337         the width-table exists.  (Bug#24064)
7339 2016-07-26  Nicolas Petton  <nicolas@petton.fr>
7341         Do not sharp-quote lambdas
7343         * lisp/progmodes/sql.el: Remove sharp-quotes in lambdas.
7345 2016-07-25  Ted Zlatanov  <tzz@lifelogs.com>
7347         * gnus-cloud.el (gnus-cloud-encode-data): Fix 'base64-gzip encoding.
7349 2016-07-25  Andrew Hyatt  <ahyatt@gmail.com>
7351         Add warning to format-alist docs.
7353         */doc/lispref/files.texi (format-alist) Change documentation for
7354         format-alist to warn against file modifications when formatting, which
7355         leads to incorrect results.  (Bug#5440)
7357         Changes suggested by Eli.
7359 2016-07-25  Katsumi Yamaoka  <yamaoka@jpl.org>
7361         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
7362         Preserve key bindings that shr adds (bug#23964).
7364 2016-07-25  Michal Nazarewicz  <mina86@mina86.com>
7366         Fix ‘[[:cc:]]*literal’ regex failing to match ‘literal’ (bug#24020)
7368         The regex engine tries to optimise Kleene star by avoiding backtracking
7369         when it can detect that star’s operand cannot match what follows it in
7370         the pattern.
7372         For example, when ‘[[:alpha:]]*1’ tries to match a ‘foo’, the engine
7373         will test the longest match for ‘[[:alpha:]]*’, namely ’foo’ which is
7374         the entire string.  Literal digit one still present in the pattern will
7375         however not match the remaining empty string.
7377         Normally, backtracking would be performed trying a shorter match for the
7378         character class (namely ‘fo’ leaving ‘o’ in the string), but since the
7379         engine knows whatever would be put back into the string cannot possibly
7380         match literal digit one so no backtracking will be attempted.
7382         In the regexes of the form ‘[[:CC:]]*X’, the optimisation can be applied
7383         if the character class CC does not match character X.  In the above
7384         example, this holds because digit one is not in alpha character class.
7386         This test is performed by mutually_exclusive_p function but it did not
7387         check class bits of a charset opcode.  This resulted in an assumption
7388         that character classes do not match multibyte characters.  For example,
7389         it would incorrectly conclude that [[:alpha:]] doesn’t match ‘ż’.
7391         This, in turn, led to the aforementioned Kleene star optimisation being
7392         incorrectly applied in patterns such as ‘[[:graph:]]*☠’ (which should
7393         match ‘☠’ but doesn’t as can be tested by executing
7394             (string-match-p "[[:graph:]]*☠" "☠")
7395         which should return 0 but instead yields nil.
7397         This issue affects any class witch matches multibyte characters, i.e.
7398         if ‘[[:cc:]]’ matches a multibyte character X then ‘[[:cc:]]*X’ will
7399         fail to match ‘X’.
7401         * src/regex.c (executing_charset): A new function for executing the
7402         charset and charset_not opcodes.  It performs check on the character
7403         taking into consideration existing bitmap, range table and class bits.
7404         It also advances the pointer in the regex bytecode past the parsed
7405         opcode.
7406         (CHARSET_LOOKUP_RANGE_TABLE_RAW, CHARSET_LOOKUP_RANGE_TABLE): Removed.
7407         Code now included in executing_charset.
7408         (mutually_exclusive_p, re_match_2_internal): Changed to take advantage
7409         of executing_charset function.
7411         * test/src/regex-tests.el: New file with tests for the character class
7412         matching.
7414 2016-07-25  Nicolas Petton  <nicolas@petton.fr>
7416         Fix auto-reverting image-mode buffer (bug#21598)
7418         When auto-reverting an image buffer, `image-mode' is not called since
7419         `revert-buffer' is called with `preserve-modes' set to non-nil.
7421         * lisp/image-mode.el (image-after-revert-hook): Check if there is an
7422         image display property for the current buffer before updating it.
7424 2016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
7426         ‘signal’ no longer returns
7428         Although for decades ‘signal’ has been documented to not return,
7429         a corner case in the Lisp debugger causes ‘signal’ to return.
7430         Remove the corner case and adjust Emacs internals accordingly.
7431         An alternative would be to document the corner case, but this
7432         would complicate the Lisp API unnecessarily.  (Bug#24047)
7433         * src/eval.c (signal_or_quit): New function, with most of the
7434         old contents of Fsignal.
7435         (quit): New function, which uses signal_or_quit and which
7436         might return.  All keyboard-based callers of Fsignal (Qquit,
7437         Qnil) changed to use this new function instead.
7438         (Fsignal): Use signal_or_quit.  Now _Noreturn.  All callers
7439         changed.
7440         (xsignal): Move to lisp.h.
7441         * src/lisp.h (xsignal): Now an inline function, as it's now
7442         just an alias for Fsignal.
7444 2016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
7446         Require libgnutls unless --with-gnutls=no
7448         * configure.ac: Report an error if the gnutls library is missing,
7449         unless --with-gnutls=no is specified.
7451 2016-07-23  Alan Mackenzie  <acm@muc.de>
7453         Fontify C++ parameter packs.
7455         This fixes debbugs #23610.
7457         * lisp/progmodes/cc-langs.el (c-pack-ops, c-pack-key): New
7458         c-lang-defconsts/defvars.
7459         (c-type-decl-prefix-key): Add "..." and "&&" into the C++ version.
7461         * lisp/progmodes/cc-engine.el (c-forward-type): Handle matches of c-pack-key.
7463 2016-07-23  Alan Mackenzie  <acm@muc.de>
7465         Java Mode: Handle strings as case labels correctly.
7467         This fixes debbugs #23901.
7469         * lisp/progmodes/cc-langs.el (c-nonlabel-token-key): Remove "\"" from the
7470         Java value.
7472 2016-07-22  Kaushal Modi  <kaushal.modi@gmail.com>
7474         Avoid repeated warnings while restoring desktop
7476         * lisp/desktop.el (desktop-restore-file-buffer): Do not print warnings
7477         when files are being opened during desktop restore.
7479 2016-07-22  Eli Zaretskii  <eliz@gnu.org>
7481         Fix compilation warning in the MinGW build
7483         * nt/inc/ms-w32.h: Include stdint.h.
7484         (_execvp, execve): Provide prototypes.
7486         * lib-src/emacsclient.c [WINDOWSNT]: Remove prototype for execvp,
7487         it is now in nt/inc/ms-w32.h.
7488         * lib-src/ntlib.c (getppid): Avoid compiler warnings due to format
7489         mismatch.
7490         (sys_ctime): Remove, not used.
7492 2016-07-22  Lars Ingebrigtsen  <larsi@gnus.org>
7494         Move read-multiple-choice to subr-x.el
7496         * lisp/faces.el (read-multiple-choice-face): Fix doc string.
7498         * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Move here
7499         from subr.el.
7501         * lisp/gnus/message.el (subr-x): Ditto.
7503         * lisp/net/nsm.el: Require subr-x for read-multiple-choice.
7505         read-multiple-choice doesn't need to be in the dumped Emacs, so move
7506         it to a less central file.
7508 2016-07-22  Tino Calancha  <tino.calancha@gmail.com>
7510         Update define-ibuffer-op doc string
7512         * lisp/ibuf-macs.el (define-ibuffer-op):
7513         Mention that BODY is evaluated with 'buf' bound to the actual
7514         marked buffer being processed.
7516 2016-07-22  Tino Calancha  <tino.calancha@gmail.com>
7518         Update define-ibuffer-op doc string
7520         * lisp/ibuf-macs.el (define-ibuffer-op): Document arg COMPLEX
7521         instead of refer the reader to the source code.
7522         Document arg BODY.
7524 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7526         Fix shell-command[-on-region] doc strings
7528         * lisp/simple.el (shell-command, shell-command-on-region):
7529         Drop the sentence saying that the command may delete the buffer
7530         '*Shell Command Output*': the command never delete such
7531         buffer (Bug#23936).
7533 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
7535         ;Revert ";Partially revert 2649105a"
7537         This reverts commit b7651649c2b1321a0c510116c1ac2442599d9a2e.
7539 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
7541         ;Partially revert 2649105a
7543         * lisp/textmodes/tex-mode.el (tex-common-initialization): Use
7544         setq-local to modify prettify-symbols-compose-predicate.
7546 2016-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7548         * src/bytecode.c: Fix compilation with BYTE_CODE_SAFE
7550         (struct byte_stack): Re-add `bottom'.
7551         (exec_byte_code): Initialize it.
7553 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7555         Ibuffer: Use default output buffer for shell commands
7557         * lisp/ibuf-ext.el (shell-command-pipe): Insert the output in buffer
7558         '*Shell Command Output*', as command 'shell-command-file'.
7560 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7562         Fix failing test
7564         * test/lisp/erc/erc-track-tests.el (erc-track--erc-faces-in):
7565         Enable Font Lock mode in order to initialize
7566         'char-property-alias-alist' (Bug#23954).
7568 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
7570         Fix use-after-close in connect_network_socket
7572         * src/process.c (connect_network_socket): Don’t use
7573         external_sock_fd after closing it.  Problem found by Coverity Scan.
7575 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
7577         * lisp/net/shr.el (shr-fill-line):
7578         Preserve text properties in folded lines (bug#24034).
7580 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7582         Fix lifetime bug in tzlookup
7584         * src/editfns.c (tzlookup): Fix storage lifetime bug when
7585         INTEGERP (zone) && settz.  Problem found by Coverity Scan.
7587 2016-07-20  Lars Ingebrigtsen  <larsi@gnus.org>
7589         Fix shr.el/image build problem
7591         (Bug#24035)
7593         * lisp/net/shr.el: Require image, since some builds seem to
7594         break without it (bug#24035).
7596 2016-07-20  Ted Zlatanov  <tzz@lifelogs.com>
7598         Bring the Gnus Cloud package into working order.
7600         * lisp/gnus/gnus-sync.el: Removed in favor of gnus-cloud.el.
7602         * lisp/gnus/gnus-cloud.el: Autoload EPG functions. Change storage format to
7603         simplify non-file data.
7604         (gnus-cloud-storage-method): New defcustom to support nil, Base64,
7605         Base64+gzip, or EPG encoding on the Gnus Cloud IMAP server. Defaults to
7606         EPG if that's available, Base64+gzip otherwise.
7607         (gnus-cloud-interactive): New defcustom to make Gnus Cloud operations
7608         interactive, defaults to enabled.
7609         (gnus-cloud-group-name): New variable for the Gnus Cloud group name.
7610         (gnus-cloud-make-chunk): Tag with "Gnus-Cloud-Version" instead of just
7611         "Version".
7612         (gnus-cloud-insert-data): Simplify and support :newsrc-data entries.
7613         (gnus-cloud-encode-data, gnus-cloud-decode-data): Support various
7614         storage methods as per gnus-cloud-storage-method.
7615         (gnus-cloud-parse-chunk): Look for "Gnus-Cloud-Version" marker.
7616         (gnus-cloud-parse-version-1): Fix parsing loop bug. Handle :newsrc-data
7617         entries.
7618         (gnus-cloud-update-all): Handle :newsrc-data entries and dispatch to
7619         file and data handlers.
7620         (gnus-cloud-update-newsrc-data): New function to handle :newrsc-data
7621         entries.
7622         (gnus-cloud-update-file): Rework to support gnus-cloud-interactive and
7623         be more careful.
7624         (gnus-cloud-delete-file): Remove; merged into gnus-cloud-update-file.
7625         (gnus-cloud-file-covered-p, gnus-cloud-all-files)
7626         (gnus-cloud-files-to-upload, gnus-cloud-ensure-cloud-group)
7627         (gnus-cloud-add-timestamps, gnus-cloud-available-chunks)
7628         (gnus-cloud-prune-old-chunks): Fix indentation.
7629         (gnus-cloud-timestamp): New function to make a standard Gnus Cloud
7630         timestamp.
7631         (gnus-cloud-file-new-p): Use it.
7632         (gnus-cloud-upload-all-data): Add interactive convenience function to
7633         upload all data.
7634         (gnus-cloud-upload-data): Make interactive; collect files and newsrc
7635         data separately; refresh Gnus Cloud group after insert.
7636         (gnus-cloud-download-all-data): Add interactive convenience function to
7637         download all data.
7638         (gnus-cloud-download-data): Rework to support "Gnus-Cloud-Version"
7639         marker and different storage methods.
7640         (gnus-cloud-host-server-p): New function to check if a server is the
7641         Gnus Cloud host.
7642         (gnus-cloud-collect-full-newsrc): Tag entries with :newsrc-data.
7643         (gnus-cloud-host-acceptable-method-p): New function so
7644         other code can check if a server method can host the Gnus cloud.
7645         (gnus-cloud-storage-method): Use 'radio instead of 'choice for better UI.
7646         (gnus-cloud-method): Make this a defcustom and note how to set it.
7648         * lisp/gnus/gnus-group.el (gnus-group-cloud-map): Add Gnus Cloud autoloaded
7649         keybindings under the `~' prefix.
7651         * lisp/gnus/gnus-srvr.el (gnus-server-mode-map, gnus-server-make-menu-bar)
7652         (gnus-server-cloud, gnus-server-cloud-host)
7653         (gnus-server-font-lock-keywords, gnus-server-insert-server-line)
7654         (gnus-server-toggle-cloud-method-server): Support Gnus Cloud
7655         synchronized servers and synchronization host server toggling (`i' and
7656         `I') and visual display.
7657         (gnus-server-toggle-cloud-method-server): Use
7658         gnus-cloud-host-acceptable-method-p.
7659         (gnus-server-toggle-cloud-method-server): Use custom-set-variables to
7660         set the gnus-cloud-method. Ask the user if it's OK to upload the data
7661         right now.
7663         * doc/misc/gnus.texi: Document Gnus Cloud package.
7665 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7667         Remove CHECK_FRAME_FONT cruft from bytecode.c
7669         * src/bytecode.c [CHECK_FRAME_FONT]: Do not include frame.h, xterm.h.
7670         Remove some old ‘#if 0’ code.
7672 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7674         Work around GCC bug 54561 in a better way
7676         The new approach is less selective, but also less intrusive on C code.
7677         * src/bytecode.c, src/image.c, src/keyboard.c: Ignore -Wclobbered.
7678         * src/conf_post.h (NONVOLATILE): Remove.  All uses removed.
7680 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7682         Fix port to glibc 2.24 (pre-release) + ppc64
7684         * src/callproc.c (child_setup): Use emacs_exec_file
7685         so that ASLR is enabled in the child process.
7686         * src/emacs.c: Move some personality details into sys/sysdep.c.
7687         Do not include <sys/personality.h>.
7688         (main): Disable ASLR earlier, so that we don’t chdir twice.
7689         * src/lisp.h (disable_address_randomization): New decl.
7690         * src/sysdep.c (disable_address_randomization)
7691         [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]: Move personality details
7692         here from emacs.c.
7693         (emacs_exec_file): New function.
7695 2016-07-19  Alan Third  <alan@idiocy.org>
7697         Prevent bar cursor overwriting next glyph (bug#16856)
7699         * src/nsterm.m (ns_draw_window_cursor): Test glyph width vs cursor width
7700         before setting final size.
7702 2016-07-19  Eli Zaretskii  <eliz@gnu.org>
7704         Fix 'transpose-regions' when LEAVE-MARKERS arg is non-nil
7706         * src/insdel.c (adjust_markers_bytepos): New function.
7707         * src/lisp.h (adjust_markers_bytepos): Add prototype.
7708         * src/insdel.c (replace_range, replace_range_2):
7709         * src/editfns.c (Ftranspose_regions): Call
7710         adjust_markers_bytepos.  (Bug#5131)
7712         * test/src/editfns-tests.el (transpose-test-reverse-word)
7713         (transpose-test-get-byte-positions): New functions.
7714         (transpose-ascii-regions-test)
7715         (transpose-nonascii-regions-test-1)
7716         (transpose-nonascii-regions-test-2): New tests.
7718 2016-07-19  Katsumi Yamaoka  <yamaoka@jpl.org>
7720         Make gif animation work (bug#24004)
7722         * lisp/image.el (image-animate-timeout): Fix the logic that tests if
7723         an animation is too big (bug#24004).
7725 2016-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
7727         * lisp/simple.el (undo-amalgamate-change-group): New function
7729         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Use it.
7730         (viper-set-complex-command-for-undo): Save current state with
7731         prepare-change-group.
7732         * lisp/emulation/viper-init.el (viper-undo-needs-adjustment)
7733         (viper-buffer-undo-list-mark): Remove.
7735 2016-07-18  Noam Postavsky  <npostavs@gmail.com>
7737         Keep w32 environment settings internal only
7739         * src/emacs.c (main) [WINDOWSNT]: Move init_environment calls after the
7740         set_initial_environment call.  This prevents Emacs' modifications to the
7741         environment from contaminating Vprocess_environment and
7742         Vinitial_environment (Bug #10980).
7743         * src/callproc.c (getenv_internal) [WINDOWSNT]: Consult Emacs' internal
7744         environment in as a fallback to Vprocess_environment.
7745         * test/src/callproc-tests.el (initial-environment-preserved): New Test.
7747 2016-07-18  Nicolas Petton  <nicolas@petton.fr>
7749         Better documentation for cl-reduce (bug#24014)
7751         * lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what reducing means.
7753 2016-07-17  Alan Third  <alan@idiocy.org>
7755         Remove separate pool for popup dialogs (bug#23856)
7757         * src/nsmenu.m (pop_down_menu, ns_popup_dialog): Remove references to
7758         autorelease pool and Popdown_data struct.
7760 2016-07-17  Mark Oteiza  <mvoteiza@udel.edu>
7762         Use eldoc-documentation-functions
7764         * lisp/hexl.el (hexl-mode):
7765         * lisp/ielm.el (inferior-emacs-lisp-mode):
7766         * lisp/progmodes/cfengine.el (cfengine3-mode):
7767         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
7768         * lisp/progmodes/octave.el (octave-mode, inferior-octave-mode):
7769         * lisp/progmodes/python.el (python-mode):
7770         * lisp/simple.el (read--expression): Add buffer-locally to hook
7771         eldoc-documentation-functions.
7773 2016-07-16  Noam Postavsky  <npostavs@gmail.com>
7775         Optimize ucs-normalize.el compilation
7777         * lisp/international/ucs-normalize.el (ucs-normalize-combining-chars-regexp):
7778         (quick-check-list-to-regexp): Use regexp-opt-charset instead of
7779         regexp-opt.
7780         * lisp/international/ucs-normalize.el (quick-check-list): Reuse a single
7781         temp buffer for the whole loop.
7783 2016-07-16  Noam Postavsky  <npostavs@gmail.com>
7785         Add tests for ucs-normalize.el
7787         Some tests are marked as expected to fail.
7789         * test/lisp/international/ucs-normalize-tests.el: New tests.
7790         * admin/unidata/NormalizationTest.txt: Add data for tests.
7791         * admin/unidata/README: Add URL for NormalizationTest.txt.
7792         * admin/notes/unicode: Add note about running (and updating the data
7793         for) the new tests.  Remove note about normalization being unsupported.
7795 2016-07-16  Alan Third  <alan@idiocy.org>
7797         Fix cursor display (bug#23993)
7799         * src/xdisp.c (get_phys_cursor_geometry): Fix invalid C operator.
7801 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7803         Stop worrying about Alliant in bytecode.c
7805         * src/bytecode.c (PUSH): Remove workaround for long-obsolete compiler.
7807 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7809         Remove BYTE_MAINTAIN_TOP
7811         It is no longer needed now that we assume GC_MARK_STACK ==
7812         GC_MAKE_GCPROS_NOOPS.
7813         * src/bytecode.c (BYTE_MAINTAIN_TOP): Remove.
7814         All uses removed, and code simplified accordingly.
7815         (BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Remove, since they
7816         are always no-ops now.  All uses removed.
7817         (MAYBE_GC): Remove.  All uses replaced by maybe_gc,
7818         since it is now equivalent.
7820 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7822         Remove now-inaccurate bytecode comments
7824         * src/bytecode.c: Remove comments that are no longer accurate.
7825         Most of these are actually old ChangeLog entries.
7827 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7829         Port to glibc 2.24 (pre-release) + ppc64
7831         Inspired by a suggestion by Florian Weimer in:
7832         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
7833         * configure.ac (HAVE_PERSONALITY_ADDR_NO_RANDOMIZE):
7834         Rename from HAVE_PERSONALITY_LINUX32, and check for
7835         ADDR_NO_RANDOMIZE (the crucial thing) instead of for LINUX32.
7836         All uses changed.
7837         * src/emacs.c (main) [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]:
7838         Use ADDR_NO_RANDOMIZE from personality.h rather than inventing the
7839         flag ourselves.  Just set that flag, rather than also setting the
7840         persona.  When doing it, avoid functions like putenv that may
7841         allocate memory.
7843 2016-07-14  Mark Oteiza  <mvoteiza@udel.edu>
7845         Revert "Add a couple cells to lisp-prettify-symbols-alist"
7847         This reverts commit bdda4855c635ecf4135e23321bdba023e9ae65c9.
7849 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7851         * lisp/simple.el (shell-command): Add save-match-data comment
7853 2016-07-14  Alan Mackenzie  <acm@muc.de>
7855         CC Mode: correct incorrect invocation of parse-partial-sexp.
7857         Fixes bug #23944.
7859         * lisp/progmodes/cc-engine.el (c-literal-limits): make the sixth argument of
7860         an invocation of parse-partial-sexp 'syntax-table, not the fourth.
7862 2016-07-14  Andreas Schwab  <schwab@suse.de>
7864         Fix configure summary for hybrid malloc configurations
7866         * configure.ac ("$hybrid_malloc" = yes): Set GNU_MALLOC to no,
7867         parenthesize value of GNU_MALLOC_reason.
7869 2016-07-14  Stephen Berman  <stephen.berman@gmx.net>
7871         Fix delete-duplicate-lines
7873         * lisp/sort.el (delete-duplicate-lines): Delete duplicate
7874         first line when operating backward (bug#23863).
7876 2016-07-14  Andreas Schwab  <schwab@suse.de>
7878         Remove unused SHEAP_OBJ
7880         * Makefile.in (base_obj): Remove $(SHEAP_OBJ).
7882 2016-07-13  Katsumi Yamaoka  <yamaoka@jpl.org>
7884         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
7885         Use shr-image-map instead of shr-map (bug#23964).
7887 2016-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7889         * lisp/mouse.el (mouse): Consolidate group definition here
7891         * lisp/cus-edit.el (mouse): Remove both group definitions.
7893 2016-07-13  Chris Feng  <chris.w.feng@gmail.com>
7895         Include versioned preloaded libraries in `package--builtin-versions'
7897         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Do not
7898         exclude preloaded libraries or remove entries generated for them.
7899         (autoload-generate-file-autoloads): Do not generate autoload
7900         statements for preloaded libraries.
7902 2016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
7904         Omit unnecessary #includes from xwidget.c
7906         * src/xwidget.c: Remove #include directives that are not needed.
7907         Also, don’t conditionalize #includes on HAVE_X_WINDOWS, since this
7908         file is compiled only if the X interface is available.
7910 2016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
7912         Port xwidget.c to GCC 6 with --enable-gcc-warnings
7914         * src/xwidget.c (x_draw_xwidget_glyph_string, xwidget_end_redisplay):
7915         Adjust to pacify GCC.  Add a couple of FIXME comments, suggesting
7916         possible bugs found by GCC.
7918 2016-07-12  Tino Calancha  <tino.calancha@gmail.com>
7920         Escape meta chars in commands processed by shell
7922         * lisp/progmodes/grep.el (grep-compute-defaults): Quote braces
7923         in all commands to be passed to a shell (Bug#23959).
7925 2016-07-12  John Wiegley  <johnw@newartisans.com>
7927         Revert "Cleanup tooltips"
7929         This reverts commit 20038f8ab75dd1551412a43cd58520c483c22921.
7931         I am reverting this change because it was applied without prior discussion
7932         on emacs-devel, and has been found to break the NS port.  It needs more
7933         testing and review before it should be applied here.
7935 2016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7937         * lisp/emacs-lisp/cl-macs.el (cl--prog): New function
7939         (cl-prog, cl-prog*): New macros.
7941 2016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7943         * cl-generic.el (cl-defmethod): Make docstring dynamic
7945         * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic.
7946         (cl--generic-make-defmethod-docstring): New function for that.
7947         (cl-defmethod, cl-generic-generalizers): Tweak docstrings accordingly.
7948         (cl-generic-define-method, cl--generic-describe): Change `load-history'
7949         format of cl-defmethods, so as not to confused methods with equal
7950         specializers but different qualifiers.
7951         * lisp/emacs-lisp/eieio-core.el (cl-generic-generalizers): Provide docstrings.
7953 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
7955         Don't install keyboard hook when debugged on MS-Windows
7957         * src/w32fns.c (setup_w32_kbdhook): Don't install the keyboard
7958         hook if we are being debugged.  This avoids hosing the debugger,
7959         because the hook is global, and is called in the context of the
7960         thread which installed it, and that thread is stopped when GDB has
7961         control.  Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
7963 2016-07-12  Alan Mackenzie  <acm@muc.de>
7965         Amend CC Mode to handle big C++ raw strings correctly.
7967         Problems were caused by such a string spanning jit-lock chunks, and by a flaw
7968         in the +-500 bytes boundaries imposed for macros.
7970         * lisp/progmodes/cc-mode.el (c-extend-region-for-CPP): Check the +-500 byte
7971         macro boundaries here.
7972         (c-extend-font-lock-region-for-macros): Remove the check on the +-500 byte
7973         lower boundary.  Fix the check on the upper boundary.
7975         * lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Handle the starting
7976         point already being within a raw string.
7978         * lisp/progmodes/cc-engine.el (c-raw-string-pos)
7979         (c-depropertize-raw-strings-in-region, c-after-change-re-mark-raw-strings):
7980         Modify regexp element "\\{,16\\}" to "\\{0,16\\}" for greater compatibility
7981         with other Emacsen.
7983 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
7985         * lisp/mouse.el (mouse-select-region-move-to-beginning): Add :group.
7987 2016-07-11  Dmitry Antipov  <dmantipov@yandex.ru>
7989         Cleanup tooltips
7991         * src/dispextern.h (toplevel): Remove 'tip_frame' and 'tip_window' decls.
7992         * src/frame.h (struct frame): New bitfield to indicate tooltip frame.
7993         (FRAME_TOOLTIP_P): New macro.
7994         * src/frame.c (make_frame): Mark new frame as regular frame by default.
7995         (Fframe_list, delete_frame): Redesign to use FRAME_TOOLTIP_P.
7996         (syms_of_frame): Don't DEFSYM 'Qtooltip' but use 'Qtooltip_timer'
7997         and 'Qtooltip_parameters' instead.
7998         * src/gtkutil.h (toplevel): Add 'xg_hide_tip' decl.
7999         * src/gtkutil.c (xg_hide_tip): New function.
8000         (xg_hide_tooltip): Adjust to cancel GTK event loop timeout if needed.
8001         * src/menu.c (Fx_popup_menu): Adjust call to Fx_hide_tip.
8002         * src/nsfns.c (toplevel): Remove 'tip_frame' leftover.
8003         * src/w32fns.c (unwind_create_tip_frame): Remove.
8004         (w32_display_monitor_attributes_list)
8005         (w32_display_monitor_attributes_list_fallback): Use FRAME_TOOLTIP_P.
8006         (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
8007         (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
8008         as a tooltip frame and record it using appropriate display info.
8009         (x_hide_tooltip): Add frame arg.
8010         (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
8011         base frame parameters, store tooltip hide timer among tooltip frame
8012         parameters.
8013         (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
8014         (syms_of_w32fns): Don't DEFSYM 'Qtip_frame', don't initialize
8015         and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
8016         * src/w32term.c (w32_read_socket): Extract tooltip window id from
8017         per-display data.  Use FRAME_TOOLTIP_P where appropriate.
8018         (x_new_font): Use FRAME_TOOLTIP_P.
8019         (x_free_frame_resources): Reset pointer to tooltip frame.
8020         * src/w32term.h (struct w32_display_info): New member 'w32_tooltip_frame'.
8021         * src/xdisp.c (init_iterator, x_consider_frame_title, prepare_menu_bars):
8022         Use FRAME_TOOLTIP_P.
8023         * src/xfns.c (x_make_monitor_attribute_list)
8024         (Fx_display_monitor_attributes_list): Likewise.
8025         (unwind_create_tip_frame): Remove.
8026         (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
8027         (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
8028         as a tooltip frame and record it using appropriate display info.
8029         (x_hide_tooltip): Add frame arg.
8030         (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
8031         base frame parameters, store tooltip hide timer among tooltip frame
8032         parameters.  To hide GTK system tooltip, use timeout hooked into GTK
8033         event loop.
8034         (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
8035         (syms_of_xfns): Don't DEFSYM 'Qtip_frame', don't initialize
8036         and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
8037         * src/xterm.c (handle_one_xevent): Extract tooltip window id from
8038         per-display data.  Use FRAME_TOOLTIP_P where appropriate.
8039         (x_new_font, x_set_window_size): Use FRAME_TOOLTIP_P.
8040         (x_free_frame_resources): Reset pointer to tooltip frame.
8041         * src/xterm.h (struct x_display_info): New member 'x_tooltip_frame'.
8042         (struct x_output) [USE_GTK_TOOLTIP]: New member 'ttip_timeout'.
8044 2016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8046         * src/fns.c (syms_of_fns): Leave `features' lexically scoped
8048 2016-07-11  Mario Lang  <mlang@delysid.org>
8050         Test mapcan
8052         * test/src/fns-tests.el (fns-tests-mapcan): New test.
8054 2016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8056         Prevent to apply funcall on t
8058         * lisp/vc/ediff-util.el (ediff-really-quit): Ignore the global part of
8059         'ediff-after-quit-hook-internal' hook (Bug#23933).
8061 2016-07-11  Tino Calancha  <tino.calancha@gmail.com>
8063         Ignore angle mode while simplifying units
8065         * lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
8066         Ignore value of 'calc-angle-mode' when 'math-simplifying-units'
8067         is non-nil (Bug#23889).
8068         * lisp/calc/calc-math.el (math-to-radians, math-from-radians)
8069         (math-from-radians-2, math-to-radians-2): Idem.
8071 2016-07-11  Eli Zaretskii  <eliz@gnu.org>
8073         Fix display of composed characters
8075         * src/xdisp.c (x_produce_glyphs): Fix off-by-one error in
8076         iteration through composition glyphs.  (Bug#23938)
8078 2016-07-11  Paul Eggert  <eggert@cs.ucla.edu>
8080         Fix composition bug caused by off-by-1 typo
8082         * src/xdisp.c (x_produce_glyphs): Fix off-by-one typo when
8083         computing composition glyph (Bug#23938).
8085 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8087         Dired always read file system
8089         * dired.el (dired-always-read-filesystem): Add new option.
8090         (dired-mark-files-containing-regexp): Use it (Bug#22694).
8091         * doc/emacs/dired.texi: Mention it in the manual.
8092         * test/lisp/dired-tests.el (dired-test-bug22694): Add test.
8093         ;* etc/NEWS: Add entry for this change.
8095 2016-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8097         * src/macfont.m (mac_font_shape): Make sure that total_advance is increasing.
8099 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8101         Avoid 'unused var' 'not left unused var' warnings
8103         * lisp/ibuffer.el (ibuffer-locked-buffer-p): Remove unused var 'char'.
8104         Rename used var '_buffer' to 'cbuffer'.
8106         * lisp/ibuf-ext.el (ibuffer-unmark-all): Rename used var '_mark'
8107         to cmark'.
8109 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8111         * lisp/simple.el (shell-command, shell-command-on-region): Fix doc strings
8113 2016-07-10  Michael Albinus  <michael.albinus@gmx.de>
8115         Add a note how to use `tramp-own-remote-path'
8117         * doc/misc/tramp.texi (Inline methods, External methods)
8118         (Remote shell setup, Android shell setup)
8119         (Frequently Asked Questions, Frequently Asked Questions):
8120         Use @command and @samp consequently.
8121         (Remote programs): The remote shell must support the -l
8122         argument, in order to use `tramp-own-remote-path'.  (Bug#23914)
8124 2016-07-10  Alan Third  <alan@idiocy.org>
8126         Remove App Nap setting from Info.plist (bug#22993)
8128         * nextstep/templates/Info.plist.in: Remove LSAppNapIsDisabled key since
8129         it doesn't actually disable app nap.
8131 2016-07-09  Mario Lang  <mlang@delysid.org>
8133         An efficient built-in mapcan
8135         A built-in version of `mapcan' avoids consing up (and GC'ing) the
8136         intermediate list.
8138         * src/fns.c (Fmapcan): New built-in.
8139         (syms_of_fns): Define.
8141         * lisp/emacs-lisp/cl.el (mapcan): Remove defalias.
8143         * lisp/emacs-lisp/cl-extra.el (cl-mapcan): Use built-in `mapcan'
8144         if only one sequence is provided.
8146         * lisp/progmodes/hideif.el (hif-delimit):
8147         * lisp/dired-aux.el (dired-do-find-regexp):
8148         * lisp/woman.el (woman-parse-colon-path): Use `mapcan' instead of
8149         `cl-mapcan'.
8151         * lisp/woman.el (eval-when-compile): Require 'cl-lib only when
8152         compiling.
8154         * lisp/mouse.el (mouse-buffer-menu-map):
8155         * lisp/net/pop3.el (pop3-uidl-dele):
8156         * lisp/progmodes/gud.el (gud-jdb-build-source-files-list):
8157         * lisp/cedet/semantic/db-find.el (semanticdb-fast-strip-find-results):
8158         * lisp/cedet/semantic/symref/grep.el (semantic-symref-derive-find-filepatterns):
8159         * lisp/gnus/nnmail.el (nnmail-split-it):
8160         * lisp/gnus/gnus-sum.el (gnus-articles-in-thread):
8161         * lisp/gnus/gnus-registry.el (gnus-registry-sort-addresses):
8162         * lisp/gnus/gnus-util.el (gnus-mapcar): Use `mapcan'.
8164 2016-07-09  Tino Calancha  <tino.calancha@gmail.com>
8166         Detect aliases to built-in functions
8168         * lisp/help-fns.el (describe-function-1): Check for aliases
8169         defined with (defalias alias (symbol-function built-in)) (Bug#23887).
8171         * test/lisp/help-fns-tests.el (help-fns-test-bug23887): Untag as
8172         failing this test.
8174 2016-07-09  Michael Albinus  <michael.albinus@gmx.de>
8176         Avoid recursive detection of remote uid and gid in tramp-gvfs.el
8178         * lisp/net/tramp-gvfs.el (tramp-gvfs-get-remote-uid-gid-in-progress):
8179         New variable.
8180         (tramp-gvfs-maybe-open-connection): Use it.
8182         * test/lisp/net/tramp-tests.el (tramp-test18-file-attributes):
8183         Reorder test.
8185 2016-07-09  Jürgen Hötzel  <juergen@archlinux.org>
8187         Wrap around error in coreutil's ls
8189         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Add switch
8190         "--quoting-style=literal" if remote host supports quoting style.
8191         Recent versions of coreutils changed default quoting style to
8192         "--quoting=shell-escape".
8194 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
8196         Minor tweaks of copying text properties when padding strings
8198         * src/editfns.c (styled_format): Don't include padding on the left
8199         in the properties at the beginning of the string.  (Bug#23897)
8201         * test/src/editfns-tests.el (format-properties): Add tests for
8202         faces when the string is padded on the left or on the right.
8204 2016-07-08  Mario Lang  <mlang@delysid.org>
8206         No need to require the same feature twice.
8208         * lisp/dired-aux.el (require 'cl-lib): Remove.
8210 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8212         Turn on lexical binding
8214         * lisp/net/secrets.el (secrets-collection-handler): Use cl-pushnew.
8215         (secrets-search-items, secrets-create-item): Use append.
8216         (secrets-show-secrets): Remove unused binding.
8217         (secrets-expand-item, secrets-tree-widget-after-toggle-function):
8218         Ignore unused arguments.
8220 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8222         Derive secrets-mode from special-mode
8224         * lisp/net/secrets.el: Remove top-level secrets-mode hack.
8225         (secrets-mode-map): New variable.  Add key bindings to n and p for
8226         navigating lines.
8227         (secrets-mode): Derive from special-mode.  Remove keymap code and
8228         initialization code.  Do not record undo information.  Make
8229         secrets-show-collections the local revert-buffer-function.
8230         (secrets-show-collections): Change signature to satisfy revert-buffer.
8232 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8234         Add a couple cells to lisp-prettify-symbols-alist
8236         * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist): Add
8237         "sqrt" and "not".
8239 2016-07-08  Michael Albinus  <michael.albinus@gmx.de>
8241         Detect remote uid and gid in tramp-gvfs.el
8243         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
8244         (tramp-gvfs-handler-mounted-unmounted)
8245         (tramp-gvfs-connection-mounted-p):
8246         Make "default-location" a connection property.
8247         (tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid): New defuns.
8248         (tramp-gvfs-maybe-open-connection): Use them.
8250 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
8252         Yet another fix for copying properties by 'format'
8254         * src/textprop.c (extend_property_ranges): Accept an additional
8255         argument OLD_END, and only extend the end of a property range if
8256         its original end is at OLD_END; all the other ranges are left
8257         intact.  (Bug#23897)
8258         * src/editfns.c (styled_format): Pass the original length of the
8259         string to 'extend_property_ranges'.
8260         * src/intervals.h (extend_property_ranges): Adjust prototype.
8262         * test/src/editfns-tests.el (format-properties): Add tests for
8263         bug#23897.
8265 2016-07-08  Stephen Berman  <stephen.berman@gmx.net>
8267         Allow selecting region with mouse to move point to beginning
8269         * etc/NEWS: Mention new user option
8270         `mouse-select-region-move-to-beginning'.
8272         * doc/emacs/frames.texi (Mouse Commands): Add cross-reference
8273         to the following.
8274         (Word and Line Mouse): Describe how double-clicking mouse-1 to
8275         activate region and `mouse-select-region-move-to-beginning'
8276         affect point.
8278         * lisp/mouse.el (mouse-select-region-move-to-beginning): New defcustom.
8279         (mouse-set-point): Use it.  (Bug#23478)
8281 2016-07-08  Stephen Berman  <stephen.berman@gmx.net>
8283         Fix menu bar breakage
8285         * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Use backquoting
8286         to prevent void variable errors, and fix typo (bug#23918).
8288 2016-07-08  Tino Calancha  <tino.calancha@gmail.com>
8290         Copy buffer names to kill ring
8292         * ibuf-ext.el (ibuffer-copy-buffername-as-kill): New command.
8293         * lisp/ibuffer (ibuffer-mode-map): Bound it to 'B'.
8294         ;* etc/NEWS: Add entry for this new feature.
8296 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8298         Remove just input mark
8300         * lisp/ibuffer.el (ibuffer-unmark-all): When MARK is not ?\r remove
8301         just MARK.
8303 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8305         Ibuffer change marks
8307         * lisp/ibuffer.el (ibuffer-change-marks): New command.
8308         (ibuffer-mode-map): Bind it to '* c'.
8309         (ibuffer-mode-groups-popup): Update menus.
8310         (ibuffer-mode): Update mode doc.
8312 2016-07-07  Alan Third  <alan@idiocy.org>
8314         Prevent NS event loop being re-entered (bug#11049)
8316         * nsterm.m (ns_read_socket, ns_select): Return -1 if already in event
8317         loop instead of aborting.
8319 2016-07-07  Alan Third  <alan@idiocy.org>
8321         Fix some deprecated functions
8323         * src/nsterm.m (firstRectForCharacterRange): In OS X >10.6 replace
8324         convertBaseToScreen with convertRectToScreen.
8325         * src/nsmenu.m (ns_update_menubar): Remove attachedMenu, deprecated in
8326         OS X 10.2, and always seems to return nil.
8328 2016-07-07  Aaron Jensen  <aaronjensen@gmail.com>  (tiny change)
8330         Disable App Nap (bug#22993)
8332         * nextstep/templates/Info.plist.in: Insert AppNap disable code.
8334 2016-07-07  Michael Albinus  <michael.albinus@gmx.de>
8336         Fix an error in Tramp for rsync
8338         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
8339         Make it work for "rsync".
8340         (tramp-make-copy-program-file-name): Apply `directory-file-name'.
8342 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8344         Ibuffer: Mark locked buffers
8346         * lisp/ibuf-ext.el (ibuffer-locked-buffer-p): New defun.
8347         (ibuffer-mark-by-locked): New command.
8348         (ibuffer-mode-map): Bind it to '% L'; update menus.
8349         (ibuffer-mode): Update mode doc.
8350         ;* etc/NEWS: Add NEWS entry for these changes and previous two commits.
8352 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8354         * lisp/ibuffer.el: Add face for locked buffers
8356         * lisp/ibuffer.el: Add mark for locked buffers
8358         ;* etc/NEWS (Ibuffer): Update entry according with last commit
8360 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8362         Remove duplicate binding
8364         * lisp/ibuffer.el (ibuffer-mode-map): 'ibuffer-mark-by-content-regexp'
8365         just bound to '% g'.
8366         As suggested in:
8367         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00165.html
8369 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8371         Ibuffer: Drop needless binding
8373         * lisp/ibuffer.el (ibuffer-mark-interactive): 'inhibit-read-only'
8374         already bound to 't' inside 'ibuffer-set-mark'.
8376 2016-07-07  Phillip Lord  <phillip.lord@russet.org.uk>
8378         Run tests from non-byte compiled files
8380         * test/Makefile.in: Eval non-byte-compiled files for tests.
8382 2016-07-06  Mark Oteiza  <mvoteiza@udel.edu>
8384         Replace eldoc-documentation-function with a hook
8386         * lisp/emacs-lisp/eldoc.el (eldoc-documentation-functions): New hook.
8387         (eldoc-documentation-function): Make into obsolete alias.
8388         (eldoc-echo-area-use-multiline-p, eldoc-highlight-function-argument):
8389         (eldoc-argument-case, global-eldoc-mode): Update docstrings.
8390         (eldoc-print-current-symbol-info): Use run-hook-with-args-until-success
8391         on eldoc-documentation-functions.
8392         (eldoc-supported-p): New function.
8393         (eldoc-mode, global-eldoc-mode, eldoc-schedule-timer): Use eldoc-supported-p.
8394         * etc/NEWS: Mention eldoc-documentation-functions.
8395         * doc/lispref/modes.texi: Update reference.
8397 2016-07-06  Simen Heggestøyl  <simenheg@gmail.com>
8399         Complete "initial" and "unset" in CSS mode
8401         * lisp/textmodes/css-mode.el (css--complete-property-value): Make
8402         "initial" and "unset" completion candidates for all CSS properties,
8403         just like "inherit".
8405         * test/lisp/textmodes/css-mode-tests.el
8406         (css-test-complete-property-value): Update test to reflect the above
8407         change.
8409 2016-07-06  Michael Albinus  <michael.albinus@gmx.de>
8411         * lisp/net/tramp-gvfs.el (tramp-gvfs-mount-spec): Fix typo.
8413 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
8415         Simplify rfc1345.el a bit
8417         * lisp/leim/quail/rfc1345.el: Omit commented-out codes for ASCII
8418         that would no longer parse.  Replace control characters with
8419         escapes in character constants.  Omit unnecessary \ after ?.
8420         This does not change behavior.
8422 2016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
8424         Prefer 'frame-parameter' where it is expected to be a bit faster
8426         * lisp/international/mule-diag.el (mule-diag):
8427         * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu):
8428         * lisp/mouse.el (mouse-drag-line, font-menu-add-default):
8429         * lisp/scroll-bar.el (toggle-scroll-bar, toggle-horizontal-scroll-bar):
8430         * lisp/faces.el (x-resolve-font-name): Use 'frame-parameter'.
8432 2016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
8434         Reduce consing caused by vertical motion commands
8436         * src/frame.c (Fframe_parameter): Avoid call to Fframe_parameters for the
8437         parameters frequently requested by calls to 'next-line' and 'previous-line'.
8439 2016-07-05  Michael Albinus  <michael.albinus@gmx.de>
8441         Make all Tramp tests pass for "gdrive" method
8443         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
8444         * lisp/net/tramp-compat.el (tramp-compat-copy-directory)
8445         (tramp-compat-delete-directory):
8446         * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
8447         Use `directory-files-no-dot-files-regexp'.
8449         * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
8450         (tramp-gvfs-send-command): Call `tramp-flush-file-property' in
8451         case of problems.
8453         * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
8454         Adapt docstring.
8455         (tramp-test14-delete-directory): Make further tests.
8457 2016-07-05  Eli Zaretskii  <eliz@gnu.org>
8459         Fix redisplay with window-start on continuation lines
8461         * src/xdisp.c (pos_visible_p): Return false if the window starts
8462         after CHARPOS.
8463         (compute_window_start_on_continuation_line): Don't return
8464         window-start position that is after point in the buffer, as the
8465         callers don't expect this to happen, and will generally display an
8466         empty window with the cursor in its middle.  (Bug#23871)
8468 2016-07-05  Tino Calancha  <tino.calancha@gmail.com>
8470         Add :expected-result :failed for unfixed bug test
8472         * test/lisp/help-fns-tests.el (help-fns-test-bug23887):
8474 2016-07-05  Tino Calancha  <tino.calancha@gmail.com>
8476         * test/lisp/help-fns-tests.el: Add several tests for 'describe-function'.
8478 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8480         Don’t create unnecessary marker in ‘delete-trailing-whitespace’
8482         * lisp/simple.el (delete-trailing-whitespace): If END argument is nil,
8483         there is no need for the end-marker to be created.
8485 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8487         Simplify ‘delete-trailing-whitespace’ by not treating \n as whitespace
8489         * lisp/simple.el (delete-trailing-whitespace): Set newline’s character
8490         syntax to non-whitespace so that ‘\s-’ regular expression does not match
8491         it.
8493         This simplifies the loop slightly since a simple ‘\s-+$’ can be used and
8494         as a consequence ‘line-beginning-position’ function does not need to be
8495         called any longer.
8497         Furthermore, when newline has whitespace syntax, ‘\s-$’ regular
8498         expression ends up matching empty lins since ‘\s-’ matches newline
8499         characetr of proceeding line.  This leads to needless loop iterations.
8501         Since previous change to ‘delete-trailing-whitespace’ already introduced
8502         ‘with-syntax-table’, take advantage of it and also overwrite newline’s
8503         character syntax.
8505 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8507         Make ‘delete-trailing-whitespace’ delete spaces after form feed
8509         * lisp/simple.el (delete-trailing-whitespace): Treat form fead as
8510         a non-whitespace character (regradless of whether it’s character syntax
8511         is whitespace) and delete any whitespace following it instead of leaving
8512         lines with form feeds completely unchanged.  I.e. a line like "\f " will
8513         now became "\f".
8515 2016-07-04  Dmitry Antipov  <dmantipov@yandex.ru>
8517         Cleanup XEditRes hack
8519         * configure.ac [USE_X_TOOLKIT]: Define X_TOOLKIT_EDITRES if
8520         _XEditResCheckMessages is declared in X11/Xmu/Editres.h and may be
8521         linked with -lXmu.  This should work with any non-ancient Xmu library.
8522         * xfns.c (toplevel): Remove old cruft.
8523         (x_window) [USE_X_TOOLKIT]: Use X_TOOLKIT_EDITRES.
8524         * xterm.c (toplevel): Remove old cruft.
8525         (handle_one_xevent): Use X_TOOLKIT_EDITRES.
8526         * xterm.h (toplevel): Include X11/Xmu/Editres.h if X_TOOLKIT_EDITRES.
8528 2016-07-04  Michael Albinus  <michael.albinus@gmx.de>
8530         Add Google Drive support to Tramp
8532         * doc/misc/tramp.texi: Add `gdrive' method.
8534         * doc/misc/trampver.texi:
8535         * lisp/net/trampver.el: Change version to "2.3.1-pre".
8537         * etc/NEWS: Add Tramp connection method "gdrive".
8539         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods) <gdrive>: Add.
8540         (tramp-default-user-alist, tramp-default-host-alist): Add rule
8541         for "gdrive".
8542         (tramp-gvfs-file-attributes): Add "name", remove "standard::icon".
8543         (tramp-gvfs-file-attributes-with-gvfs-ls-regexp): Simplify regexp.
8544         (tramp-gvfs-get-directory-attributes): Improve loop.  Use
8545         "standard::display-name" as file name, if available.
8546         (tramp-gvfs-handle-file-name-all-completions): Simplify.
8547         (tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
8548         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
8549         Map between "gdrive" and "google-drive".
8551         * lisp/net/tramp.el (tramp-call-process): Do not signal error.
8553         * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
8554         Do not enable `tramp-message-show-message'.
8555         (tramp-test13-make-directory, tramp-test14-delete-directory):
8556         Do not specify error type.
8558 2016-07-04  Tino Calancha  <tino.calancha@gmail.com>
8560         Calc: Update mode line after change mode
8562         * lisp/calc/calc-ext.el (calc-change-mode): Call 'calc-set-mode-line'.
8564 2016-07-03  Mark Oteiza  <mvoteiza@udel.edu>
8566         * lisp/simple.el (save-mark-and-excursion): Add declare forms.
8568 2016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
8570         Re-fix open-network-stream responsiveness
8572         Problem reported by Christer Ekholm (Bug#23864).
8573         * src/process.c (wait_reading_process_output): Further fix for
8574         typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu when
8575         wait == INFINITY and got_output_end_time is invalid.  See:
8576         http://bugs.gnu.org/23864#20
8578 2016-07-03  Alan Mackenzie  <acm@muc.de>
8580         Remove redundant forms from CC Mode for faster fontification
8582         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove four arms of
8583         the "main" cond form in the function, which have been redundant since the
8584         extraction of c-font-lock-cut-off-declarators from the function on
8585         2016-06-15/16.
8587 2016-07-03  Alan Mackenzie  <acm@muc.de>
8589         Speed up CC Mode fontification with less accurate functions extending region
8591         * lisp/progmodes/cc-fonts.el (c-font-lock-cut-off-declarators)
8592         (c-font-lock-enclosing-decls)
8593         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Replace invocations of
8594         c-beginning-of-decl-1 with less accurate invocations of
8595         c-syntactic-skip-backwards to speed up fontification.
8597 2016-07-03  Tino Calancha  <tino.calancha@gmail.com>
8599         Ibuffer: unmark all buffers without confirmation
8601         * lisp/ibuffer.el (ibuffer-unmark-all-marks): New command (Bug#23680).
8602         (ibuffer-mouse-popup-menu): Use it.
8603         (ibuffer-mode): Update mode doc.
8604         (ibuffer-mode-map): Bind 'ibuffer-unmark-all-marks' to 'U'.
8605         Rebind 'ibuffer-do-replace-regexp' to 'r'.
8607 2016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
8609         Fix open-network-stream responsiveness
8611         Problem reported by Constantin Kulikov (Bug#23684).
8612         * src/process.c (wait_reading_process_output):
8613         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
8614         when wait == INFINITY and got_output_end_time is invalid.
8615         In this case the code should break, not continue.
8617 2016-07-02  Tino Calancha  <tino.calancha@gmail.com>
8619         Ibuffer: Mark buffers by content
8621         * lisp/ibuf-ext.el (ibuffer-mark-by-content-regexp): New command.
8622         (ibuffer-never-search-content-name): New option.
8623         (ibuffer-never-search-content-mode): Idem.
8624         (ibuffer-mark-by-content-regexp): Use them (Bug#23734).
8626         * lisp/ibuffer.el (ibuffer-mode-map): Bind new command to '% c' and '% g'.
8627         (ibuffer-mode): Update mode documentation.
8629 2016-07-02  Tino Calancha  <tino.calancha@gmail.com>
8631         ibuffer-copy-filename-as-kill verbosity increase
8633         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill):
8634         Use shorter name, result, for a local bound var.
8635         Show the string result in the echo area.
8637 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8639         Fix cursor positioning on TTY frames after stretch glyph
8641         * src/term.c (append_glyph, append_composite_glyph)
8642         (append_glyphless_glyph): Set the avoid_cursor_p and multibyte_p
8643         members of the produced 'struct glyph'.  Fixes cursor positioning
8644         on the first character after a stretch glyph produced from
8645         line-prefix, wrap-prefix, etc. on TTY frames.
8647 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8649         Fix vertical-movement in buffers with wrap-prefix
8651         * src/indent.c (Fvertical_motion): Zero the current_y coordinate
8652         whenever we zero the vpos vertical position of the iterator.
8653         * src/xdisp.c (move_it_in_display_line_to): Handle line-prefix and
8654         wrap-prefix regardless of whether the current Y coordinate is
8655         inside the window dimensions.  (Bug#23879)
8657 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8659         Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL
8661         * src/dispextern.h (FACE_FROM_ID_OR_NULL): Renamed from
8662         FACE_OPT_FROM_ID; all callers changed.
8663         * src/xdisp.c (extend_face_to_end_of_line): Call FACE_FROM_ID, not
8664         FACE_FROM_ID_OR_NULL, as the resulting face is immediately
8665         dereferenced.
8666         (fill_gstring_glyph_string): Call FACE_FROM_ID, not
8667         FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
8668         when the glyph string is drawn.
8669         (BUILD_COMPOSITE_GLYPH_STRING): Call FACE_FROM_ID, not
8670         FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
8671         in fill_composite_glyph_string.
8672         (calc_line_height_property): Call FACE_FROM_ID_OR_NULL rather that
8673         FACE_FROM_ID, since the function and its caller can cope with that
8674         situation.  Conflate 3 tests of missing face or font into just
8675         one.
8676         * src/xfaces.c (Fx_list_fonts, Fface_font, lookup_face): Call
8677         FACE_FROM_ID_OR_NULL rather that FACE_FROM_ID, since these
8678         functions can cope with that situation.
8679         (lookup_derived_face): Don't call FACE_FROM_ID if the result will
8680         not be used.
8681         * src/w32console.c (w32_face_attributes): Remove redundant 'eassert'.
8683 2016-07-01  Mark Oteiza  <mvoteiza@udel.edu>
8685         * lisp/gnus/gnus-art.el (gnus-article-send-map): Remove extra quote.
8687 2016-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8689         * lisp/auth-source.el (auth-source--symbol-keyword): Fix namespace
8691         i.e. rename from auto-source--symbol-keyword.
8693 2016-07-01  Dmitry Antipov  <dmantipov@yandex.ru>
8695         Avoid yet another possible NULL pointer dereference found by GCC 6.1.1
8697         * lwlib/lwlib.c (lw_get_all_values): Always check the value returned by
8698         get_widget_info.
8700 2016-06-30  Alan Mackenzie  <acm@muc.de>
8702         CC Mode: truncate the semi-nonlit cache when applying syntax-table to a quote
8704         This applies to applying or removing syntax-table text properties in raw
8705         strings which affect the stringiness of a piece of text.  This fixes the
8706         bug
8707         reported in
8708         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00695.html.
8710         * lisp/progmodes/cc-engine.el (c-truncate-semi-nonlit-pos-cache): new
8711         defsubst.
8712         (c-invalidate-state-cache-1): Call new function in place of inline
8713         manipulation.
8714         (c-depropertize-raw-string, c-propertize-raw-string-opener): truncate the
8715         semi-nonlit cache when pertinent syntax-table text properties get applied to
8716         the text.
8718 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8720         Minor tweaks to openp
8722         * src/lread.c (openp): Move invariant code out of the loop
8723         and thus avoid redundant calls to memcpy.  Adjust comments.
8725 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8727         Simplify handling of frame parameters
8729         * src/frame.c (x_set_frame_parameters): Avoid extra loop processing
8730         foreground color, background color and font parameters.  Adjust
8731         comments.
8733 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8735         Cleanup around mature character manipulation functions
8737         * lisp/international/mule-diag.el (decode-codepage-char): Remove.
8739         * lisp/ldefs-boot.el (toplevel): Adjust accordingly.
8741         * lisp/subr.el (toplevel): Do not advertise calling conventions
8742         for 'decode-char' and 'encode-char'.
8744         * src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
8746 2016-06-29  Alan Mackenzie  <acm@muc.de>
8748         Fix C-M-a in a C function finding the start of a macro preceding it.
8750         Also amend some pertinent documentation.  This fixes bug #23818.
8752         * lisp/progmodes/cc-engine.el (c-beginning-of-decl-1): Also check for a
8753         virtual semicolon at a place where we check for other types of statement ends.
8755         * lisp/progmodes/cc-vars.el (c-macro-nacmes-with-semicolon): Remove from the
8756         doc string the bit saying that the variable is a prototype and liable to
8757         change.
8759         * doc/misc/cc-mode.texi (Macros with ;): Enhance, stating that configuring
8760         macros with semicolon can prevent C-M-a missing the beginning of defun.
8762 2016-06-28  Dmitry Antipov  <dmantipov@yandex.ru>
8764         Avoid possible NULL pointer dereference found by GCC 6.1.1
8766         * src/xfns.c (x_get_monitor_attributes_xrandr): Always check
8767         the value returned by XRRGetOutputInfo.
8769 2016-06-28  Tino Calancha  <tino.calancha@gmail.com>
8771         Dired recognize dirs when file size in human units
8773         * lisp/dired.el (dired-re-inode-size): Update 'dired-re-inode-size'
8774         to match when Dired displays the allocated file size column
8775         in human readable units (Bug#22255).
8777 2016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
8779         Fix breakage from previous change
8781         * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
8782         * lisp/vc/log-view.el (log-view-font-lock-keywords): Quote face.
8784 2016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
8786         Fix breakage from previous change.
8788         * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords): Quote face.
8790 2016-06-28  Eli Zaretskii  <eliz@gnu.org>
8792         Add tests for copying properties by 'format'
8794         * test/src/editfns-tests.el (format-properties): New test.
8796 2016-06-28  Eli Zaretskii  <eliz@gnu.org>
8798         Fix copying properties in 'format' when it produces padding
8800         * src/textprop.c (extend_property_ranges): Correct range extension
8801         when the new end is beyond the old end.  (Bug#23859)
8803 2016-06-27  Alan Third  <alan@idiocy.org>
8805         Enable dividers in NS (bug#22973)
8807         src/nsfns.m: Add colour settings functions to ns_frame_park_handlers.
8808         src/nsterm.m (ns_draw_window_divider): ns_focus has to go before the
8809         attempt to set the colour.
8810         src/nsterm.m (ns_draw_vertical_window_border): This had the same bug as
8811         above, although I didn't see any errors.
8813 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8815         Fix the prefix action of shr-copy-url
8817         * lisp/net/shr.el (shr-copy-url): Make the command really copy
8818         the image url if given a prefix.
8820 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8822         New functions svg-text and svg-remove
8824         * doc/lispref/display.texi (SVG Images): Document svg-remove.
8826         * doc/lispref/display.texi (SVG Images): Document svg-text.
8828         * lisp/svg.el (svg-remove): New function.
8829         (svg-text): New function.
8831 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8833         Add new function dom-remove-node
8835         * doc/lispref/text.texi (Document Object Model): Document
8836         dom-remove-node.
8838         * lisp/dom.el (dom-remove-node): New function.
8840 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8842         Add a new function `svg-embed'
8844         * doc/lispref/display.texi (SVG Images): Document `svg-embed'.
8846         * lisp/svg.el (svg-embed): New function.
8847         (svg--image-data): Ditto.
8849 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
8851         * lisp/descr-text.el (describe-char-unicode-data): Fix copy/paste errors.
8853 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
8855         Fix 'move-to-window-line' when EOB is on last screen line
8857         * src/window.c (displayed_window_lines): Fix an off-by-one error
8858         when the bottom of the last display line is exactly at window's
8859         last pixel.  Remove kludgey fix for TTY frames that is no longer
8860         needed.  (Bug#15760)
8861         (Fmove_to_window_line): Doc fix.
8863         * doc/lispref/positions.texi (Screen Lines): Clarify and make more
8864         accurate the documentation of 'move-to-window-line'.
8866 2016-06-27  Alan Mackenzie  <acm@muc.de>
8868         Amend a cache so that typing into C++ raw strings has no undue delay.
8870         Also amend the code so that low-level searches to the end of literals are done
8871         only when these positions get used.
8873         * lisp/progmodes/cc-engine.el (c-crosses-statement-barrier-p): Use the new
8874         c-literal-start instead of c-literal-limit.
8875         (c-state-semi-nonlit-pos-cache): Change the structure of this cache, such that
8876         it stores details of the literal at a point, rather than merely points outside
8877         of literals.
8878         (c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
8879         (c-cache-to-parse-ps-state, c-parse-ps-state-to-cache, c-ps-state-cache-pos)
8880         (c-parse-ps-state-below, c-literal-start): New functions.
8881         (c-state-semi-safe-place): Removed.
8882         (c-in-literal): Use c-state-semi-pp-to-literal, so as not to scan to its end.
8883         (c-literal-limits, c-determine-limit-get-base): consequential amendments.
8884         (c-find-decl-spots, c-before-change-check-<>-operators, c-raw-string-pos)
8885         (c-guess-basic-syntax (CASE 2)): Avoid needless scans to end of literals.
8887         * lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Avoid needless scans
8888         to end of literals.
8890         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Avoid needless scans to end of
8891         literals.
8893         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun)
8894         (c-defun-name, c-declaration-limits): Avoid needless scans to end of literals.
8896 2016-06-26  Dmitry Gutov  <dgutov@yandex.ru>
8898         Also handle escaping when string begins with a quote
8900         * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
8901         Handle quoting of the first character in the string.
8903         * test/lisp/progmodes/ruby-mode-tests.el
8904         (ruby-toggle-string-quotes-quotes-correctly): Update.
8906 2016-06-26  Sriram Thaiyar  <sriram.thaiyar@gmail.com>  (tiny change)
8908         Fix quote escaping in ruby-toggle-string-quotes
8910         * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
8911         Change logic to quote based on the current quote of the string.
8913         * test/lisp/progmodes/ruby-mode-tests.el
8914         (ruby-toggle-string-quotes-quotes-correctly): Add test.
8916 2016-06-26  Noam Postavsky  <npostavs@gmail.com>
8918         Fix test-completion with completion-regexp-list
8920         * src/minibuf.c (Ftest_completion): Handle alist COLLECTION with non-nil
8921         completion-regexp-list (Bug #23533).
8923 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8925         Try other addresses when connecting to multihomed
8927         Problem reported by Juliusz Chroboczek (Bug#17976)
8928         and by Artur Malabarba (Bug#23620).
8929         Patch from a suggestion by Andreas Schwab in:
8930         http://bugs.gnu.org/17976#39
8931         This patch is for non-MS-Windows platforms.
8932         I don't know the situation on MS-Windows.
8933         * src/process.c (connecting_status):
8934         New function, for (connect . ADDRINFOS).
8935         (connect_network_socket, check_for_dns, wait_for_socket_fds)
8936         (wait_while_connecting, wait_reading_process_output, status_notify):
8937         Use it.
8938         (decode_status, Fmake_network_process):
8939         Support (connect . ADDRINFOS) status.
8940         (connect_network_socket) [!WINDOWSNT]:
8941         If the connection failed and there are other addresses to try, do not
8942         signal an error; instead, loop around to try the next address.
8943         (wait_reading_process_output): Advance to the next address
8944         if there are multiple addresses and the first remaining address
8945         failed.
8946         * src/process.h (struct Lisp_Process.status): Adjust comment
8947         to describe (connect . ADDRINFOS).
8949 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8951         Fix GNUC_PREREQ for GCC 2.8.1 etc.
8953         Problem reported by Eli Zaretskii in:
8954         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00608.html
8955         * src/conf_post.h (GNUC_PREREQ): Port to GCC versions like GCC
8956         2.8.1 (1998), which come before GCC 3.0 and which have nonzero
8957         patchlevel numbers.
8959 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
8961         Don't set 'bidi-paragraph-direction' in 'ansi-term'
8963         * lisp/term.el (ansi-term): Remove unnecessary setting of
8964         'bidi-paragraph-direction'.  The underlying problem is solved in
8965         bidi.c by changing the regexps that define the paragraph beginning
8966         and end.  (Bug#20611)
8968 2016-06-26  Michael Albinus  <michael.albinus@gmx.de>
8970         Sync with Tramp 2.3.0
8972         * doc/misc/trampver.texi:
8973         * lisp/net/trampver.el: Change version to "2.3.0".
8975 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8977         Fix GNUC_PREREQ off-by-1 typo
8979         Problem reported by Martin Rudalics in:
8980         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00587.html
8981         * src/conf_post.h (GNUC_PREREQ) [__GNUC_PATCHLEVEL__]:
8982         Fix < vs <= typo.
8984 2016-06-26  Michael Albinus  <michael.albinus@gmx.de>
8986         Fix some oddities in Tramp's rsync and smb methods
8988         * lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-p" and
8989         "-s" arguments.
8990         (tramp-do-copy-or-rename-file-out-of-band):
8991         Call `file-name-directory' also for remote NEWNAME.
8993         * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
8994         Do not skip for tramp-smb.el.  Test als COPY-CONTENTS case.
8995         (tramp-test24-file-name-completion): Improve check for
8996         hostname completion.
8997         (tramp--test-rsync-p): New defun.
8998         (tramp-test31-special-characters)
8999         (tramp-test31-special-characters-with-stat)
9000         (tramp-test31-special-characters-with-perl)
9001         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
9002         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9003         (tramp-test32-utf8-with-ls): Skip for "rsync".
9005         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
9006         Check also for CIFS capabilities.
9008 2016-06-26  Ury Marshak  <ury.marshak@gmail.com>  (tiny change)
9010         Fix FRAME_INTERNAL_BORDER_WIDTH use (Bug#23841)
9012         * src/nsfns.m (x_set_internal_border_width): Replace assignments to
9013         FRAME_INTERNAL_BORDER_WIDTH.
9015 2016-06-25  Leo Liu  <sdl.web@gmail.com>
9017         Deprecations (bug#23850)
9019         * lisp/subr.el (string-to-unibyte, string-as-unibyte,
9020         string-to-multibyte, string-as-multibyte): Make obsolete.
9022 2016-06-25  Tino Calancha  <tino.calancha@gmail.com>
9024         Do not prompt twice to save a buffer
9026         * lisp/hilit-chg.el (highlight-markup-buffers): (Bug#23824).
9028 2016-06-25  Alan Third  <alan@idiocy.org>
9030         Move text line right when in box (bug#23755)
9032         * src/nsterm.m (ns_draw_glyph_string_foreground): Create to take
9033         CHAR_GLYPH specific code and move glyphs right if within a box.
9034         (ns_draw_glyph_string): Move CHAR_GLYPH specific code into above
9035         function.
9037 2016-06-25  Paul Eggert  <eggert@cs.ucla.edu>
9039         Merge from origin/emacs-25
9041         0377fe2 ; Spelling fixes
9042         f253695 Update docs for `customize-mode'
9043         4395aaa Fix documentation of 'assoc-string' and 'compare-strings'
9044         ab0ebb9 ; Only load .elc file in tests.
9045         a98aa02 Error on multibyte characters in HTTP request
9046         ea512a7 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Mask keys th...
9047         8297331 ; Revert "Ensure undo-boundary after insert-file-contents."
9048         dc5e65b Unset GIT_DIR when calling Git commands
9049         6cdd8f7 Ensure undo-boundary after insert-file-contents.
9050         4793f5f Clarify documentation of 'line-spacing' and 'line-height'
9051         5f37572 Fix removal of variables from process-environment
9052         e5e886d * admin/authors.el (authors-ignored-files, authors-valid-file...
9053         db0777b * admin/authors.el (authors-aliases, authors-fixed-case): Add...
9055         # Conflicts:
9056         #       doc/lispref/modes.texi
9057         #       lisp/gnus/mm-decode.el
9059 2016-06-25  Mark Oteiza  <mvoteiza@udel.edu>
9061         Teach net-utils more iproute2 and nl80211 tools
9063         * lisp/net/net-utils.el (iwconfig-program): Add iw(8).
9064         (iwconfig-program-options): Add "dev" argument for iw.  Another useful
9065         option is "phy"; beyond that one needs to know the interface name.
9066         (netstat-program): Add ss(8).
9067         (route-program): Add ip(8).
9068         (route-program-options): Add "route" argument for ip.
9070 2016-06-24  Leo Liu  <sdl.web@gmail.com>
9072         Use use-region-p in prolog.el
9074         * lisp/progmodes/prolog.el (region-exists-p): Remove.
9075         * lisp/progmodes/prolog.el (prolog-edit-menu-runtime,
9076         prolog-edit-menu-insert-move): Use use-region-p.
9078 2016-06-24  Leo Liu  <sdl.web@gmail.com>
9080         Remove compatibility with Emacs 24.3 in octave-mode
9082         * lisp/progmodes/octave.el: Clean up and remove compatibility with
9083         Emacs 24.3.
9085 2016-06-24  Alan Mackenzie  <acm@muc.de>
9087         Ensure hack-local-variables is run in a fundamental mode buffer.
9089         This fixes bug #23827.
9091         * src/buffer.c (set-buffer-major-mode): Run `fundamental-mode' when the buffer
9092         gets set to that mode, so that `run-mode-hooks', and thus
9093         `hack-local-variables' get run.
9095 2016-06-24  Tino Calancha  <tino.calancha@gmail.com>
9097         Fix caller to ediff-setup
9099         * lisp/hilit-chg.el (hilit-chg-get-diff-info): #Bug23820.
9101 2016-06-24  Alan Mackenzie  <acm@muc.de>
9103         Implement ' separators in C++ integer literals.
9105         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): insert
9106         c-before-after-change-digit-quote into the C++ value.
9107         (c-before-font-lock-functions): Insert c-depropertize-new-text into the values
9108         for all languages.  Insert c-before-after-change-digit-quote into the C++
9109         value.
9111         * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Wrap the function in
9112         c-save-buffer-state.
9113         (c-depropertize-new-text, c-before-after-change-digit-quote): New functions.
9115 2016-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9117         Update from gnulib
9119         This incorporates:
9120         2016-06-24 intprops: port better to GCC 7
9121         2016-06-13 xalloc-oversized: port to GCC 7; fewer warnings
9122         * doc/misc/texinfo.tex, lib/xalloc-oversized.h, lib/intprops.h:
9123         Copy from gnulib.
9125 2016-06-24  Martin Rudalics  <rudalics@gmx.at>
9127         Remove two uses of 'min' in Fwindow_text_pixel_size
9129         * src/xdisp.c (Fwindow_text_pixel_size): Don't use 'min' since
9130         it calls move_it_to twice.  Suggested by Eli Zaretskii.
9132 2016-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9134         Clarify intent of FACE_FROM_ID and IMAGE_FROM_ID
9136         * src/dispextern.h (FACE_OPT_FROM_ID): Don’t use FACE_FROM_ID,
9137         since it is intended to be used only when it returns a non-null
9138         pointer, and here the pointer might be null.
9139         (IMAGE_OPT_FROM_ID): Don’t use IMAGE_FROM_ID, for similar reasons.
9141 2016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
9143         Remove some more face aliases obsoleted in 22.1
9145         * lisp/eshell/em-ls.el (eshell-ls-directory-face, eshell-ls-symlink-face,
9146         eshell-ls-executable-face, eshell-ls-readonly-face,
9147         eshell-ls-unreadable-face, eshell-ls-special-face,
9148         eshell-ls-missing-face, eshell-ls-archive-face, eshell-ls-backup-face,
9149         eshell-ls-product-face, eshell-ls-clutter-face): Remove.
9150         * lisp/isearch.el (isearch-lazy-highlight-face, lazy-highlight-face): Remove.
9151         (isearch-lazy-highlight-update): Use face symbol.
9152         * lisp/net/sieve-mode.el (sieve-control-commands-face,
9153         sieve-action-commands-face, sieve-test-commands-face,
9154         sieve-tagged-arguments-face): Remove.
9155         (sieve-font-lock-keywords): Use non-obsolete faces.
9156         * lisp/progmodes/sh-script.el (sh-heredoc-face): Remove.
9157         (sh-get-indent-info, sh-prev-line): Use face symbol.
9158         * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
9159         Use non-obsolete face.
9160         (tex-math-face, tex-verbatim-face): Remove.
9161         (tex-font-lock-syntactic-face-function): Use face symbols.
9163 2016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
9165         Remove some face aliases obsoleted in 22.1
9167         * lisp/faces.el (modeline-inactive, modeline-highlight, modeline-buffer-id):
9168         * lisp/hilit-chg.el (highlight-changes-face, highlight-changes-delete-face):
9169         * lisp/info.el (Info-title-1-face, Info-title-2-face, Info-title-3-face,
9170         Info-title-4-face, info-menu-5):
9171         * lisp/obsolete/old-whitespace.el (whitespace-highlight-face):
9172         * lisp/paren.el (show-paren-match-face, show-paren-mismatch-face):
9173         * lisp/progmodes/make-mode.el (makefile-space-face):
9174         * lisp/textmodes/texinfo.el (texinfo-heading-face): Remove.
9175         (texinfo-font-lock-keywords): Use texinfo-heading face.
9176         * lisp/vc/add-log.el (change-log-date-face, change-log-name-face,
9177         change-log-email-face, change-log-file-face, change-log-list-face,
9178         change-log-conditionals-face, change-log-function-face,
9179         change-log-acknowledgement-face):
9180         * lisp/vc/diff-mode.el (diff-header-face, diff-file-header-face,
9181         diff-index-face, diff-hunk-header-face, diff-removed-face, diff-added-face,
9182         diff-changed-face, diff-function-face, diff-context-face,
9183         diff-nonexistent-face): Remove.
9184         (diff-use-changed-face, diff-font-lock-keywords): Use non-obsolete face
9185         symbols.
9186         (diff-hunk-file-names): Fix comment.
9187         (diff-refine-change): Remove.
9188         (diff-refine-removed, diff-refine-added, diff-refine-hunk): Use
9189         non-obsolete face.
9190         * lisp/vc/log-view.el (log-view-file-face, log-view-message-face): Remove.
9191         (log-view-font-lock-keywords): Use non-obsolete face names.
9192         * lisp/vc/pcvs-info.el (cvs-header-face, cvs-filename-face, cvs-unknown-face,
9193         cvs-handled-face, cvs-need-action-face, cvs-marked-face, cvs-msg-face):
9194         * lisp/wid-edit.el (widget-documentation-face, widget-button-face,
9195         widget-field-face, widget-single-line-field-face, widget-inactive-face,
9196         widget-button-pressed-face):
9197         * lisp/woman.el (woman-italic-face, woman-bold-face, woman-unknown-face,
9198         woman-addition-face): Remove.
9200 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9202         * lisp/international/characters.el (standard-case-table): Improve last change.
9204 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9206         Improve results of 'upcase' for characters with title-case
9208         * lisp/international/characters.el (standard-case-table): Swap the
9209         order of some lines, to have 'upcase' return the upper-case
9210         variant, not the title-case, for some characters whose lower-case
9211         map to the same codepoints.  (Bug#23833)
9213 2016-06-23  Alan Mackenzie  <acm@muc.de>
9215         Make typing into incomplete C++ raw strings work, and make it work fast enough
9217         * lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-state-pp-to-literal):
9218         Put `save-match-data' around calls to `looking-at' to enable the use of the
9219         match data in higher level functions.
9221         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations)
9222         (c-font-lock-cut-off-declarators): Use `limit' rather than `(point-max)' as a
9223         limit to speed up handling of C++ raw strings.
9225 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9227         Fix handling of LWINDOW key on MS-Windows
9229         * src/w32fns.c (funhook): Correct a typo which broke handling of
9230         the LWINDOW key.  (Bug#23830)
9232 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9234         Update Unicode data files from Unicode 9.0.0
9236         * admin/unidata/copyright.html:
9237         * admin/unidata/BidiBrackets.txt:
9238         * admin/unidata/UnicodeData.txt: Update from Unicode 9.0.0, just
9239         released.
9241 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9243         Fix test for whether the '.el' file is newer than '.elc'
9245         * src/lread.c (Fload): Don't overwrite the last character of the
9246         file name in FOUND with 'c', unless the file name ended in ".elc"
9247         to begin with.  Don't treat empty files as byte-compiled.  See
9248         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00463.html
9249         for more details of the problem this caused.
9251 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9253         Fix 'insert-file-contents' when REPLACE is non-nil
9255         * src/fileio.c (maybe_move_gap): New function to move the gap to
9256         the end of a buffer, if it isn't there already.
9257         (Finsert_file_contents): Call 'maybe_move_gap' before using
9258         conversion_buffer's text as a C 'char' array.  (Bug#23659)
9259         * src/coding.c (decode_eol): Compute the byte increment before
9260         calling del_range_2, because the latter can invalidate the pointer
9261         to buffer text.
9263 2016-06-22  Ken Brown  <kbrown@cornell.edu>
9265         Avoid compiler warning
9267         * src/w32fns.c (Fx_show_tip): Don’t jump over auto initialization.
9269 2016-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
9271         * lisp/emacs-lisp/syntax.el (syntax-propertize): Flush extended region.
9273 2016-06-22  Ken Brown  <kbrown@cornell.edu>
9275         Fix last change to FRAME_INTERNAL_BORDER_WIDTH
9277         * src/w32fns.c (x_set_internal_border_width): Don’t use
9278         FRAME_INTERNAL_BORDER_WIDTH(), which is now a function call, as an
9279         lvalue.
9281 2016-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9283         Improve --without-x GCC pacification
9285         * src/composite.c (autocmp_chars):
9286         * src/conf_post.h (DebPrint) [HAVE_NTGUI && !DebPrint && !EMACSDEBUG]:
9287         Use simpler ((void) 0) for no-op expression returning void.
9288         * src/dispextern.h [HAVE_WINDOW_SYSTEM]:
9289         Include fontset.h, for face_for_char.
9290         (FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_FOR_CHAR):
9291         Now inline functions instead of macros.  This avoids the need for
9292         all those casts to void.
9293         (FACE_SUITABLE_FOR_ASCII_CHAR_P): Omit 2nd (unused) arg.
9294         All uses changed.
9295         * src/frame.c (Ficonify_frame, Fset_frame_position):
9296         * src/xdisp.c (Fmove_point_visually, show_mouse_face):
9297         * src/xdisp.c (note_mode_line_or_margin_highlight)
9298         (note_mouse_highlight):
9299         Assume HAVE_WINDOW_SYSTEM for simplicity, since the code should
9300         now work either way without generating warnings.
9301         * src/frame.c (display_available) [HAVE_WINDOW_SYSTEM]: New function.
9302         (window_system_available) [HAVE_WINDOW_SYSTEM]: Move to frame.h.
9303         (decode_window_system_frame): Use check_window_system instead of
9304         rolling the code ourself.  Return needed only if HAVE_WINDOW_SYSTEM.
9305         (decode_window_system_frame, check_window_system):
9306         Merge the HAVE_WINDOW_SYSTEM and !HAVE_WINDOW_SYSTEM versions into one.
9307         * src/frame.c (Ficonify_frame, Fset_frame_position):
9308         * src/xdisp.c (show_mouse_face, define_frame_cursor1)
9309         (note_mouse_highlight):
9310         Narrow the scope of the HAVE_WINDOW_SYSTEM #ifdef;
9311         this is a better way to pacify GCC.
9312         * src/xdisp.c (x_set_left_fringe, x_set_right_fringe)
9313         (x_set_right_divider_width, x_set_bottom_divider_width):
9314         * src/xfns.c (x_set_internal_border_width):
9315         Don’t use what are now function calls as lvalues.
9316         * src/frame.h (WINDOW_SYSTEM_RETURN): New macro.
9317         (decode_window_system_frame, check_window_system):
9318         Use it, to avoid the need for duplicate declarations.
9319         (window_system_available): Now an inline function.
9320         (display_available): New decl.
9321         (frame_dimension): New inline function.
9322         (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
9323         (FRAME_RIGHT_FRINGE_WIDTH, FRAME_TOTAL_FRINGE_WIDTH)
9324         (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
9325         (FRAME_BOTTOM_DIVIDER_WIDTH):
9326         Use it, to avoid the need for duplicate definitions.
9327         Now inline functions instead of macros.
9328         * src/gnutls.c (gnutls_log_function2i): Remove.
9329         * src/gnutls.h (GNUTLS_LOG2i): Use ‘message’ directly.
9330         This avoids complaints about gnutls_log_function2i being defined
9331         and not used on older platforms that do not need to call GNUTLS_LOG2i.
9332         * src/image.c (DefaultDepthOfScreen) [0]: Remove unused macro.
9333         * src/lisp.h (AUTO_STRING_WITH_LEN): Revert change from ‘type id =
9334         expr’ to ‘type id; id = expr’, as this would suppress valid
9335         jump-misses-init diagnostics.  Let’s find a better way to address
9336         the problem.
9337         * src/vm-limit.c (__MALLOC_HOOK_VOLATILE):
9338         Define only if needed.
9339         * src/xdisp.c (handle_single_display_spec):
9340         Simplify fringe_bitmap computation.
9341         (define_frame_cursor1): Do nothing unless in a window system.
9342         All callers changed and simplified.
9343         * src/xfaces.c (realize_default_face):
9344         Use a simpler way to pacify GCC when a return value is not used
9345         on some platforms.
9347 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
9349         Ensure undo-boundary after all commands
9351         * lisp/simple.el (undo-auto--boundaries): Ensure an undo-boundary after
9352           every command whether it (apparently) changes the buffer or not.
9354         See Bug#23785 for discussion.
9356 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
9358         Fix vertical layout calculations when newline has line-height property
9360         * src/xdisp.c (move_it_in_display_line_to): Reset the iterator's
9361         'constrain_row_ascent_descent_p' flag after processing the
9362         newline, similar to what 'display_line' does.  Without this, the
9363         flag remains set once set by x_produce_glyphs, and causes the
9364         vertical layout calculations to go awry, because Emacs thinks the
9365         screen lines have zero height.  (Bug#23850)
9367 2016-06-20  Ken Brown  <kbrown@cornell.edu>
9369         Fix compiler warnings in Cygwin-w32 build
9371         * src/conf_post.h (DebPrint) [!EMACSDEBUG]: Add empty do-while
9372         loop to avoid compiler warnings about empty body of 'if'
9373         statement.
9375         * src/image.c [HAVE_NTGUI] (DefaultDepthOfScreen): Disable unused
9376         macro.
9377         (x_create_bitmap_from_data): Declare 'frame'.
9378         (x_create_bitmap_from_file): Don't declare unused variable
9379         'dpyinfo'.
9381         * src/lisp.h (AUTO_STRING_WITH_LEN): Avoid initialization to
9382         prevent "jump-misses-init" compiler warnings.
9384         * src/w32fns.c (check_w32_winkey_state): Define and use only if
9385         WINDOWSNT.
9386         (Fx_show_tip): Declare 'f'.
9387         (Fx_file_dialog): Declare 'filter_a' only if not NTGUI_UNICODE.
9388         (w32_strerror): Use format specifier %d for sprintf argument of
9389         type int.
9390         (emacs_abort): Cast sprintf argument of type DWORD to unsigned
9391         int, and use format specifier %x, for compatibility with Cygwin.
9392         (unicode_append_menu) [NTGUI_UNICODE]:
9393         * src/w32menu.c [NTGUI_UNICODE] (get_menu_item_info)
9394         (set_menu_item_info, unicode_append_menu)
9395         (unicode_message_box):
9396         * src/menu.c [NTGUI_UNICODE] (unicode_append_menu): Define as
9397         functions rather than macros to avoid "address will always
9398         evaluate as true" compiler warnings.
9400         * src/w32font.c (w32_to_x_charset): Use format specifier %d for
9401         sprintf argument of type int.
9403         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Cast
9404         sprintf argument of type int to unsigned int to match %X format
9405         specifier.
9406         (w32_scroll_bar_handle_click):
9407         (w32_horizontal_scroll_bar_handle_click): Declare 'f'.
9409         * src/w32term.h (FRAME_DISPLAY_INFO): Explicitly discard unused
9410         argument.
9412 2016-06-20  Ken Brown  <kbrown@cornell.edu>
9414         Fix compiler warnings in no-window-system-build
9416         * src/composite.c (autocmp_chars): Declare and set 'f' only if
9417         HAVE_WINDOW_SYSTEM.
9419         * src/dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P)
9420         (FACE_FOR_CHAR): Explicitly discard unused arguments.
9422         * src/font.c (font_open_entity): Declare 'min_width' where it is
9423         first set, and only if HAVE_WINDOW_SYSTEM.
9425         * src/frame.c [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame):
9426         Define _Noreturn version to avoid "suggest attribute noreturn"
9427         compiler warning.
9428         (check_window_system): Declare as _Noreturn.
9429         (Ficonify_frame):
9430         (Fset_frame_position): Don’t declare and set 'f'.
9432         * src/frame.h [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame)
9433         (check_window_system):  Add _Noreturn prototypes.
9434         (FRAME_FRINGE_COLS, FRAME_TOTAL_FRINGE_WIDTH)
9435         (FRAME_LEFT_FRINGE_WIDTH, FRAME_RIGHT_FRINGE_WIDTH)
9436         (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
9437         (FRAME_BOTTOM_DIVIDER_WIDTH): Explicitly discard unused argument.
9439         * src/xdisp.c (handle_single_display_spec): Declare
9440         'fringe_bitmap' only if HAVE_WINDOW_SYSTEM.
9441         (append_space_for_newline): Declare 'g' where it is first set.
9442         (Fmove_point_visually): Declare and set 'target_is_eol_p' only if
9443         HAVE_WINDOW_SYSTEM.
9444         (show_mouse_face): Declare and set 'f' and 'phys_cursor_on_p' only
9445         if HAVE_WINDOW_SYSTEM.
9446         (note_mode_line_or_margin_highlight):
9447         (note_mouse_highlight): Declare and set 'cursor' and 'pointer'
9448         only if HAVE_WINDOW_SYSTEM.
9450         * src/xfaces.c (realize_default_face): Declare and set 'face' only
9451         if HAVE_X_WINDOWS.  Remove redundant #ifdef.
9453 2016-06-20  Michael Albinus  <michael.albinus@gmx.de>
9455         Weaken test conditions in filenotify-tests.el
9457         * test/lisp/filenotify-tests.el (file-notify--test-with-events):
9458         Fix thinko in test.
9459         (file-notify-test02-events, file-notify-test04-file-validity)
9460         (file-notify-test07-backup)
9461         (file-notify-test08-watched-file-in-watched-dir): Make test
9462         conditions more weak.  (Bug#23618)
9464 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
9466         Minor ABLOCKS_BUSY cleanups in alloc.c
9468         * src/alloc.c (ABLOCKS_BUSY): Rename arg to avoid potential clash
9469         with member ‘abase’ in definiens.
9470         (lisp_align_malloc, lisp_align_free): Use bool for boolean.
9471         Avoid compiler warning with fewer casts.
9472         (lisp_align_free): Check busy-field values; this can help the
9473         compiler a bit when optimizing, too.
9475 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
9477         ASCII-fy coding-system-for-read used for Git commands
9479         * lisp/vc/vc-git.el (vc-git--asciify-coding-system):
9480         New function.
9481         (vc-git-diff, vc-git-annotate-command): Use it.
9483 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
9485         Prohibit multibyte characters in url-http-data
9487         It didn't work anyway, but this makes any such errors more obvious
9488         by catching them earlier.
9490         * lisp/url/url-http.el (url-http-create-request):
9491         Use string-to-unibyte (bug#23750).
9493 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
9495         Fix setting a range of char-table slots in a singular case
9497         * src/chartab.c (char_table_set_range): Start the loop from the
9498         first character of the block to which FROM belongs.  (Bug#23797)
9500         * test/src/chartab-tests.el: New test file.
9502 2016-06-19  Alan Mackenzie  <acm@muc.de>
9504         Fix CC Mode fontification problem apparent in test file decls-6.cc.
9506         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Recognize
9507         "bar (gnu);" as a declarator only when the construct is directly inside a
9508         class (etc.) called "bar".
9509         (c-directly-in-class-called-p): New function.
9511 2016-06-19  Alan Mackenzie  <acm@muc.de>
9513         c-renarrow-state-cache: take care when new point is inside old brace pair.
9515         Also add display of point-min to the c-parse-state debugging output.
9517         * lisp/progmodes/cc-engine.el (c-renarrow-state-cache): When the new
9518         point is inside an old recorded brace pair, clear the cache.
9519         (c-debug-parse-state): Output the value of point-min.
9521 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9523         Rename ALIGN to pointer_align
9525         * src/alloc.c (pointer_align): Rename from ALIGN.
9526         This fixes Bug#23764 in a simpler way.
9528 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9530         Merge from origin/emacs-25
9532         d1efbaf Fix documentation of completion functions
9533         65c96cc Clarify documentation of 'font-lock-maximum-decoration'
9534         2ad3d01 * doc/misc/cl.texi (Usage): Add some more details.
9535         b49cb0a Fbackward_prefix_chars: stay within buffer bounds
9537 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9539         Merge from origin/emacs-25
9541         2317c61 Fix last todo-mode change
9542         5d4d8a3 Improve last todo-mode fix
9543         d7084f2 Fix todo-mode use of minibuffer completion keymap (bug#23695).
9544         27dec52 * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23...
9545         f526191 * lisp/emacs-lisp/nadvice.el (advice--make-docstring): Avoid ...
9546         e881070 * lisp/help-fns.el (describe-function-1): Avoid reporting adv...
9547         d308aa1 Minor grammar fix (bug#23746)
9548         20de667 Doc fixes for grammar and typos (bug#23746)
9549         a67a4e5 * doc/lispref/processes.texi (Process Buffers): Minor rewordi...
9550         27f440e Add cross-reference to ELisp manual
9551         10802d8 ; make change-history-commit
9552         4b2d77d * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bu...
9553         12e009e Restore initial undo boundary with viper
9554         291fe0a Revert "Fix viper undo breakage from undo-boundary changes"
9555         6921f4a Fix dbus crash on 32-bit Cygwin
9557 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9559         Merge from origin/emacs-25
9561         9ae514a * etc/AUTHORS: Update the AUTHORS file
9562         3ca428e add entries to authors.el
9563         66d556b Fix eldoc-related freezes in python mode
9564         d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
9565         27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
9566         a813487 Fix undo boundary in recursive edit (Bug#23632)
9567         1f85b7c Doc fixes re alist-get.  (Bug#23548)
9568         ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
9569         56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
9570         4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
9571         a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
9572         601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
9574 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9576         * lisp/emacs-lisp/map.el (map-contains-key): Better docstring
9578 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9580         Fix seq-contains
9582         Make sure seq-contains return the element of the sequence instead of t.
9584         * lisp/emacs-lisp/seq.el (seq-contains): Fix the function.
9585         * test/lisp/emacs-lisp/seq-tests.el: Add a regression test.
9587 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9589         Add new function map-do
9591         * lisp/emacs-lisp/map.el (map-do, map--do-alist, map--do-array): New
9592           functions.
9593         * test/lisp/emacs-lisp/map-tests.el: Add a unit test for map-do.
9595 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9597         Add seq-do-indexed
9599         * lisp/emacs-lisp/seq.el (seq-do-indexed): New function.
9600         * test/lisp/emacs-lisp/seq-tests.el: Add a unit test for seq-do-indexed.
9602 2016-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
9604         map.el (map-merge*): Use `map-into' at beginning rather than end
9606         * lisp/emacs-lisp/map.el (map-merge): Use `map-into' for the first map,
9607         and don't use of an intermediate alist.
9608         (map-merge-with): Same, plus use `cl-callf' to try and avoid performing
9609         3 lookups per inner iteration.
9611 2016-06-16  Mark Oteiza  <mvoteiza@udel.edu>
9613         * lisp/window.el (switch-to-buffer-preserve-window-point): Bump :version.
9615 2016-06-15  Alan Mackenzie  <acm@muc.de>
9617         Speed up CC Mode's font locking by taking some code out of a hot loop.
9619         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove code which
9620         tests for bare declarators.
9621         (c-font-lock-cut-off-declarators): New function.
9622         (c-complex-decl-matchers): insert c-font-lock-cut-off-declarators.
9624 2016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9626         Automatically find vars and functions via definition-prefixes
9628         * lisp/help-fns.el (help-definition-prefixes): New var and function.
9629         (help--loaded-p, help--load-prefixes, help--symbol-completion-table):
9630         New functions.
9631         (describe-function, describe-variable): Use them.
9633         * lisp/emacs-lisp/radix-tree.el (radix-tree--prefixes)
9634         (radix-tree-prefixes, radix-tree-from-map): New functions.
9636 2016-06-15  Michal Nazarewicz  <mina86@mina86.com>
9638         Automatically detect whether .h file is C or C++
9640         * lisp/progmodes/cc-mode.el (c-or-c++-mode): A new function which
9641         analyses contents of the buffer to determine whether it looks like C++
9642         source code and based on that enables c-mode or c++-mode.
9643         (c-or-c++-mode--regexp): Regular expression which, when matches
9644         a buffer, signals file is C++.
9646 2016-06-15  Alan Mackenzie  <acm@muc.de>
9648         Parse compound identifiers in C++ member initialization lists.
9650         * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): New function.
9651         (c-back-over-member-initializer-braces, c-back-over-list-of-member-inits)
9652         (c-back-over-member-initializers): Call c-back-over-compound-identifier rather
9653         than c-simple-skip-symbol-backward.
9655 2016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9657         Advertize set-keymap-parent as replacement for copy-keymap
9659         * doc/lispref/keymaps.texi (Creating Keymaps):
9660         * src/keymap.c (Fcopy_keymap): Advertize set-keymap-parent as replacement.
9662 2016-06-15  Ted Zlatanov  <tzz@lifelogs.com>
9664         * generic-x.el (ansible-inventory-generic-mode): Warn if value is missing
9666 2016-06-15  Tim Chambers  <tbc@alum.mit.edu>  (tiny change)
9668         Add new ansible-inventory-generic-mode (Bug#23762)
9670         * lisp/generic-x.el (ansible-inventory-generic-mode): Add new mode.
9672 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9674         Fix ifdef-vs-if typo with RANDR13_LIBRARY
9676         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
9677         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
9678         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
9680 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9682         Port to platforms where char * has top bit set
9684         This fixes a five-year-old FIXME comment.  Although I don’t know
9685         of a platform where this is a problem in practice, better safe
9686         than sorry.
9687         * src/doc.c (Fdocumentation): If SUBRP, simply use doc as integer,
9688         as it is now an integer, not char *.
9689         (store_function_docstring): Offset is now EMACS_INT, not ptrdiff_t;
9690         this is a file offset and EMACS_INT is better if --with-wide-int.
9691         If SUBRP, simply store the offset rather than negating it and
9692         converting it to char *.
9693         * src/lisp.h (struct Lisp_Subr.doc): Now EMACS_INT, not char *.
9695 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9697         Remove recursion from store_function_docstring
9699         * src/doc.c (store_function_docstring):
9700         Refactor to avoid the need for C-level recursion.
9702 2016-06-14  Ken Brown  <kbrown@cornell.edu>
9704         Remove system-specific -I switch from Cygwin-w32 build
9706         Suggested by Eli Zaretskii in discussion of bug#18302.
9708         * src/image.c [HAVE_NTGUI]: Remove the unused macro
9709         PIXEL_ALREADY_TYPEDEFED.  On Cygwin, include "noX/xpm.h" instead of
9710         "X11/xpm.h".
9712         * configure.ac [CYGWIN && HAVE_W32]: Change the xpm test to use
9713         "noX/xpm.h".  Don't add a -I switch to CPPFLAGS.
9715 2016-06-14  Noam Postavsky  <npostavs@gmail.com>
9717         Make python.el work in Emacs 24
9719         * lisp/progmodes/python.el: Bump version.
9720         (python-define-auxiliary-skeleton): Only use format-message if
9721         fbound (Bug#23126).
9723 2016-06-13  Ken Brown  <kbrown@cornell.edu>
9725         Avoid compiler warning
9727         * src/w32fns.c (deliver_wm_chars): Add 'const' to declaration of
9728         'type_CtrlAlt'.
9730 2016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9732         Call tzset after setting TZ
9734         * src/editfns.c (tzlookup): Call tzset after setting TZ, so that
9735         the setting change propagates into Emacs local time (Bug#23600).
9736         (emacs_setenv_TZ): Clarify comments.
9738 2016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9740         Update texinfo.tex
9742         * doc/misc/texinfo.tex: Update from gnulib.
9744 2016-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9746         New macro GNUC_PREREQ for GCC version
9748         * src/conf_post.h (GNUC_PREREQ): New macro.
9749         Change uses of __GNUC_MINOR__ and __GNUC_PATCHLEVEL__ to use this
9750         macro instead, for clarity and consistency.
9751         (PRINTF_ARCHETYPE): New macro.  Define it to __gnu_printf__ only
9752         if glibc, since non-GNU platforms don’t necessarily support GNU
9753         printf formats.
9754         (ATTRIBUTE_FORMAT_PRINTF): Use it.
9756 2016-06-12  Nicolas Petton  <nicolas@petton.fr>
9758         * lisp/emacs-lisp/seq.el (seq-drop): Better list implementation
9760 2016-06-12  Eli Zaretskii  <eliz@gnu.org>
9762         Fix printf-related compilation warnings on MinGW
9764         * src/conf_post.h (ATTRIBUTE_FORMAT_PRINTF) [__MINGW32__]: Use
9765         '__ms_printf__', not '__gnu_printf__', as the latter is not what
9766         MS 'printf' supports, and causes bogus compilation warnings.
9767         * src/lisp.h (pI) [__MINGW32__]: Define to "I64", as MS 'printf'
9768         doesn't support the "ll" modifier.
9770 2016-06-11  Paul Eggert  <eggert@cs.ucla.edu>
9772         emacs_strerror cleanups
9774         * src/buffer.c, src/emacs.c, src/lread.c: Don’t include coding.h;
9775         no longer needed, now that emacs_strerror is declared by lisp.h.
9776         * src/coding.c (emacs_strerror): Remove; moved to emacs.c.
9777         * src/coding.h (emacs_strerror) [emacs]: Remove decl; moved
9778         to lisp.h.
9779         * src/emacs.c (emacs_strerror): Move here from coding.c.  Do not
9780         convert result string; this is now the caller’s responsibility,
9781         as some need conversion and others don’t.
9782         * src/fileio.c (report_file_errno, report_file_notify_error):
9783         Use emacs_strerror rather than rolling it ourselves.
9784         * src/lisp.h (emacs_strerror): Move decl here from coding.h.
9785         * src/lread.c (dir_warning): Just call emacs_strerror rather than
9786         both strerror and emacs_strerror.  Convert its result from
9787         locale-coding-system, since it no longer does that conversion.
9788         * src/sound.c (sound_perror):
9789         * src/sysdep.c (emacs_perror, str_collate):
9790         Use emacs_strerror, not strerror.
9792 2016-06-10  David Reitter  <david.reitter@gmail.com>
9794         Prevent compiler warning for unused arguments
9796         * lisp/international/ucs-normalize.el
9797         (ucs-normalize-hfs-nfd-pre-write-conversion):
9798         Prevent compiler warning for unused arguments, add coment.
9800 2016-06-10  Paul Eggert  <eggert@cs.ucla.edu>
9802         Catch malloc_get_state, malloc_set_state failure
9804         This should help insulate Emacs better from configuration screwups.
9805         Future versions of the GNU C library are planned to deprecate
9806         these functions, but will continue to support them in
9807         already-built-and-dumped Emacs executables.
9808         * src/alloc.c (malloc_initialize_hook) [DOUG_LEA_MALLOC]:
9809         Abort if malloc_set_state fails.
9810         (alloc_unexec_pre) [DOUG_LEA_MALLOC]:
9811         Report malloc_get_state failure, and exit.
9813 2016-06-10  Eli Zaretskii  <eliz@gnu.org>
9815         Show returned value after gdb-mi "finish" command
9817         * lisp/progmodes/gdb-mi.el (gdb-stopped): Display the expected
9818         "Value returned" message in response to "finish", when not
9819         produced by GDB/MI.  (Bug#23720)
9821 2016-06-10  David Reitter  <david.reitter@gmail.com>
9823         Simplify pre-write-conversion for utf-8-hfs coding system
9825         * lisp/international/ucs-normalize.el
9826         (ucs-normalize-hfs-nfd-pre-write-conversion): Refactor.
9828         May address an issue where Emacs consumed large amounts of CPU
9829         because of neverending toolbar updating (which was caused
9830         by, but also called this function).
9832 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
9834         Revert "Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2"
9836         * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
9837         to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
9838         Monnier.  (Bug#19185, Bug#20398)
9840         This reverts commit 72166f2f3dba18f1217c666574032f5a0351ed65.
9842         That commit did more harm than good (Bug#23571).
9844 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9846         Port __builtin_assume_aligned to Sun C 5.13
9848         * src/conf_post.h (__builtin_assume_aligned):
9849         Fix typo: the extra arg did not conform to C99.
9851 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9853         Prefer getsockopt to getpeername on non-MS-Windows
9855         * admin/CPP-DEFINES: Remove HAVE_GETPEERNAME.
9856         * configure.ac: Don’t check for getpeername.
9857         * src/process.c (wait_reading_process_output) [!WINDOWSNT]:
9858         Use getsockopt even if not GNU/Linux, as the platforms where
9859         getsockopt used to hang are no doubt long dead.
9861 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9863         Fix XFASTINT of non-fixnum in process status
9865         * src/process.c (decode_status): 3rd arg is now Lisp_Object *,
9866         not int *, and is not decoded.  All uses changed.
9867         (status_message): Do not assume ‘failed’ code is an integer.
9868         * src/process.h: Document codes better.
9870 2016-06-09  Glenn Morris  <rgm@gnu.org>
9872         Make messcompat.el obsolete.
9874         * lisp/obsolete/messcompat.el: Move here from lisp/gnus.
9875         * doc/misc/message.texi (Compatibility): Remove section.
9877 2016-06-09  Glenn Morris  <rgm@gnu.org>
9879         Leading "*" in the doc of defvars is long obsolete.
9881         * lisp/plstore.el (plstore-encrypt-to):
9882         * lisp/cedet/semantic/lex-spp.el
9883         (semantic-lex-spp-macro-max-length-to-save):
9884         * lisp/cedet/semantic/symref.el (semantic-symref-tool):
9885         * lisp/cedet/semantic/bovine/el.el
9886         (semantic-elisp-store-documentation-in-tag):
9887         * lisp/cedet/semantic/wisent/comp.el (wisent-verbose-flag)
9888         (wisent-expected-conflicts):
9889         * lisp/cedet/semantic/wisent/wisent.el (wisent-parse-verbose-flag):
9890         * lisp/gnus/gnus-agent.el (gnus-category-menu-hook):
9891         * lisp/gnus/gnus-group.el (gnus-group-listing-limit):
9892         * lisp/gnus/gnus-srvr.el (gnus-server-menu-hook)
9893         (gnus-browse-menu-hook):
9894         * lisp/gnus/message.el (message-shoot-gnksa-feet):
9895         * lisp/gnus/mm-decode.el (mm-path-name-rewrite-functions):
9896         * lisp/gnus/mm-util.el (mm-extra-numeric-entities):
9897         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
9898         * lisp/gnus/mml.el (mml-generate-multipart-alist):
9899         * lisp/gnus/nndraft.el (nndraft-required-headers):
9900         * lisp/gnus/nnheader.el (nnheader-max-head-length)
9901         (nnheader-head-chop-length, nnheader-file-name-translation-alist)
9902         (nnheader-directory-separator-character)
9903         (nnheader-pathname-coding-system):
9904         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system)
9905         (nnmail-active-file-coding-system):
9906         * lisp/gnus/nnrss.el (nnrss-file-coding-system):
9907         * lisp/gnus/nntp.el (nntp-record-commands):
9908         * lisp/gnus/score-mode.el (gnus-score-edit-done-hook)
9909         (gnus-score-mode-hook, gnus-score-menu-hook):
9910         * lisp/mail/rfc2047.el (rfc2047-header-encoding-alist)
9911         (rfc2047-allow-irregular-q-encoded-words)
9912         (rfc2047-allow-incomplete-encoded-text):
9913         * lisp/mh-e/mh-alias.el (mh-alias-system-aliases):
9914         * lisp/mh-e/mh-e.el (mh-mail-header-separator, mh-x-mailer-string):
9915         * lisp/mh-e/mh-scan.el (mh-scan-format-mh, mh-scan-format-nmh):
9916         * lisp/net/pop3.el (pop3-password):
9917         * lisp/play/animate.el (animate-n-steps):
9918         * lisp/progmodes/cc-vars.el (c-old-style-variable-behavior):
9919         Convert from defvar with leading * to defcustom.
9922         * lisp/emulation/viper-init.el (viper-heading-end):
9923         * lisp/gnus/mm-url.el (mm-url-html-entities):
9924         * lisp/gnus/nnmaildir.el (nnmaildir-article-file-name):
9925         * lisp/mh-e/mh-e.el (mh-invisible-header-fields-compiled):
9926         * lisp/net/tramp-adb.el (tramp-adb-method): Remove leading * from doc.
9928         * lisp/gnus/messcompat.el: Mark (pointless) file not for compilation.
9929         (message-from-style, message-interactive, message-indentation-spaces)
9930         (message-signature, message-signature-file):
9931         Remove settings that match the defaults.
9932         (message-setup-hook, message-mode-hook, message-default-headers)
9933         (message-send-hook, message-send-mail-function):
9934         Just use setq rather than redefining.
9936         * lisp/gnus/nnrss.el (nnrss):
9937         * lisp/mail/rfc2047.el (rfc2047):
9938         * lisp/play/animate.el (animate): New custom groups.
9940 2016-06-09  Glenn Morris  <rgm@gnu.org>
9942         Remove obsolete leading * from defcustom, defface doc strings.
9944         * lisp/cedet/ede/linux.el, lisp/cedet/ede/project-am.el:
9945         * lisp/cedet/ede/simple.el, lisp/cedet/semantic/bovine/c.el:
9946         * lisp/cedet/semantic/complete.el, lisp/cedet/semantic/db.el:
9947         * lisp/cedet/semantic/decorate/include.el:
9948         * lisp/cedet/semantic/decorate/mode.el, lisp/cedet/semantic/format.el:
9949         * lisp/cedet/semantic/ia.el, lisp/cedet/semantic/idle.el:
9950         * lisp/cedet/semantic/imenu.el, lisp/cedet/semantic/lex-spp.el:
9951         * lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/sb.el:
9952         * lisp/cedet/srecode/fields.el, lisp/ecomplete.el:
9953         * lisp/gnus/gnus-agent.el, lisp/gnus/gnus-art.el:
9954         * lisp/gnus/gnus-async.el, lisp/gnus/gnus-cache.el:
9955         * lisp/gnus/gnus-cite.el, lisp/gnus/gnus-delay.el:
9956         * lisp/gnus/gnus-diary.el, lisp/gnus/gnus-dup.el:
9957         * lisp/gnus/gnus-fun.el, lisp/gnus/gnus-group.el:
9958         * lisp/gnus/gnus-kill.el, lisp/gnus/gnus-msg.el:
9959         * lisp/gnus/gnus-picon.el, lisp/gnus/gnus-salt.el:
9960         * lisp/gnus/gnus-score.el, lisp/gnus/gnus-start.el:
9961         * lisp/gnus/gnus-sum.el, lisp/gnus/gnus-topic.el:
9962         * lisp/gnus/gnus-util.el, lisp/gnus/gnus-uu.el, lisp/gnus/gnus-win.el:
9963         * lisp/gnus/gnus.el, lisp/gnus/mail-source.el, lisp/gnus/message.el:
9964         * lisp/gnus/mm-url.el, lisp/gnus/mm-uu.el, lisp/gnus/mml.el:
9965         * lisp/gnus/nndiary.el, lisp/gnus/nnir.el, lisp/gnus/nnmail.el:
9966         * lisp/gnus/smiley.el, lisp/gnus/smime.el, lisp/mail/mail-extr.el:
9967         * lisp/mh-e/mh-e.el, lisp/net/mailcap.el, lisp/net/pop3.el:
9968         * lisp/net/starttls.el, lisp/progmodes/cc-vars.el:
9969         * lisp/progmodes/cperl-mode.el, test/manual/cedet/tests/test.el:
9970         Remove obsolete leading * from defcustom, defface doc strings.
9972 2016-06-09  Eli Zaretskii  <eliz@gnu.org>
9974         Fix copying text properties by 'format'
9976         * src/editfns.c (styled_format): Fix copying text properties from
9977         the format specification to the produced string representation.
9978         (Bug#23730)
9979         (Fformat) Doc fix.
9981         * doc/lispref/strings.texi (Formatting Strings): Document that
9982         text properties from the format specifiers are also copied to the
9983         produced string.
9985 2016-06-09  Alan Mackenzie  <acm@muc.de>
9987         Handle C++ raw strings.
9989         * lisp/progmodes/cc-engine.el (c-raw-string-pos, c-depropertize-raw-string)
9990         (c-depropertize-raw-strings-in-region,
9991         c-before-change-check-raw-strings)
9992         (c-propertize-raw-string-opener, c-after-change-re-mark-raw-strings): New
9993         functions.
9995         * lisp/progmodes/cc-fonts.el (c-basic-matchers-before): Insert a clause for
9996         c-font-lock-raw-strings.
9997         (c-font-lock-raw-strings): New function.
9999         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Insert
10000         c-before-change-check-raw-strings into the C++ value, and c-depropertize-CPP
10001         into the values for C, C++, and Objective C.
10002         (c-before-font-lock-functions): Insert c-after-change-re-mark-raw-strings into
10003         the C++ value.
10005         * lisp/progmodes/cc-mode.el (c-old-BEG, c-old-END): New variables.
10006         (c-depropertize-CPP): New function, extracted from
10007         c-neutralize-syntax-in-and-mark-CPP.
10008         (c-neutralize-syntax-in-and-mark-CPP): Remove the call to
10009         c-clear-char-property-with-value for 'syntax-table value '(1) at the beginning
10010         of the function.
10011         (c-after-change): Set c-old-BEG and c-old-END to the current values of
10012         c-new-BEG and c-new-END.
10014 2016-06-09  Daiki Ueno  <ueno@gnu.org>
10016         epg: don't use obsolete function
10018         * lisp/epg.el (epg-sign-string, epg-encrypt-string): Remove
10019         redundant configuration check, which is now done in
10020         `epg-make-context'.
10022 2016-06-09  Daiki Ueno  <ueno@gnu.org>
10024         epg: don't start pinentry if it is useless
10026         * lisp/epg.el (epg--start): Don't start pinentry server if the
10027         session is non-interactive or pinentry-mode is set.
10029 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10031         Replace IF_LINT by NONVOLATILE and UNINIT
10033         Inspired by a suggestion from RMS in: http://bugs.gnu.org/23640#58
10034         * .dir-locals.el (c-mode): Adjust to macro changes.
10035         * src/conf_post.h (NONVOLATILE, UNINIT): New macros (Bug#23640).
10036         (IF_LINT): Remove.  All uses replaced by the new macros.
10038 2016-06-08  Michal Nazarewicz  <mina86@mina86.com>
10040         Remove ‘ert-with-function-mocked’ macro in favour of ‘cl-letf’ macro
10042         * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): Remove macro
10043         in favour of ‘cl-letf’ macro which is more generic.  All existing
10044         uses are migrated accordingly.  The macro has not been included in
10045         an official release yet so it should be fine to delete it.
10047 2016-06-08  Glenn Morris  <rgm@gnu.org>
10049         * test/lisp/emacs-lisp/package-tests.el
10050         (package-test-update-archives-async): Try re-enabling on hydra.
10052 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10054         * src/fileio.c (auto_save_error): Omit unused local.
10056 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10058         Simplify overflow check via INT_SUBTRACT_WRAPV
10060         * src/editfns.c (check_tm_member): Simplify integer overflow check.
10062 2016-06-07  Glenn Morris  <rgm@gnu.org>
10064         Try to avoid hangs and stray procs in network-stream-tests.  (Bug#23560)
10066         * test/lisp/net/network-stream-tests.el (connect-to-tls-ipv4-wait)
10067         (connect-to-tls-ipv4-nowait, connect-to-tls-ipv6-nowait):
10068         Ensure gnutls-serv process gets killed.
10069         (echo-server-nowait, connect-to-tls-ipv4-nowait):
10070         Limit the amount of time we might wait.
10072 2016-06-07  Glenn Morris  <rgm@gnu.org>
10074         Reduce allout.el's pollution of the namespace.
10076         * lisp/allout.el (allout-set-regexp): Rename from set-allout-regexp.
10077         Keep old name as obsolete alias.
10078         (allout-produce-mode-menubar-entries, allout-nullify-prefix-data)
10079         (allout-solicit-char-in-string)
10080         (allout-count-trailing-whitespace-region, allout-regexp-sans-escapes):
10081         Rename to add an "allout-" prefix.
10083 2016-06-07  Glenn Morris  <rgm@gnu.org>
10085         * configure.ac (emacs_config_features): Add CANNOT_DUMP.
10087 2016-06-07  Glenn Morris  <rgm@gnu.org>
10089         Misc small webjump updates.
10091         * lisp/net/webjump.el (webjump): Add custom group.
10092         (webjump-sample-sites): Make it a constant.
10093         Remove explicit, old list of GNU ftp mirrors.
10094         (webjump-state-to-postal-alist): Make it a constant.
10095         (webjump-sites): Make it a defcustom.
10096         (webjump-to-iwin): Update for changed remote service.
10098 2016-06-07  Glenn Morris  <rgm@gnu.org>
10100         Do not hard-code port for package test server.  (Bug#23708)
10102         * test/lisp/emacs-lisp/package-resources/package-test-server.py:
10103         Do not hard-code port.
10104         * test/lisp/emacs-lisp/package-tests.el (package-test-update-archives-async):
10105         Update for the above change.
10107 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10109         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
10111 2016-06-07  Glenn Morris  <rgm@gnu.org>
10113         * src/fileio.c (auto_save_error): Use display-warning.  (Bug#23703)
10115 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10117         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
10118         Fix non-file-visiting-buffer case.  (Bug#22678)
10120 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10122         Port --enable-gcc-warnings to clang 3.7.0
10124         * configure.ac: Add -Wno-tautological-compare to avoid bogus
10125         warnings about 0 <= rlim.rlim_max.  Remove flags that no longer
10126         seem to be needed, at least in Fedora 23 x86-64.
10128 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10130         Use __builtin_assume_aligned on untagged Lisp vals
10132         * src/conf_post.h (__has_builtin, __builtin_assume_aligned):
10133         New macros, for compilers not already defining them.
10134         (__has_builtin___builtin_assume_aligned): New macro.
10135         * src/lisp.h (lisp_h_XUNTAG): Use __builtin_assume_aligned.
10136         This shrinks text space by 0.2% on x86-64 with GCC 6.1.
10138 2016-06-07  Glenn Morris  <rgm@gnu.org>
10140         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
10141         aliases as the type of their targets.
10143 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10145         * lisp/simple.el (process-menu-mode, list-processes--refresh):
10146         Include PID.  (Bug#21725)
10148 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10150         Merge from origin/emacs-25
10152         6e3adf8 Fix crash in syntax.c after GC
10153         973ce5a Improve squiggly heredoc support in non-SMIE Ruby mode
10154         9d5cceb Fix doc string quoting
10155         0b33a23 Fix mouse dragging of vertical dividers with scroll bars on l...
10156         a5d05f4 * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
10158 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10160         Merge from origin/emacs-25
10162         604f656 * test/automated/viper-tests.el (viper-test-undo-kmacro): Del...
10163         20eb531 * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
10164         a7a2244 * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
10165         07bd972 * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): Fix...
10167 2016-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10169         Use standard Unicode names for Thai, Lao
10171         * lisp/language/lao-util.el, lisp/language/thai-util.el:
10172         Don’t override standard Unicode character name (Bug#23698).
10174 2016-06-06  Glenn Morris  <rgm@gnu.org>
10176         * lisp/man.el (Man-reference-regexp, Man-default-man-entry):
10177         Handle U+2010 hyphen at eol, as used when LANG=en_US.utf8.
10179 2016-06-06  Michael Albinus  <michael.albinus@gmx.de>
10181         Some fixes in filenotify-tests.el for cygwin
10183         * test/lisp/filenotify-tests.el (file-notify--test-timeout):
10184         Reintroduce value for cygwin, it's needed on slow systems.
10185         (file-notify--wait-for-events): Move up definition.
10186         (file-notify--test-no-descriptors): Use `file-notify--wait-for-events'.
10187         (file-notify--test-with-events-check, file-notify--test-with-events)
10188         (file-notify-test08-watched-file-in-watched-dir):
10189         Use :random rather than `random.
10190         (file-notify-test06-many-events): Do not skip for cygwin.
10192 2016-06-05  Juri Linkov  <juri@linkov.net>
10194         * src/casefiddle.c (Fupcase_region): Add arg ‘region-noncontiguous-p’.
10196         If non-nil, operate on multiple chunks.  (Bug#23655)
10198         * src/search.c (Freplace_match): Use Qnil for new arg of Fupcase_region.
10200 2016-06-05  Juri Linkov  <juri@linkov.net>
10202         * lisp/wdired.el (wdired-next-line, wdired-previous-line): Add "^"
10204         to interactive spec to handle shift-selection.  (Bug#23642)
10206 2016-06-05  Michael Albinus  <michael.albinus@gmx.de>
10208         Improve robustness of filenotify-tests.el (Bug#23618)
10210         * test/lisp/filenotify-tests.el (file-notify--test-no-descriptors)
10211         (file-notify--test-no-descriptors-explainer)
10212         (file-notify--test-cleanup-p): New defuns.
10213         (file-notify--test-cleanup): Don't check for
10214         `file-notify--test-event' anymore, that's done in
10215         `file-notify--test-no-descriptors'.
10216         (file-notify--test-with-events-check)
10217         (file-notify--test-with-events): Handle the `random' marker.
10218         (file-notify--test-with-events-explainer): Improve readability.
10219         (file-notify-test00-availability)
10220         (file-notify-test01-add-watch, file-notify-test02-events)
10221         (file-notify-test03-autorevert)
10222         (file-notify-test04-file-validity)
10223         (file-notify-test05-dir-validity)
10224         (file-notify-test06-many-events, file-notify-test07-backup)
10225         (file-notify-test08-watched-file-in-watched-dir)
10226         (file-notify-test09-sufficient-resources): Check also
10227         `file-notify--test-cleanup-p'.
10228         (file-notify-test04-file-validity)
10229         (file-notify-test05-dir-validity): Use `ignore' as handler.
10230         (file-notify-test05-dir-validity)
10231         (file-notify-test06-many-events): Delete directory finally.
10232         (file-notify-test08-watched-file-in-watched-dir): Add `random' marker.
10234 2016-06-05  Stephen Berman  <stephen.berman@gmx.net>
10236         man.el: Fix links on hyphenated words (bug#23647)
10238         * lisp/man.el (Man-bgproc-sentinel): Make links work on
10239         hyphenated words.
10241 2016-06-05  K. Handa  <handa@gnu.org>
10243         Add category 'j' to more characters.
10245         * lisp/international/characters.el: Add category 'j' (Japanese)
10246         to characters in japanese-jisx0213.2004-1.
10248 2016-06-04  Tino Calancha  <f92capac@gmail.com>
10250         isearch-edit-string resumes multi isearches
10252         * lisp/isearch.el (with-isearch-suspended): Remember and restore
10253         multi-isearch variables.  (Bug#21663)
10255 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
10257         Fix Eshell display when RTL characters are involved
10259         * lisp/eshell/esh-mode.el (eshell-mode): Set
10260         'bidi-paragraph-direction' to 'left-to-right'.  (Bug#23652)
10262 2016-06-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
10264         Make ses-jump with completing input.
10266         * lisp/ses.el (ses-jump): Make symbol input completing against list of
10267           named cells.
10269 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10271         Port angle-bracket TZ settings to MS-Windows
10273         * doc/lispref/os.texi (Time Zone Rules): Document MS-Windows
10274         lack of support for numeric time zone abbreviations.
10275         * src/w32.c (sys_putenv): Convert angle-bracket TZ syntax
10276         to MS-compatible syntax if possible, and to "ZZZ" otherwise.
10277         Problem reported by Kazuhiro Ito (Bug#23600).
10279 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10281         Avoid delving into Git internals for version
10283         * lisp/loadup.el (exec-path): Set it to nil later, so that
10284         emacs-repository-get-version can invoke git commands in the PATH.
10285         * lisp/version.el (emacs-repository--version-git-1): Remove.
10286         (emacs-repository-get-version): Let Git do it rather than
10287         delving into Git internals.
10289 2016-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10291         * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Expand less
10293 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10295         Fix emacs-repository-get-version with packed .git
10297         * lisp/version.el (emacs-repository-get-version):
10298         Parse .git/packed-refs if it exists.
10299         Problem reported by Martin Rudalics in:
10300         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00554.html
10302 2016-06-01  Michael Albinus  <michael.albinus@gmx.de>
10304         Minor change in tramp.texi
10306         * doc/misc/tramp.texi (Password handling): Do not discuss
10307         anymore how to get password-cache.el.  It is bundled with
10308         Emacs.
10310 2016-06-01  Alan Mackenzie  <acm@muc.de>
10312         Correct fontification and indentation of C++'s "constexpr" expressions
10314         * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "constexpr".
10315         (c-modifier-kwds): Add "constexpr".
10317 2016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
10319         Cosmetic change to kinsoku-eol.  (tiny change)
10321         * lisp/international/kinsoku.el (kinsoku-eol): Make the
10322         order of characters match with the comments.
10324 2016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
10326         Add HIRAGANA ITERATION MARK to japanese-kana-table.  (tiny change)
10328         * lisp/language/japan-util.el (japanese-kana-table): Add an
10329         entry for HIRAGANA ITERATION MARK (U+309D).
10330         (japanese-alpha-numeric-table): Fix docstring.
10332 2016-05-31  K. Handa  <handa@gnu.org>
10334         Fix incomplete handling of translation table in a coding system.
10336         * coding.c (get_translation): New arg NCHARS.  Even if TRANS
10337         is an alist, return a character or a vector of character.
10338         (produce_chars): Adjust for the above change.
10339         (consume_chars): Likewise.
10341 2016-05-31  Michael Albinus  <michael.albinus@gmx.de>
10343         Improve robustness for out-of-band copy in Tramp
10345         * lisp/net/tramp-adb.el (tramp-adb-execute-adb-command)
10346         * lisp/net/tramp-cmds.el (tramp-append-tramp-buffers)
10347         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
10348         Cosmetic changes.
10350         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
10351         Use local `default-directory'.  Simplify command to send.
10352         Don't check return code, this was already done in
10353         `tramp-process-actions'.
10354         (tramp-get-inline-coding): Don't set `default-directory'.
10356         * lisp/net/tramp.el (tramp-action-out-of-band):
10357         Throw `out-of-band-failed'.
10358         (tramp-process-actions): Handle `out-of-band-failed'.
10359         (tramp-call-process, tramp-call-process-region):
10360         Use local `default-directory'.
10362 2016-05-31  Paul Eggert  <eggert@cs.ucla.edu>
10364         Merge from origin/emacs-25
10366         788c9b6 ; Spelling fix
10367         25c4a30 * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-li...
10368         0992ec3 Correct cl-flet usage (Bug#22317)
10369         50caae3 Release MH-E manual version 8.6
10370         602bb40 Update MH-E's documentation about HTML renderers
10371         89018f0 Fx the we->the typo
10372         845ee57 Restore frames into the current display by default
10373         ee28b4c * lisp/recentf.el (recentf-open-files-item): Quick fix for (b...
10374         01c3cd1 etc/TODO: Remove out-of-place issue
10375         5e18486 Clarify doc string of 'file-name-sans-extension'
10376         bffda22 Fix the MSDOS build
10377         f907f98 * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Ca...
10378         1a2ffd0 * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23...
10379         f7ffc4b Fix infloop in 'number-sequence'
10380         4ab2673 ; Spelling and punctuation fixes in comments
10381         71c152e * lisp/emacs-lisp/find-func.el (find-function-library):
10383 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10385         * lisp/emacs-lisp/autoload.el: Use radix-tree.
10387          (autoload--make-defs-autoload): Rewrite.
10388         (autoload--split-prefixes-1): Remove.
10389         (autoload-def-prefixes-max-entries): Rename from
10390         autoload-defs-autoload-max-size.
10391         (autoload-popular-prefixes): Remove.
10392         (autoload-def-prefixes-max-length): New const.
10394         * lisp/emacs-lisp/radix-tree.el: New file.
10396 2016-05-30  Ken Brown  <kbrown@cornell.edu>
10398         * src/conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Increase.
10400 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10402         Omit IF_LINT code that no longer seems needed
10404         Nowadays GCC is smarter, or the Emacs code has mutated, or both,
10405         and now is as good a time as any to remove uses of IF_LINT that
10406         now seem to be unnecessary.
10407         * lib-src/emacsclient.c (set_local_socket):
10408         * lib-src/movemail.c (main) [MAIL_USE_MAILLOCK && HAVE_TOUCHLOCK]:
10409         * src/buffer.c (fix_start_end_in_overlays, fix_overlays_before):
10410         * src/casefiddle.c (casify_region):
10411         * src/charset.c (load_charset_map):
10412         * src/coding.c (decode_coding_object, encode_coding_object):
10413         * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10414         (cons_to_unsigned, cons_to_signed):
10415         * src/frame.c (make_frame, x_set_frame_parameters):
10416         * src/keyboard.c (read_event_from_main_queue):
10417         * src/regex.c (regex_compile):
10418         * src/syntax.c (back_comment):
10419         * src/window.c (Frecenter):
10420         * src/xfaces.c (Fx_list_fonts):
10421         Remove IF_LINT that no longer seems necessary.
10422         * src/image.c (png_load_body, jpeg_load_body): Simplify use of IF_LINT.
10423         * src/keyboard.c (read_char): Use IF_LINT (volatile) rather than
10424         a pragma dance to pacify GCC -Wclobbered.
10425         * src/xdisp.c (x_produce_glyphs): Rewrite to avoid need for IF_LINT.
10427         * src/xterm.c (x_connection_closed): Now _Noreturn, which should
10428         mean we do not need IF_LINT any more.
10429         (x_io_error_quitter): Now _Noreturn.  Put an 'assume (false)’
10430         at the end, to forestall warnings from older compilers.
10432 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10434         Port --enable-gcc-warnings to Cygwin, FreeBSD
10436         These platforms have a bug where _Noreturn is empty when 'lint' is
10437         defined.  Problem reported by Ken Brown (Bug#23640).
10438         * configure.ac (GCC_LINT): Rename from 'lint'.
10439         * src/conf_post.h (IF_LINT): Use GCC_LINT, not just 'lint’.
10441 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10443         Update from gnulib
10445         This incorporates:
10446         2016-05-30 Use GCC_LINT, not lint
10447         2016-05-29 secure_getenv: Port to many more platforms.
10448         * doc/misc/texinfo.tex, lib/secure_getenv.c, lib/verify.h:
10449         * m4/secure_getenv.m4: Copy from gnulib.
10451 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10453         * lisp/emacs-lisp/pcase.el: Undo last change's spurious changes
10455         * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates): Add `atom'.
10457 2016-05-30  Ken Brown  <kbrown@cornell.edu>
10459         * src/regex.c (IF_LINT): Remove; it’s in conf_post.h
10461 2016-05-30  Michael Albinus  <michael.albinus@gmx.de>
10463         Fix Bug#23631 for Tramp
10465         * lisp/net/tramp-adb.el (tramp-adb-handle-file-name-all-completions)
10466         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions)
10467         * lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions):
10468         Fix caching problems.
10470         * lisp/net/tramp-sh.el (tramp-perl-file-name-all-completions): Simplify.
10472         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
10473         Move duplicate deletion ...
10474         (tramp-smb-handle-file-name-all-completions): ... here.
10476         * lisp/net/tramp.el (tramp-handle-file-name-completion):
10477         Handle `completion-ignored-extensions'.  (Bug#23631)
10479         * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
10480         Test also `completion-regexp-list' and `completion-ignored-extensions'.
10482 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
10484         * lisp/wid-edit.el (link): Remove :follow-link property (bug#22434)
10486         * lisp/recentf.el (recentf-dialog-mode-map): Remove unecessary mapping.
10488 2016-05-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10490         Fix up remainder of the mml property change
10492         * lisp/gnus/message.el (message-send-mail): Use the renamed
10493         mml-buffer-substring-no-properties-except-some function.
10494         (message-send-news): Ditto.
10496 2016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
10498         Allow preserving EXIF rotations when sending HTML messages
10500         * lisp/gnus/mml.el (mml--possibly-alter-image): Allow image
10501         rotation if you have exiftool installed and the image format
10502         supports it.
10503         (mml-expand-html-into-multipart-related): Use it.
10504         (mml-buffer-substring-no-properties-except-some): Renamed and
10505         copy display properties, too.
10507 2016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
10509         Make message-toggle-image-thumbnails work better
10511         * lisp/gnus/message.el (message-toggle-image-thumbnails): Use
10512         `insert-image' instead of `put-image' to make it possible to
10513         edit the resulting text in a sensible manner.
10515 2016-05-29  Alan Mackenzie  <acm@muc.de>
10517         Rationalize the use of c-new-BEG and c-new-END in CC Mode.
10519         Remove the now redundant c-old-BOM and c-old-EOM.
10521         * lisp/progmodes/cc-engine.el (c-macro-cache-syntactic): Change and simplify
10522         meaning.
10523         (c-macro-cache-no-comment): New variable.
10524         (c-invalidate-macro-cache, c-beginning-of-macro, c-end-of-macro): incorporate
10525         the new c-macro-cache-no-comment.
10526         (c-syntactic-end-of-macro): Make better use of c-macro-cache-syntactic.
10527         (c-no-comment-end-of-macro): New function.
10529         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
10530         c-extend-font-lock-region-for-macros to C/C++/ObjC value.
10532         * lisp/progmodes/cc-mode.el (c-old-BOM, c-old-EOM): Remove.
10533         (c-extend-region-for-CPP): Put results in c-new-BEG/END rather than
10534         c-old-BOM/EOM.
10535         (c-extend-font-lock-region-for-macros): Simplify meaning, no longer returning
10536         a cons for the new region, since the function is now called as an after-change
10537         function.  No longer adjust c-new-END for the length of inserted/deleted
10538         text.  Move the size restrictions on macros to here from
10539         c-neutralize-syntax-in-and-mark-CPP.
10540         (c-neutralize-syntax-in-and-mark-CPP): No longer adjust c-new-BEG/END here.
10541         Use c-no-comment-end-of-macro rather than c-syntactic-end-of-macro to find the
10542         upper boundary to "neutralize" syntactically obtrusive characters.
10543         (c-change-expand-fl-region): Don't set c-new-END to next BOL when already at
10544         one.
10546 2016-05-28  Ken Brown  <kbrown@cornell.edu>
10548         Avoid compiler warnings
10550         * src/cygw32.c (chdir_to_default_directory): Use "void" as
10551         argument list.  Use SSDATA instead of SDATA.
10553         * src/unexcw.c (fixup_executable): Use %td as format specifier for
10554         argument of type ptrdiff_t.  Use %zu for argument of type size_t.
10556 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
10558         Fix 'next-line' and 'previous-line' during keyboard macro
10560         * lisp/simple.el (line-move-visual): Handle the case when point
10561         moves outside of the visible portion of the buffer while executing
10562         a keyboard macro.  (Bug#13452)  (Bug#23551)  (Bug#23555)
10564 2016-05-28  Alan Mackenzie  <acm@muc.de>
10566         C++ Mode: attribute in class declaration fouls up indentation.  Fix!
10568         * lisp/progmodes/cc-engine.el (c-looking-at-decl-block): Add code to skip
10569         back over noise clauses and attribute clauses.
10571         * lisp/progmodes/cc-langs.el (c-paren-nontype-key): New language variable.
10573 2016-05-28  Ken Olum  <kdo@cosmos.phy.tufts.edu>
10575         Prevent locked-file errors in Rmail
10577         * lisp/mail/rmail.el (rmail-get-new-mail-1): Lock file before
10578         calling 'rmail-insert-inbox-text'.  Unlock if
10579         'rmail-insert-inbox-text' doesn't modify buffer.
10580         (rmail-insert-inbox-text): Remove lock-checking code.  (Bug#17706)
10582 2016-05-28  Michael Albinus  <michael.albinus@gmx.de>
10584         Sync with Tramp repository.
10586         * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
10587         * lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process)
10588         * lisp/net/tramp-smb.el (tramp-smb-handle-start-file-process):
10589         Create BUFFER if it doesn't exist.  Reported by Nikolay
10590         Kudryavtsev <nikolay.kudryavtsev@gmail.com>.
10592         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-attributes)
10593         (tramp-gvfs-file-attributes-with-gvfs-ls-regexp)
10594         (tramp-gvfs-file-attributes-with-gvfs-info-regexp): New defconst.
10595         (tramp-gvfs-get-directory-attributes)
10596         (tramp-gvfs-get-root-attributes)
10597         (tramp-gvfs-get-file-attributes): New defun.
10598         (tramp-gvfs-handle-file-attributes)
10599         (tramp-gvfs-handle-file-name-all-completions): Use them.
10600         (tramp-gvfs-handle-file-directory-p): Use `file-truename'.
10601         (tramp-gvfs-maybe-open-connection): Set :noquery flag for process.
10602         (tramp-gvfs-send-command): Add locale settings to `process-environment'.
10603         (top): Suppress D-Bus error messages during zeroconf initialization.
10605         * lisp/net/tramp.el (tramp-unknown-id-string)
10606         (tramp-unknown-id-integer): New defconst.
10607         (tramp-check-cached-permissions)
10608         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes)
10609         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
10610         (tramp-convert-file-attributes, tramp-get-remote-uid)
10611         (tramp-get-remote-gid): Use them.
10613         * lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
10614         Rename from `tramp-color-escape-sequence-regexp'.
10615         (tramp-sh-handle-insert-directory)
10616         (tramp-convert-file-attributes): Adapt callees.
10617         (tramp-device-escape-sequence-regexp): New defconst.
10618         (tramp-wait-for-output): Use it.  Reported by Matthías Páll
10619         Gissurarson <icetritlo@gmail.com>.
10621         * lisp/net/tramp-smb.el (tramp-smb-handle-file-name-all-completions):
10622         Simplify.
10624         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
10625         (tramp-test28-shell-command):
10626         Use `tramp-display-escape-sequence-regexp'.
10628 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10630         Don’t document declare-function internals
10632         Suggested by Stefan Monnier in:
10633         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00618.html
10634         * doc/lispref/functions.texi (Declaring Functions):
10635         * lisp/subr.el (declare-function):
10636         * lisp/emacs-lisp/bytecomp.el:
10637         (byte-compile-macroexpand-declare-function):
10638         Document as (fn file &optional arglist fileonly)
10639         even though it is really (fn file &rest args).
10641 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10643         * src/puresize.h (BASE_PURESIZE): Increase it some more.
10645 2016-05-27  Glenn Morris  <rgm@gnu.org>
10647         * src/puresize.h (BASE_PURESIZE): Increase it by a little bit.
10649         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Tweak previous to
10650         avoid build failure.
10652 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10654         Port to platforms where rlim_max < 0
10656         * src/emacs.c (main): Do not treat a negative rlim_max as a limit;
10657         this can happen if a special value like RLIM_INFINITY is negative.
10659 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10661         Robustify stack-size calculation
10663         * src/emacs.c: Include getpagesize.h.
10664         (main): Check for integer overflow when computing stack size.
10665         Round new rlim_cur to pagesize boundary on all platforms, as this
10666         is easy and would have prevented Bug#23622.  If setrlimit
10667         fails, use current limit to determine re_max_failures.
10669 2016-05-27  Ken Brown  <kbrown@cornell.edu>
10671         Adjust filenotify-tests on Cygwin
10673         * test/lisp/filenotify-tests.el (file-notify--test-timeout):
10674         Remove special case for Cygwin.
10675         (file-notify-test07-backup): Update expected results on Cygwin.
10677 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10679         Improve define-function omitted-arg documentation
10681         * doc/lispref/functions.texi (Declaring Functions):
10682         * lisp/subr.el (declare-function):
10683         Be clearer when documenting omitted args for define-function.
10685 2016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10687         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add docstring to accessors.
10689 2016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10691         * lisp/subr.el (definition-prefixes): Expand docstring
10693         * lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
10694         Remove unused function.
10696 2016-05-27  Phillip Lord  <phillip.lord@russet.org.uk>
10698         Fix broken viper deactivation
10700         * lisp/emulation/viper.el (viper--deactivate-advice-list): Destructure
10701           args to advice-remove.
10702           (viper--advice-add): Use cons not list.
10704         Addresses bug#23625
10706 2016-05-27  Mark Oteiza  <mvoteiza@udel.edu>
10708         Preserve buffer point in windows by default (Bug#4041).
10710         * doc/lispref/windows.texi: Mention new default.
10711         * etc/NEWS: Mention new default.
10712         * lisp/window.el (switch-to-buffer-preserve-window-point): Default to t.
10714 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10716         Fix byte-compiler pacification for declare-function
10718         Problem reported by Michael Heerdegen in:
10719         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00590.html
10720         * lisp/emacs-lisp/bytecomp.el:
10721         (byte-compile-macroexpand-declare-function):
10722         Revert signature to previous value.
10723         * lisp/subr.el (declare-function): Change signature to
10724         match the reverted signature used in the byte compiler.
10726 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10728         Update texinfo.tex
10730         This fixes Bug#23611 in a different (and presumably better) way.
10731         * doc/misc/texinfo.tex: Update from gnulib.
10733 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10735         Pacify 'make check-declare'
10737 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10739         Repair damage from emacs-25 merge
10741         * test/lisp/character-fold-tests.el:
10742         Remove, as it was renamed to test/lisp/char-fold-tests.el.
10743         * test/lisp/emulation/viper-tests.el:
10744         Rename from test/automated/viper-tests.el.
10746 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10748         Merge from origin/emacs-25
10750         c3489d0 * lisp/w32-fns.el (set-message-beep, w32-get-locale-info) (w3...
10751         a4d882c Correct old cell name unbinding when renaming cell.
10752         6c12c53 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
10753         0be6725 Document problem: slow screen refresh on missing font.
10754         853b9b9 * admin/admin.el (add-release-logs): Basic check of existing ...
10755         5fa80cf * build-aux/gitlog-to-emacslog: Handle empty generated Change...
10756         3c79e51 * admin/admin.el (add-release-logs): Generate ChangeLog if ne...
10757         42275df * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
10758         3f4a9d9 * admin/authors.el (authors): First update the ChangeLog.
10759         897fb6f ; 'Changes from the pre-25.1 API' copyedits
10760         825ca25 Rename vc-stay-local back to vc-cvs-stay-local
10761         4efb3e8 * doc/emacs/files.texi (Comparing Files): * doc/emacs/trouble...
10762         b995d1e * doc/misc/eww.texi (Advanced): Fix xref.
10763         2e589c0 Fix cross-references between manuals
10764         f3d2ded * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to ...
10765         906c810 ; * admin/release-process: Move etc/HISTORY from here... ; * ...
10766         bea1b65 * admin/admin.el (add-release-logs): Also update etc/HISTORY.
10767         503e752 ; * CONTRIBUTE: Fix a typo.
10768         fbfd478 Avoid aborting due to errors in arguments of 'set-face-attrib...
10769         bdfbe6d ; * admin/release-process: Copyedits.
10770         44a6aed ; * test/automated/data-tests.el: Standardize license notice.
10771         c33ed39 ; * test/automated/viper-tests.el: Standardize license notice.
10772         df4a14b Add automated test for viper-tests.el
10773         c0139e3 Fix viper undo breakage from undo-boundary changes
10774         920d76c Fix reference to obsolete fn ps-eval-switch
10775         18a9bc1 Do not trash symlinks to init file
10776         2671179 Don't print the "decomposition" line for control chars in wha...
10777         869092c Bring back xterm pasting with middle mouse
10778         5ab0830 Provide workaround for xftfont rendering problem
10779         c9f7ec7 * lisp/desktop.el: Disable restore frameset if in non-graphic...
10780         30989a0 Mention GTK+ problems in etc/PROBLEMS
10781         421e3c4 * lisp/emacs-lisp/package.el (package-refresh-contents):
10782         dadfc30 Revert "epg: Add a way to detect gpg1 executable for tests"
10783         e41a5cb Avoid errors with Czech and Slovak input methods
10784         d4ae6d7 epg: Add a way to detect gpg1 executable for tests
10785         ebc3a94 * lisp/emacs-lisp/package.el: Fix free variable warnings.
10786         6e71295 * lisp/emacs-lisp/package.el (package--with-response-buffer):
10787         c45d9f6 Improve documentation of 'server-name'
10788         3b5e38c Modernize ASLR advice in etc/PROBLEMS
10789         1fe1e0a * lisp/char-fold.el: Rename from character-fold.el.
10791 2016-05-26  Eli Zaretskii  <eliz@gnu.org>
10793         Avoid byte-compiler warnings due to 'declare-function'
10795         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
10796         (w32-get-valid-locale-ids):
10797         * lisp/progmodes/js.el (ido-mode): Specify arglist in
10798         'declare-function' forms, to avoid byte-compiler warnings.
10800 2016-05-26  Glenn Morris  <rgm@gnu.org>
10802         * lisp/info.el (Info-default-directory-list): Don't check /share,info.
10804         No-one puts info pages there.  If /share does exist, it's likely to
10805         contain remote file systems where access could be slow.
10807 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10809         Merge from origin/emacs-25
10811         2d76405 etc/AUTHORS: Update the AUTHORS file
10813 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10815         Merge from origin/emacs-25
10817         06cb28f Fix bug#23462: Crash when iconifying frame on OS X.
10819 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10821         Merge from origin/emacs-25
10823         939eb75 Fix bug in default setting of 'ps-paper-type'
10825 2016-05-26  Glenn Morris  <rgm@gnu.org>
10827         * lisp/info.el (Info-default-directory-list): Remove obsolete suffixes.
10829 2016-05-26  Michael Albinus  <michael.albinus@gmx.de>
10831         Fix Bug#23614.
10833         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
10834         Let-bind `process-coding-system-alist' in order to suppress
10835         the value for "cmdproxy".
10837         * lisp/net/tramp.el (tramp-encoding-shell):
10838         `w32-shell-name' is a function.
10839         (tramp-encoding-command-switch)
10840         (tramp-encoding-command-interactive): Use `w32-shell-dos-semantics'.
10842         * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
10843         Suppress some tests on MS Windows.  (Bug#23614)
10845 2016-05-26  Stephen Berman  <stephen.berman@gmx.net>
10847         hl-line.el: Fix flickering of highlighted line (bug#23510)
10849         * lisp/hl-line.el (hl-line-maybe-unhighlight)
10850         (global-hl-line-highlight-all)
10851         (global-hl-line-maybe-unhighlight): New functions.
10852         (hl-line-overlay-buffer): New variable.
10853         (hl-line-mode): Use it.  Replace hl-line-unhighlight on
10854         pre-command-hook by hl-line-maybe-unhighlight on
10855         post-command-hook, to prevent hl-line from flickering.
10856         Adjust document string.
10857         (global-hl-line-mode): Use global-hl-line-highlight-all to
10858         simultaneously highlight the current line in all live windows.
10859         Replace global-hl-line-unhighlight on pre-command-hook by
10860         global-hl-line-maybe-unhighlight on post-command-hook, to
10861         prevent global-hl-line from flickering.  Remove
10862         global-hl-line-unhighlight from change-major-mode-hook on
10863         disabling the mode.  Adjust document string.
10865 2016-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
10867         Make autoloads populate a new definition-prefixes table
10869         * lisp/subr.el (definition-prefixes): New hash table.
10870         (register-definition-prefixes): New function.
10872         * lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): New var.
10873         (autoload--split-prefixes-1, autoload--split-prefixes)
10874         (autoload--make-defs-autoload): New functions.
10875         (autoload-defs-autoload-max-size, autoload-popular-prefixes): New vars.
10876         (autoload-generate-file-autoloads): Obey autoload-compute-prefixes.
10877         (update-directory-autoloads): Don't touch loaddefs.el if the set of
10878         autoloads hasn't changed (i.e. if only the timestamp would change).
10880         * lisp/loadup.el: Purify definition-prefixes.
10882         * lisp/w32-fns.el: Keep name space clean.
10883         (w32-set-default-process-coding-system): Rename from
10884         set-default-process-coding-system.
10885         (w32-set-system-coding-system): Rename from set-w32-system-coding-system.
10887 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10889         Allow network-stream-tests to work for out-of-tree builds
10891         * test/lisp/net/network-stream-tests.el
10892         (network-stream-tests--datadir): New defconst.
10893         (make-tls-server): Use it.
10895 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10897         Fix failing echo-server-nowait test
10899         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
10900         Specify IPv4 for the client, to match the family of the server.
10901         (Bug#23606)
10903 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10905         Allow shr-tests to work for out-of-tree builds
10907         * test/lisp/net/shr-tests.el (shr-tests--datadir): New defconst.
10908         (shr-test, rendering): Use it.
10910 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10912         Update allowable arguments for open-network-stream
10914         * src/coding.c (Ffind_operation_coding_system): Allow t as a
10915         target for open-network-stream.  (Bug #23540)
10917 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
10919         Make js-mode's syntax highlighting work again
10921         * lisp/progmodes/js.el (js-mode): Fix the assigned
10922         font-lock-defaults value (bug#23603).
10924 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10926         * lisp/progmodes/cc-mode.el: Add minor comments
10928         (c-change-expand-fl-region): Mark args as unused.
10930 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10932         * lisp/url/url-http.el: Use lexical-binding
10934         (url-http-simple-after-change-function): Use buffer-size rather than `nd'.
10935         (url-http-wait-for-headers-change-function): Remove unused var
10936         `content-length'.
10937         (url-http): Remove unused vars `host' and `port'.
10939 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10941         * lisp/widget.el (define-widget): Use `declare' (which does work now).
10943         (widget-plist-member): Mark as obsolete.
10945 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10947         * lisp/image.el: Use lexical-binding
10949         (image-scaling-factor, imagemagick-types-inhibit)
10950         (imagemagick-enabled-types): Remove redundant :group.
10951         (image--get-image): Apply de-Morgan and use car-safe.
10952         (image-compute-scaling-factor): Use the argument.
10954 2016-05-23  Glenn Morris  <rgm@gnu.org>
10956         * lisp/image.el (image--get-image): Remove nonsensical code.
10958         * lisp/image.el (image--get-image): Avoid requiring a library for
10959         one trivial operation.
10961 2016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
10963         Don’t use only last protocol from getaddrinfo
10965         Problem reported by Ken Brown in:
10966         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00483.html
10967         * src/process.c (conv_addrinfo_to_lisp): New function.
10968         (connect_network_socket): Arg is now a list of addrinfos, not
10969         merely IP addresses.  All uses changed.  Use protocol from
10970         each addrinfo.
10971         (Fmake_network_process): Accumulate protocols into addrinfos
10972         rather than just using the last one found.
10973         (check_for_dns): Accumulate protocols here, too.
10974         * src/process.h (struct Lisp_Process): Remove ai_protocol;
10975         no longer needed.
10977 2016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
10979         Fix seq requirement that broke bootstrap
10981         * lisp/image.el (image--get-image): Require seq here, not at the
10982         top level, to avoid ‘(require seq) while preparing to dump’ while
10983         bootstrapping.  Suggested by Tino Calancha in:
10984         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00477.html
10986 2016-05-22  Nicolas Petton  <nicolas@petton.fr>
10988         Add missing dependencies to seq.el
10990         * lisp/emacs-lisp/find-func.el:
10991         * lisp/ibuffer.el:
10992         * lisp/image.el: Require seq.
10994 2016-05-22  Alp Aker  <alp@food52.com>
10996         * src/process.c (SOCK_NONBLOCK): Fix typo.
10998 2016-05-22  Etienne Prud’homme  <e.e.f.prudhomme@gmail.com>
11000         Add completion of colors in CSS mode
11002         * lisp/textmodes/css-mode.el (css-value-class-alist): Add CSS colors
11003         from "CSS Color Module Level 3".
11005         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
11006         Update test.
11008 2016-05-21  Paul Eggert  <eggert@cs.ucla.edu>
11010         Prefer SOCK_NONBLOCK to O_NONBLOCK
11012         * src/process.c (SOCK_NONBLOCK): Define to 0 if not already defined.
11013         (connect_network_socket): Create the socket with SOCK_NONBLOCK, to
11014         avoid an fcntl with O_NONBLOCK if SOCK_NONBLOCK works.  Put the
11015         SOCK_DGRAM check a bit later, to keep the logic cleaner, as
11016         the order does not matter here.
11018 2016-05-21  Alan Third  <alan@idiocy.org>
11020         Fix bug#16856, cursor leaves garbage in fringe on OS X.
11022         * src/nsterm.m (ns_draw_window_cursor): Prevent the cursor from
11023         being drawn outside the text area.
11025 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
11027         Fix compiler warnings in the MinGW build
11029         * configure.ac [mingw32]: Don't add -Wpointer-sign, and add
11030         -Wno-pointer-sign, to keep the noise level down.
11032         * nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
11033         -Wredundant-decls, as that produces a lot of noise due to
11034         redeclaration of time-related functions by gnulib.
11035         * nt/runemacs.c (set_user_model_id): Fix argument type of
11036         'SetCurrentProcessExplicitAppUserModelID'.
11038         * src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
11039         declare 'dpyinfo', as it is unused.
11040         (xpm_load): Fix warnings about pointer signedness.
11041         * src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
11042         prototypes.
11043         (sys_spawnve): Avoid warnings about discarding 'const' qualifier.
11044         (sys_select): Provide prototype.
11045         (g_b_init_compare_string_w): Move declaration to file scope.
11046         * src/w32heap.c (dumped_data_commit): Now static.
11047         (FREEABLE_P): Avoid warnings about pointer comparison with integer.
11048         (mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
11049         * src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
11050         (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
11051         Provide prototypes.
11052         * src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
11053         redundant prototypes.
11054         (w32_get_internal_run_time, map_w32_filename): Provide prototype.
11055         (init_environment, sys_ctime): Avoid warnings about discarding
11056         'const' qualifier.
11057         Include utimens.h.
11058         (sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
11059         (sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
11060         (sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
11061         prototypes.
11062         (sys_rename_replace): Use %d to avoid compiler warnings.
11063         (_wsa_errlist): Make the message text 'const char *', to avoid
11064         compilation warnings.
11065         (dynlib_reset_last_error): Move prototype to file scope.
11066         (w32_get_resource): First argument is now 'const char *'.
11067         * src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
11068         (otf_features): Second argument is no 'const char *'.
11069         * src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
11070         (x_set_window_size): Remove redundant prototypes.
11071         (XChangeGC, XGetGCValues, w32_draw_underwave)
11072         (w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
11073         (x_calc_absolute_position, x_destroy_window): Now static.
11074         (menubar_selection_callback): Move prototype to file scope.
11075         * src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
11076         declaration.
11077         (w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
11078         (w32font_full_name): Fix warnings about implicit conversion of
11079         'float' to 'double'.
11080         * src/w32reg.c (w32_get_rdb_resource): Fix warnings about
11081         discarding 'const' qualifier.
11082         * src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
11083         (set_frame_menubar): Remove redundant prototypes.
11084         (menubar_selection_callback, w32_menu_display_help): Provide
11085         prototypes.
11086         (simple_dialog_show): Avoid warnings about discarding 'const'
11087         qualifier.
11088         * src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
11089         (free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
11090         (x_set_tool_bar_lines, x_set_internal_border_width): Remove
11091         redundant prototypes.
11092         (current_popup_menu): Remove redundant declaration.
11093         (colormap_t): Member 'name' is now 'const char *'.
11094         (add_system_logical_colors_to_map): Fix signed/unsigned warnings.
11095         (x_decode_color, x_set_border_pixel)
11096         (x_clear_under_internal_border, x_set_name, hook_w32_key)
11097         (reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
11098         static.
11099         (w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
11100         (w32_msg_worker, w32_last_error): Provide prototypes.
11101         (funhook, lookup_vk_code): Avoid warnings about missing
11102         parentheses.
11103         (x_default_font_parameter, Fw32_notification_notify): Avoid
11104         warnings about discarding 'const' qualifier.
11105         (Fx_create_frame): Avoid warnings about empty body of 'else'.
11106         (x_screen_planes): Ifdef away unused function.
11107         (Fx_show_tip): Remove unused variables.
11108         (Fw32_battery_status): Avoid warnings about implicit promotion
11109         from float to double.
11110         (Fw32_notification_notify): Initialize 'timeout'.
11111         * src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
11112         define the TIMER_SETTIME_RUNNING value if it will be used.
11113         * src/w32notify.c (send_notifications): Ifdef away an empty if
11114         clause.  Remove unused variable.
11115         (watch_end, watch_completion): Provide prototypes.
11116         * src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
11117         * src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
11118         warning with pointer signedness.
11119         * src/gnutls.c (gnutls_x509_crt_get_signature)
11120         (gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
11121         don't load them from the GnuTLS library, as they are no longer
11122         used.
11123         * src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
11124         define, as it's unused.
11125         * src/unexw32.c (open_input_file, open_output_file)
11126         (close_file_data): Remove redundant prototypes.
11127         (_start): provide prototype.
11128         (mainCRTStartup): Move prototype to file level.
11129         (find_section): Use type-cast to shut up compiler warnings.
11130         (offset_to_section, relocate_offset): Now static.
11131         (find_section): First argument is now a 'const char *'.
11132         (offset_to_section): Ifdef away, as it's unused.
11133         * src/w32heap.h (find_section): Adjust prototype.
11134         * src/dynlib.c (dynlib_reset_last_error): Provide prototype.
11135         * src/dired.c (directory_files_internal_w32_unwind): Avoid
11136         warnings about missing prototypes.
11137         (is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
11138         (directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
11139         signedness.
11140         * src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
11141         Fix warnings about pointer signedness.
11142         * src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
11143         unused.
11144         * src/sysdep.c (_getpid): Remove redundant prototype.
11145         (sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
11146         [!MSDOS]: Don't define 'st', it's unused.
11147         (init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
11148         (str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
11149         * src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
11150         n_to_read, as it is not used.
11151         (MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
11152         * src/w32font.h (syms_of_w32font): Remove redundant prototype.
11153         * src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
11154         * src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
11155         not used by DOS_NT builds, to avoid compiler warnings.
11156         * src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
11157         declaration.
11158         * src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
11159         up compiler warnings.
11160         * src/w32term.h (x_set_window_size, x_get_focus_frame)
11161         (x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
11162         (x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
11163         (x_free_frame_resources, x_real_positions)
11164         (display_x_get_resource): Remove redundant prototypes.
11166         * lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
11167         (sys_rename, gettimeofday): Provide prototypes.
11168         * lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
11169         declarations.
11170         * lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
11171         (xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
11172         (close_winsock, initialize_sockets, w32_set_user_model_id)
11173         (w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
11174         prototypes.
11175         (w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
11176         difference.
11177         (w32_set_user_model_id): Update prototype of
11178         SetCurrentProcessExplicitAppUserModelID to avoid compiler
11179         warnings.
11180         (start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
11181         shut up compiler warnings.
11182         * lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
11184 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
11186         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
11188         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
11189         wrap on a whitespace character if it's followed by another
11190         whitespace character.  When returning under WORD_WRAP for a screen
11191         line that is continued, restore to wrap point when atpos/atx
11192         position would be displayed on the next screen line due to
11193         line-wrap.  (Bug#23570)
11195 2016-05-21  Puneeth Chaganti  <punchagan@muse-amuse.in>
11197         * lisp/svg.el (svg-create): Fix a typo: xmlsn -> xmlns.  (Bug#23589)
11199 2016-05-20  Andrew Hyatt  <ahyatt@gmail.com>
11201         Added tests for dos unibyte decoding.
11203         The underlying bug was previously fixed by Eli Zaretskii in commit
11204         c8109d9c4057d8cac79e2c139758cadd410e7446.
11206 2016-05-20  Philipp Stephani  <phst@google.com>
11208         Fix handling of ‘mouse-on-link-p’.
11210         If ‘mouse-on-link-p’ returns a string or vector, the first element
11211         is to be used as new event.  Translation to ‘mouse-2’ should only
11212         happen if the return value is not a string or vector.  See
11213         docstring of ‘mouse-on-link-p’ and Bug#23288.
11215         * lisp/mouse.el (mouse--down-1-maybe-follows-link): Process return
11216         value of ‘mouse-on-link-p’ according to documentation.
11218         * test/lisp/mouse-tests.el (bug23288-use-return-value)
11219         (bug23288-translate-to-mouse-2): Tests for Bug#23288.
11221 2016-05-20  Daiki Ueno  <ueno@gnu.org>
11223         epg: Add a way to detect gpg1 executable for tests
11225         Fixes bug#23561.
11227         * test/automated/epg-tests.el
11228         (epg-tests-program-alist-for-passphrase-callback): New
11229         constant.
11230         (epg-tests-find-usable-gpg-configuration): New function,
11231         renamed from `epg-tests-gpg-usable'.  All callers changed.
11232         (epg-tests-gpg-usable): Remove.
11234         * lisp/epg-config.el (epg-config--program-alist): Factor out
11235         constructor element to...
11236         (epg-config--configuration-constructor-alist): ...here.
11237         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
11238         and add PROGRAM-ALIST argument.
11240 2016-05-19  Mark Oteiza  <mvoteiza@udel.edu>
11242         Put point at beginning of display-time-world buffer.
11244         If display-time-world decides to popup vertically from the bottom of the
11245         frame and scroll-margin is nonzero, the top of the buffer contents are
11246         hidden due to scroll.
11247         * lisp/time.el (display-time-world-display): Move point to point-min
11248         after inserting contents.
11250 2016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11252         Allow null entries in face and image cache
11254         Problem reported by Tino Calancha (Bug#23580).
11255         * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID):
11256         Don’t assume that the result is non-null.
11257         * src/xdisp.c (fill_image_glyph_string):
11258         Restore check that image pointer is non-null.
11260 2016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11262         Fix flyspell highlighting
11264         Problem reported by Jim Meyering (Bug#23575).
11265         * src/xdisp.c (extend_face_to_end_of_line):
11266         Fix typo in previous change.
11268 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
11270         * lisp/server.el (server-name): Add autoload cookie.  (Bug#23576)
11272 2016-05-18  Sam Steingold  <sds@gnu.org>
11274         python-describe-at-point: add and bind
11276 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11278         ‘make check-declare’ now chatters less
11280         * etc/NEWS: Document this.
11281         * lisp/emacs-lisp/check-declare.el (check-declare-locate):
11282         Return relative names, not absolute.
11283         (check-declare-scan, check-declare-verify, check-declare-warn)
11284         (check-declare-file, check-declare-directory):
11285         Generate less chatter.  Use relative file names rather than
11286         absolute.  Don’t give up on computing a good file name for a
11287         diagnostic merely because the function name was bad.  Make
11288         malformed declarations more noticeable.  Don’t warn about
11289         "ext:..." declarations if check-declare-ext-errors is nil.
11290         (check-declare-errmsg): Remove.
11291         (check-declare-warn): New optional arg LINE.
11292         (check-declare-files): Put status into mode line rather than
11293         chattering.
11295 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11297         Pacify byte-compiler for byte-compile-macroexpand-declare-function
11299         * lisp/emacs-lisp/bytecomp.el: Change signature of
11300         byte-compile-macroexpand-declare-function to match that of
11301         declare-function.
11303 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11305         Pacify byte-compiler for with-wrapper-hook
11307         * lisp/subr.el (subr--with-wrapper-hook-no-warnings):
11308         New macro, split out from with-wrapper-hook.
11309         * lisp/abbrev.el (abbrev--default-expand):
11310         * lisp/minibuffer.el (completion--in-region):
11311         * lisp/simple.el (buffer-substring--filter):
11312         * lisp/subr.el (with-wrapper-hook):
11313         Use it.
11315 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11317         Pacify byte-compiler in lisp/url
11319         * lisp/url/url-misc.el, lisp/url/url-file.el (mm-disable-multibyte):
11320         Add decl.
11322 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11324         Port --enable-gcc-warnings to GCC 6.1
11326         * configure.ac (WERROR_CFLAGS): Omit -Wunused-const-variable=2.
11327         * lib-src/etags.c (LOOKING_AT, LOOKING_AT_NOCASE):
11328         Omit test whether pointer plus a constant equals a null pointer.
11329         * src/alloc.c (compact_small_strings):
11330         Avoid pointer arithmetic on null pointers.
11331         * src/alloc.c (mark_face_cache):
11332         * src/fontset.c (free_realized_fontsets, Fset_fontset_font):
11333         * src/fringe.c (draw_fringe_bitmap_1)
11334         (Fset_fringe_bitmap_face):
11335         * src/macfont.m (macfont_draw):
11336         * src/msdos.c (IT_set_face, IT_clear_screen):
11337         * src/nsfont.m (nsfont_draw):
11338         * src/nsterm.h (FRAME_DEFAULT_FACE):
11339         * src/nsterm.m (ns_draw_window_cursor)
11340         (ns_draw_vertical_window_border, ns_draw_window_divider)
11341         (ns_dumpglyphs_box_or_relief)
11342         (ns_maybe_dumpglyphs_background, ns_dumpglyphs_image)
11343         (ns_dumpglyphs_stretch):
11344         * src/w32term.c (w32_draw_vertical_window_border)
11345         (w32_draw_window_divider, x_set_mouse_face_gc):
11346         * src/xdisp.c (estimate_mode_line_height, init_iterator)
11347         (handle_face_prop, handle_single_display_spec, pop_it)
11348         (CHAR_COMPOSED_P, get_next_display_element)
11349         (next_element_from_display_vector, extend_face_to_end_of_line)
11350         (fill_gstring_glyph_string,BUILD_COMPOSITE_GLYPH_STRING):
11351         * src/xfaces.c (Finternal_merge_in_global_face, Fface_font)
11352         (lookup_named_face):
11353         * src/xterm.c (x_draw_vertical_window_border)
11354         (x_draw_window_divider, x_set_mouse_face_gc):
11355         Prefer FACE_OPT_FROM_ID to FACE_FROM_ID when the result might be null.
11356         * src/xterm.c (try_window_id):
11357         Redo loop to convince GCC 6.1 that it is null pointer safe.
11358         (x_color_cells):
11359         Use eassume as necessary to pacify GCC 6.1.
11360         * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID): Now returns non-null.
11361         (FACE_OPT_FROM_ID, IMAGE_OPT_FROM_ID): New macro, with the old
11362         behavior of the non-_OPT macro, to be used when the result
11363         might be a null pointer.
11364         * src/dispnew.c (buffer_posn_from_coords, marginal_area_string)
11365         [HAVE_WINDOW_SYSTEM]:
11366         * src/intervals.h (INTERVAL_WRITABLE_P):
11367         * src/term.c (turn_off_face):
11368         * src/xdisp.c (get_glyph_face_and_encoding, fill_image_glyph_string)
11369         (produce_image_glyph, produce_xwidget_glyph):
11370         * src/xfaces.c (lookup_named_face):
11371         Remove unnecessary test for null pointer.
11372         * src/keyboard.c (read_char): Suppress bogus -Wclobbered warning.
11373         * src/process.c (would_block): New function.
11374         (server_accept_connection, wait_reading_process_output, send_process):
11375         Use it.
11376         * src/xdisp.c (get_window_cursor_type, note_mouse_highlight):
11377         Prefer IMAGE_OPT_FROM_ID to IMAGE_FROM_ID when the result
11378         might be null.
11380 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11382         Sync from gnulib
11384         This incorporates:
11385         2016-05-17 manywarnings: update for GCC 6.1
11386         2016-05-13 intdiv0, memmem, nocrash, strcasestr, strstr: no exit
11387         * m4/manywarnings.m4, m4/nocrash.m4: Copy from gnulib.
11389 2016-05-16  Glenn Morris  <rgm@gnu.org>
11391         * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
11392         Include more details on hydra.
11394 2016-05-16  Alan Mackenzie  <acm@muc.de>
11396         Tidy up redundant code in cc-vars.el caused by mistake in emacs-25 -> master
11398 2016-05-16  Alan Mackenzie  <acm@muc.de>
11400         Fix spurious fontification of "for (; a * b;)" in CC Mode.
11402         This fixes bug #7918 (again).
11404         * lisp/progmodes/cc-engine.el (c-delq-from-dotted-list): New function.
11405         (c-forward-decl-or-cast-1): Return a 4 element list in place of the previous
11406         cons cell - additionally, return a flag indicating whether the declaration
11407         parsed might have been an expression, and the position of the type identifier
11408         in the said declaration.
11410         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): When
11411         c-forward-decl-or-cast-1 has indicated it might have parsed an expression,
11412         check for it being a spurious declaration in a "for" statement.
11414 2016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
11416         Pacify ‘make check-declare’
11418         * lisp/cedet/srecode/insert.el (data-debug-new-buffer)
11419         (data-debug-insert-stuff-list, data-debug-insert-thing):
11420         * lisp/emulation/viper-ex.el (viper-change-state-to-vi)
11421         (viper-change-state-to-emacs):
11422         * lisp/emulation/viper-macs.el (viper-change-state-to-vi):
11423         * lisp/org/ob-asymptote.el (orgtbl-to-generic):
11424         * lisp/org/ob-awk.el (orgtbl-to-generic):
11425         * lisp/org/ob-core.el (org-edit-src-code, orgtbl-to-generic):
11426         * lisp/org/ob-emacs-lisp.el (orgtbl-to-generic):
11427         * lisp/org/ob-exp.el (org-element-context):
11428         * lisp/org/ob-gnuplot.el (org-time-string-to-time)
11429         (orgtbl-to-generic):
11430         * lisp/org/ob-haskell.el (org-export-to-file):
11431         * lisp/org/ob-latex.el (org-create-formula-image)
11432         (org-latex-compile):
11433         * lisp/org/ob-python.el (run-python):
11434         * lisp/org/ob-sh.el (orgtbl-to-generic):
11435         * lisp/org/ob-tangle.el (org-link-escape, org-back-to-heading):
11436         * lisp/org/org-colview.el (org-agenda-redo):
11437         * lisp/org/org-feed.el (url-retrieve-synchronously):
11438         * lisp/org/org-info.el (Info-find-node):
11439         * lisp/org/org-list.el (org-previous-line-empty-p):
11440         * lisp/org/org-macs.el (org-string-match-p):
11441         * lisp/org/org.el (org-beamer-mode):
11442         Fix prototype to match current definition.
11443         * lisp/emacs-lisp/advice.el (function-called-at-point):
11444         * lisp/progmodes/prolog.el (compilation-shell-minor-mode):
11445         Fix typo: extra '.
11446         * lisp/emacs-lisp/cl-generic.el (cl-defmethod):
11447         Insert ,' to pacify check-declare.
11448         * lisp/org/ob-comint.el (tramp-flush-directory-property):
11449         * lisp/org/ob-tangle.el (org-babel-update-block-body):
11450         * lisp/org/org-bibtex.el (org-babel-trim):
11451         * lisp/org/org-pcomplete.el (org-export-backend-options):
11452         * lisp/org/org-protocol.el (org-publish-get-project-from-filename):
11453         Fix file name in declare-function.
11454         * lisp/org/ob-comint.el (with-parsed-tramp-file-name)
11455         * lisp/org/ob-core.el (with-parsed-tramp-file-name):
11456         * lisp/org/org.el (org-beamer-mode):
11457         * lisp/url/url-http.el (gnutls-negotiate):
11458         Append ‘t’ to declare-function, since the declaration isn’t a defun.
11459         * lisp/org/ob-core.el (show-all):
11460         Declare outline-show-all instead, since it is the
11461         non-obsolete version of this function.
11462         (org-save-outline-visibility): Remove; not needed.
11463         * lisp/org/ob-scheme.el (run-geiser, geiser-mode)
11464         (geiser-eval-region, geiser-repl-exit):
11465         * lisp/org/ox-org.el (htmlize-buffer):
11466         Prepend "ext:" to file name, since it is not part of Emacs.
11467         * lisp/org/ob-sh.el (org-babel-comint-in-buffer)
11468         * lisp/org/org-gnus.el (nnimap-group-overview-filename):
11469         Remove decl, since function was removed.
11470         * lisp/org/ob-sh.el (org-babel-comint-with-output):
11471         * lisp/org/org-macro.el (org-with-wide-buffer):
11472         Omit unnecessary (and mismatching) decl.
11473         * lisp/org/org-agenda.el (calendar-absolute-from-iso):
11474         * lisp/org/org-clock.el (calendar-iso-to-absolute):
11475         Declare calendar-iso-to-absolute instead, since it is the
11476         non-obsolete version of this function.
11477         * lisp/org/org-compat.el (w32-focus-frame):
11478         Remove decl, since function is now obsolete.
11480 2016-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
11482         :max-width/height fixes for shr after the scaling changes
11484         * lisp/net/shr.el (shr-rescale-image): Ensure that we respect
11485         max-width and max-height even after the scaling changes done
11486         earlier this year.
11488 2016-05-14  Eli Zaretskii  <eliz@gnu.org>
11490         Fix reading minibuffer input in viper-mode
11492         * lisp/emulation/viper-cmd.el (viper-read-string-with-history):
11493         Restore an assignment to viper-initial that got lost when
11494         viper-cmd.el was switched to lexical-binding.  (Bug#23536)
11496 2016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
11498         Port autogen.sh to Git 2.4
11500         Problem reported by Michael Brand in:
11501         http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00367.html
11502         * autogen.sh (git_config): Don't assume that git rev-parse
11503         groks --git-common-dir.
11505 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11507         Merge from origin/emacs-25
11509         6de0715 Properly reject malformed or empty package sigs
11510         edae7d9 Remove buggy non-native image scrolling
11512 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11514         Improve display of tex-verbatim and Info quoted
11516         Problem reported by Glenn Morris (Bug#19889).
11517         * doc/emacs/display.texi (Standard Faces):
11518         * doc/lispref/display.texi (Basic Faces):
11519         * etc/NEWS: Mention fixed-pitch-serif.
11520         * lisp/faces.el (face-font-family-alternatives):
11521         New family alias Monospace Serif.
11522         (fixed-pitch-serif): New face, which uses the new family.
11523         * lisp/info.el (Info-quoted):
11524         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
11525         * test/lisp/legacy/font-parse-tests.el (font-parse-tests--data):
11526         Add test case for Monospace Serif.
11528 2016-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
11530         * lisp/net/sieve-mode.el: Handle the text:... notation
11532         Get rid of redundant :group keywords.
11533         (sieve-mode-syntax-table): Move initialization into declaration.
11534         (sieve-syntax-propertize, sieve-syntax-propertize-text): New functions.
11535         (sieve-mode): Use them.
11537 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11539         Tweak check-declare-directory performance
11541         * lisp/emacs-lisp/check-declare.el (check-declare-directory):
11542         Use ‘find ... -exec ... +’ for speed.
11544 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11546         Sync from gnulib
11548         This incorporates a spelling fix, plus:
11549         2016-05-09 Fix undefined behaviour in gettext.h
11550         * lib/gettext.h, lib/mktime.c:
11551         Copy from gnulib.
11553 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11555         Merge from origin/emacs-25
11557         9c2a1a2 * doc/misc/texinfo.tex: Sync from gnulib.
11558         66cd4d8 * lisp/emacs-lisp/find-func.el (find-feature-regexp) (find-al...
11559         1a5a05c Do not mistake colon at the end of regexp for slash symbol
11560         4c5a00b Make package-install-from-buffer not move point
11561         9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion"
11562         f79c352 Redo the fix for bug#21839
11563         8d2f78c Don't treat JS spread as contination method call
11565 2016-05-12  Chris Feng  <chris.w.feng@gmail.com>
11567         Correct server/client address
11569         * src/process.c (Fmake_network_process): :local is for servers and :remote
11570         is for clients.
11572 2016-05-12  Ken Brown  <kbrown@cornell.edu>
11574         Autosave buffers on logout if HAVE_NTGUI
11576         * src/w32fns.c (w32_wnd_proc): Pass a WM_ENDSESSION message on to
11577         w32_read_socket.
11579         * src/w32term.c (w32_read_socket): Create an event of type
11580         END_SESSION_EVENT if a WM_ENDSESSION message is received.
11582         * src/termhooks.h [HAVE_NTGUI]: New event kind END_SESSION_EVENT.
11584         * src/keyboard.c [HAVE_NTGUI] (syms_of_keyboard): New symbol
11585         `end-session'.
11586         (kbd_buffer_get_event): Return an end-session event if an event of
11587         type END_SESSION_EVENT is read.
11588         (keys_of_keyboard): Bind the end-session event to kill-emacs in
11589         special-event-map.  (Bug#23483)
11591 2016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11593         * lisp/cedet/semantic/{db-el,symref}.el: Mark unused vars
11595         * lisp/cedet/semantic/db-el.el: Use _ to mark unused vars.
11596         (object-print): Use cl-call-next-method instead of call-next-method.
11597         * lisp/cedet/semantic/symref.el: Use _ to mark unused vars.
11599 2016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11601         * lisp/cedet/semantic: Silence some warnings
11603         * lisp/cedet/semantic/db-el.el (emacs-lisp-mode)
11604         (semanticdb-get-database-tables): Use make-instance to silence warnings.
11606         * lisp/cedet/semantic/symref.el: Require semantic/find since we use
11607         some macros from there.  Silence compilation warnings:
11608         Replace initargs with slot names in oref/oset.
11609         Move `SYMREF TOOLS' section earlier so definitions precede their use.
11611 2016-05-12  Lars Ingebrigtsen  <larsi@gnus.org>
11613         Support srcset in <img>
11615         * lisp/net/shr.el (shr--preferred-image): Allow <img> tags
11616         with srcset specifiers (bug#23459).
11618 2016-05-12  Michael Albinus  <michael.albinus@gmx.de>
11620         Do not autoload some functions of tramp.el
11622         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11623         Autoload a shortened version of this function, avoid recursive load.
11624         (tramp-completion-file-name-handler-alist)
11625         (tramp-completion-mode-p)
11626         (tramp-completion-handle-expand-file-name)
11627         (tramp-completion-handle-file-name-all-completions)
11628         (tramp-completion-handle-file-name-completion): Do not autoload.
11630 2016-05-12  Michael Albinus  <michael.albinus@gmx.de>
11632         Avoid recursive load of tramp.el
11634         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11635         Autoload a shortened version of this function, avoid recursive load.
11637 2016-05-11  Michael Albinus  <michael.albinus@gmx.de>
11639         Fix a problem of tramp-tests on hydra.
11641         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
11642         Nullify `tramp-default-method' due to hydra.
11644 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11646         Pacify byte-compiler in lisp/vc
11648         * lisp/vc/vc-bzr.el, lisp/vc/vc-cvs.el, lisp/vc/vc-hg.el:
11649         * lisp/vc/vc-rcs.el, lisp/vc/vc-src.el:
11650         Declare functions defined elsewhere, to forestall “might not
11651         be defined at runtime” warnings.
11653 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11655         Merge from origin/emacs-25
11657         d0d9f55 Allow newlines inside cl function arglists
11658         963541a Publicize cl--generic-all-functions
11659         3c581d5 ; Fix typo
11660         e58f900 Add some "safe-local-variable" declarations for compatibility...
11662 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11664         'text-quoting-style' now affects only ` and '
11666         Change 'text-quoting-style' so that it no longer affects
11667         formatting of curved quotes in format arguments to functions like
11668         'message'.  In particular, when this variable's value is 'grave',
11669         all quotes in formats are output as-is.
11670         * doc/lispref/help.texi (Keys in Documentation):
11671         * doc/lispref/strings.texi (Formatting Strings):
11672         * doc/lispref/tips.texi (Documentation Tips):
11673         * etc/NEWS:
11674         * src/doc.c (syms_of_doc): Document this.
11675         * lisp/help-fns.el (describe-function-1):
11676         * src/doc.c (text_quoting_style, Fsubstitute_command_keys)
11677         (syms_of_doc):
11678         * src/editfns.c (styled_format): Omit now-unnecessary code.
11679         * src/lisp.h (LEAVE_QUOTING_STYLE): Remove.
11681 2016-05-10  Alan Mackenzie  <acm@muc.de>
11683         Revert "Fix spurious fontification of "for (; a * b;)" in CC Mode."
11685         This reverts commit 89d1776b81ab552192ee41f13ce84ff86bda4556.  It is
11686         being reverted because it slowed down CC Mode's fontification too much
11687         (factor ~3).  It was the fix to bug #7918.
11689 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
11691         Move "Recent messages" earlier in report-emacs-bug
11693         * lisp/mail/emacsbug.el (report-emacs-bug): Move the "Recent
11694         messages" part earlier so that users can see it and remove it
11695         if they want.
11697 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11699         Pacify byte compiler in tramp.el
11701         * lisp/net/tramp.el (tramp-time-diff): Use `tramp-compat-funcall'.
11703 2016-05-09  Paul Eggert  <eggert@cs.ucla.edu>
11705         Merge from origin/emacs-25
11707         3b47898 Fix doc string in `insert'
11708         b479dea * doc/misc/emacs-mime.texi (time-date): Document now-builtins...
11709         cd27f73 Say 'All results processed' at the end
11710         4ffec91 Document automatic adjustment of process' logical window dime...
11711         dc66271 ; Fix typos and stylistic glitches in NEWS
11713 2016-05-09  Alan Mackenzie  <acm@muc.de>
11715         CC Mode now uses the new :after-hook feature of define-derived-mode
11717         It now runs internal variable setting functions after the mode hooks, no
11718         longer runs the mode hooks twice, and declares the configuration variables for
11719         noise macros and macros with semicolons as safe variables (when given suitable
11720         arguments).
11722         Fixes bug #16759 and bug #23476.
11724         * .dir-locals: Put the c-noise-macros-with-paren-names setting back into the C
11725         Mode value.
11727         * lisp/progmodes/cc-mode.el: (c-basic-common-init): Remove the call to
11728         c-make-macro-with-semi-re.
11729         (c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode): Move
11730         c-make-noise-macro-regexps and c-make-macro-with-semi-re (where appropriate)
11731         and c-update-modeline into the :after-hook form.  Remove the explicit settings
11732         of the syntax table, the abbreviation table and the local key map, since they
11733         duplicate forms generated by define-derived-mode.  Remove the explicit
11734         invocation of each mode's mode hook, since they duplicate ones generated by
11735         define-derived-mode.
11737         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
11738         functions.
11739         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
11740         save-local-variable property c-string-list-p.
11741         (c-macro-names-with-semicolon): give the save-local-variable property
11742         c-string-or-string-list-p.
11744         * doc/misc/cc-mode.texi: (Macros with ;, Noise Macros): Note that it's not
11745         necessary to call the regexp generating functions after setting the pertinent
11746         configuration values in a mode hook.
11748 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
11750         Fix the jit-lock-fontify-now test names
11752         * test/lisp/jit-lock-tests.el
11753         (jit-lock-fontify-now-mends-the-gaps)
11754         (jit-lock-fontify-now-does-not-refontify-unnecessarily):
11755         Fix the test names.
11757 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11759         Extend completion candidates in tramp.el
11761         * lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
11762         (tramp-get-completion-function): Use it.
11764 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11766         Revert e2f785991d0c696fbb2bc2f331f888d979b8da82 for tramp.el
11768         * lisp/net/tramp.el (tramp-time-diff): Revert previous change due to backwards
11769         compatibility.
11771 2016-05-08  Dmitry Gutov  <dgutov@yandex.ru>
11773         Emulate interactive mode
11775         * test/lisp/jit-lock-tests.el (jit-lock-tests--setup-buffer)
11776         (jit-lock-does-not-refontify-unnecessarily):
11777         Bind noninteractive to nil (bug#23278).
11779 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
11781         Simplify now that float-time etc. are built-in
11783         This was prompted by warnings about calls to now-obsolete functions.
11784         * lisp/calendar/time-date.el (encode-time-value):
11785         Use setq rather than a recursive call, to avoid a warning
11786         about calling this obsolete function.
11787         * lisp/calendar/time-date.el (encode-time-value)
11788         (with-decoded-time-value, time-to-seconds, time-to-number-of-days):
11789         * lisp/erc/erc.el (erc-emacs-time-to-erc-time):
11790         * lisp/net/rcirc.el (rcirc-float-time):
11791         * lisp/org/org-compat.el (org-float-time):
11792         Simplify now that time-add and float-time are now built-in.
11793         * lisp/calendar/time-date.el (time-add, time-subtract, time-less-p):
11794         * lisp/net/newst-backend.el (time-add):
11795         * lisp/org/org.el (time-subtract):
11796         Remove backward-compatibility definitions; they are now built-in.
11797         * lisp/calendar/timeclock.el (timeclock-time-to-seconds)
11798         (timeclock-seconds-to-time):
11799         * lisp/net/rcirc.el (rcirc-float-time):
11800         * lisp/org/org-compat.el (org-float-time):
11801         Now obsolete, since callers can just use float-time and
11802         seconds-to-time.  All uses changed.
11803         * lisp/emacs-lisp/ert.el (ert-results-pop-to-timings):
11804         * lisp/gnus/gnus-art.el (article-lapsed-string):
11805         * lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
11806         * lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
11807         * lisp/gnus/nndiary.el (nndiary-compute-reminders):
11808         * lisp/net/tramp.el (tramp-time-diff):
11809         * lisp/org/org-clock.el (org-clock-timestamps-change):
11810         Prefer the time-subtract builtin to the subtract-time alias.
11811         * lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
11812         * test/lisp/character-fold-tests.el (character-fold--speed-test):
11813         Prefer the float-time builtin to the time-to-seconds alias.
11814         * lisp/org/org-agenda.el, lisp/org/org-clock.el, lisp/org/org-list.el:
11815         * lisp/org/org-timer.el, lisp/org/org.el:
11816         Adjust to org-float-time deprecation.
11818 2016-05-08  Alan Mackenzie  <acm@muc.de>
11820         Add :after-hook facility to define-derived-mode.
11822         This allow a form to be evaluated _after_ a major mode's hooks have been run.
11823         It is needed to solve some problems in CC Mode, including bug #16759 and
11824         bug #23476.
11826         * lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
11827         `:after-hook', and generate the requisite code for it.
11828         (derived-mode-make-docstring): Take account of the possibility of :after-hook.
11830         * lisp/subr.el (delayed-after-hook-forms): New variable.
11831         (run-mode-hooks): As the last thing evaluate the forms in
11832         delayed-after-hook-forms.
11834         * doc/lispref/modes.texi (Derived Modes): Document :after-hook.
11835         (Mode Hooks): Document the new feature in run-mode-hooks.
11837         * etc/NEWS: Note the new feature.
11839 2016-05-08  Michael Albinus  <michael.albinus@gmx.de>
11841         Fix recursive load of tramp.elc
11843         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11844         Check also for `tramp-completion-mode-p'.
11845         (tramp-completion-mode, tramp-completion-mode-p): Autoload them.
11847 2016-05-07  Paul Eggert  <eggert@cs.ucla.edu>
11849         Prefer grep -E/-F to egrep/fgrep
11851         POSIX marked egrep and fgrep as legacy apps in SUSv2 (1997) and
11852         withdrew them in SUSv3 (2001), and these days grep -E and grep -F
11853         are probably more portable.
11854         * lib-src/etags.c (main):
11855         * lisp/eshell/em-unix.el (eshell-grep, eshell/egrep)
11856         (eshell/fgrep):
11857         * lisp/cedet/semantic/symref.el (semantic-symref-find-text):
11858         * lisp/eshell/esh-var.el (eshell-apply-indices):
11859         * lisp/progmodes/ada-xref.el (ada-xref-search-with-egrep)
11860         (ada-find-in-src-path):
11861         * lisp/textmodes/ispell.el (ispell-grep-command):
11862         (ispell-lookup-words):
11863         Use or document grep -E and grep -F instead of egrep and fgrep.
11864         * lisp/textmodes/ispell.el (ispell-grep-options):
11865         Use -Ei on all platforms, not just MS-Windows.
11867 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
11869         Avoid unnecessary work if a chunk is empty
11871         * lisp/jit-lock.el (jit-lock-fontify-now): Avoid unnecessary work
11872         if a chunk is empty (bug#23278).
11874 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
11876         * test/lisp/jit-lock-tests.el: New file.
11878 2016-05-07  Michael Albinus  <michael.albinus@gmx.de>
11880         Continue to fix Bug#10085
11882         * lisp/net/tramp.el (tramp-completion-file-name-handler-alist)
11883         <expand-file-name>: Add handler.
11884         (tramp-completion-handle-expand-file-name): New defun.
11885         (tramp-handle-file-name-as-directory): Handle completion mode case.
11887         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
11888         Fix test.
11889         (tramp-test24-file-name-completion): Extend test.
11891 2016-05-07  Alan Mackenzie  <acm@muc.de>
11893         Revert change 8e4595a... due to annoyance it causes the development team.
11895         Change 8e4595a438fe85dd109756886cdeaeea2e665afb from 2016-04-30 17:28:24
11896         +0000 was an enhancement to .dir-locals to allow correct fontification
11897         of certain macro constructs.
11899         * .dir-locals.el: Remove the two forms for C Mode dealing with noise macros.
11901 2016-05-07  Alan Mackenzie  <acm@muc.de>
11903         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): Give it a version number.
11905 2016-05-07  Simen Heggestøyl  <simenheg@gmail.com>
11907         Add tests for CSS mode completion
11909         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values)
11910         (css-test-property-values-no-duplicates)
11911         (css-test-value-class-lookup): Use `seq-sort'.
11912         (css-mode-tests--completions): New helper function for retrieving CSS
11913         completions.
11914         (css-test-complete-bang-rule, scss-test-complete-bang-rule)
11915         (css-test-complete-property-value, css-test-complete-pseudo-class)
11916         (css-test-complete-pseudo-element, css-test-complete-at-rule)
11917         (scss-test-complete-at-rule, css-test-complete-property)
11918         (css-test-complete-selector, css-test-complete-nested-selector)
11919         (scss-test-complete-nested-selector): New tests.
11921 2016-05-06  Alan Mackenzie  <acm@muc.de>
11923         Add an option in Edebug to prevent pauses after `h', 'f', and `o'.
11925         Requested by Paul Pogonyshev.  Also add in documentation for Edebug config
11926         variables which was missing.
11928         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): New customizable option.
11929         (edebug--display-1): Test edebug-sit-on-break before pausing 1 second.
11931         * doc/lispref/edebug.texi (Jumping): Document the effect of the new option.
11932         (Edebug Options): Document the new option.  Also add documentation for
11933         edebug-eval-macro-args, edebug-print-length, edebug-print-level,
11934         edebug-print-circle, edebug-sit-for-seconds.
11936         * etc/NEWS: Note the new feature.
11938 2016-05-07  Jorgen Schaefer  <contact@jorgenschaefer.de>
11940         scheme.el: Turn literal tabs into \t
11942         * lisp/progmodes/scheme.el: The last change to turn tabs into spaces
11943         also caught some literal tabs in character classes. Fix this by
11944         adding \t to those classes.
11946 2016-05-07  Tino Calancha  <f92capac@gmail.com>
11948         Make 'backtab' work in table-mode on text terminals
11950         * lisp/textmodes/table.el (table-cell-bindings): Bind 'backtab'
11951         explicitly.  (Bug#23456)
11953 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
11955         Try to speed-up display of many all-blank lines
11957         * src/bidi.c (bidi_initialize): Use anchored regexps for
11958         paragraph start and paragraph separator sequences.  (Bug#23457)
11960 2016-05-06  Alan Mackenzie  <acm@muc.de>
11962         Correct hack-local-variables change from Thu May 5 11:05:49 2016 +0000
11964         Prevent hack-local-variables being called from the fundamental-mode mode call
11965         early in normal-mode.  This fixes bug #23460 and bug #23463.
11967         * lisp/files.el (normal-mode) Replace call to fundamental-mode with calls to
11968         the things it calls, with the exception of hack-local-variables.
11970         * etc/NEWS: Add an entry to note the calling of hack-local-variables at each
11971         major mode initialization.
11973 2016-05-06  Paul Eggert  <eggert@cs.ucla.edu>
11975         Port xref-tests to master branch
11977         Also, add a test to make this problem less likely in the future.
11978         * test/Makefile.in (check-no-automated-subdir): New rule.
11979         (check, check-expensive, check-maybe): Depend on it.
11980         * test/automated/data/xref/file1.txt: Rename to ...
11981         * test/data/xref/file1.txt: ... here.
11982         * test/automated/data/xref/file2.txt: Rename to ...
11983         * test/data/xref/file2.txt: ... here.
11984         * test/automated/xref-tests.el: Rename to ...
11985         * test/lisp/progmodes/xref-tests.el: ... here.
11986         (xref-tests-data-dir): Use EMACS_TEST_DIRECTORY.
11988 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
11990         Merge from origin/emacs-25
11992         50650cb Doc fixes for fclist and grep
11993         5e814e0 Minor doc fixes for quoting
11994         3347a73 `nreverse' the marker pairs list
11995         1a4127d Use save-excursion in xref-location-marker more
11996         ab3ba91 shell-quote-argument DIR when appropriate
11997         922c7a3 Rework xref-query-replace-in-results
11998         3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
11999         0932b94 Fix todo-mode bug involving archived items (bug#23447)
12000         e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
12001         adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
12002         4d8fd9c Handle "empty line" regexp in xref searches
12003         f559b37 Add tests for xref-collect-matches
12004         6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
12005         6f82d8e Clear buffer-undo-list when showing xrefs
12006         c68a091 Note the quote translation in `message' in section "incompati...
12007         52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
12008         93703c5 (Common Keywords): Correct what missing :group means
12009         79e5800 Improve documentation of Dired's 'A' and 'Q' commands
12010         2ea2a2f Doc fixes for quoting
12011         8544b98 posnp doc clarification
12012         805204f Mention what a missing :group does
12013         ec554d7 Fix documentation of dired-aux search/replace commands
12015 2016-05-05  Simen Heggestøyl  <simenheg@gmail.com>
12017         Support completion of HTML tags in CSS selectors
12019         * lisp/textmodes/css-mode.el (css--html-tags): New variable holding a
12020         list of HTML tags for completion.
12021         (css--nested-selectors-allowed): New variable for determining whether
12022         nested selectors are allowed in the current mode.
12023         (css--complete-selector): New function for completing part of a CSS
12024         selector.
12025         (css-completion-at-point): Support completion of selectors.
12026         (scss-mode): Allow nested selectors.
12028 2016-05-05  Lars Ingebrigtsen  <larsi@gnus.org>
12030         Make `R' in eww work more reliably
12032         * lisp/net/eww.el (eww-score-readability): Protect against
12033         null children.
12035 2016-05-05  Alan Mackenzie  <acm@muc.de>
12037         Call hack-local-variables from major modes rather than from file visiting
12039         This prevents file/directory local variables from being lost when the major
12040         mode is set or changed.
12042         This fixes bug #15577 and bug #23407.
12044         * lisp/files.el (normal-mode): Call `hack-local-variables' when the major mode
12045         function hasn't already done so.
12046         (hack-local-variables): Rename parameter `mode-only' to `handle-mode', make
12047         its previous non-nil setting be t, and introduce the following action for a
12048         non-nil non-t value: apply all settings apart from `mode'.
12050         * lisp/subr.el (run-mode-hooks): call `hack-local-variables' for buffers
12051         which are visiting files.
12053         * doc/emacs/custom.texi (File Variables): Note that setting a major mode also
12054         sets file variables.
12055         (Directory Variables): Note that `mode', `eval', and `unibyte' can be set as
12056         dir local variables, but `coding' can't.
12058         * doc/lispref/modes.texi (Major Mode Conventions): Say that `run-mode-hooks'
12059         also calls `hack-local-variables'.
12060         (Auto Major Mode): Say that `find-file' no longer runs `hack-local-variables',
12061         as from 25.2.  Remove vagueness from `normal-mode' and `set-auto-mode' by
12062         saying that the mode IS SET, not merely "selected" or "chosen".
12063         (Mode Hooks): Document change to `run-mode-hooks'.
12065         * doc/lispref/variables.texi (File Local Variables): Document change to
12066         `hack-local-variables'.
12068 2016-05-05  Michael Albinus  <michael.albinus@gmx.de>
12070         tramp-sh.el: Work around a stat bug
12072         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
12073         stat versions which produce shell quoted output.  See also
12074         coreutils Bug#23422.
12076 2016-05-04  Noam Postavsky  <npostavs@gmail.com>
12078         Fix autogen.sh for separate worktrees
12080         * autogen.sh: Use the $hooks variable in the $sample_hooks loop, instead
12081         of assuming .git/hooks is a directory.
12083 2016-05-04  Alan Mackenzie  <acm@muc.de>
12085         Allow `text-quoting-style' to be `leave', i.e. no translation of quotes.
12087         * lisp/help-fns.el (describe-function-1): Don't set coding system to UTF-8
12088         when text-quoting-style is `leave'.
12090         * src/lisp.h (enum text_quoting_style): Add identifier LEAVE_QUOTING_STYLE.
12092         * src/doc.c (syms_of_doc): New symbol "leave".  Amend doc string of
12093         `text_quoting_style'.
12094         (text_quoting_style): Handle `leave' by returning LEAVE_QUOTING_STYLE.
12095         (Fsubstitute_command_keys): Don't translate quotes when quoting_style is
12096         LEAVE_QUOTING_STYLE.
12098         * src/editfns.c (styled_format): Set quoting_style to -1 when
12099         text-quoting-style is `leave'.
12101 2016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12103         * lisp/emulation/viper(-cmd)?.el: Use lexical-binding.
12105         * lisp/emulation/viper-cmd.el: Use lexical-binding.
12106         (viper-change-state-to-vi, viper-change-state-to-emacs): Allow dummy
12107         args, for use in advice-add.
12108         (viper--init-message): Rename from init-message.
12109         (viper-minibuffer-standard-hook): Adjust accordingly.
12110         (viper-undo): Remove unused var `modified'.
12111         (viper-read-string-with-history, viper-set-searchstyle-toggling-macros):
12112         Don't use dynamic vars as args.
12113         (viper-submit-report): Clarify use of dynamic vars.
12115         * lisp/emulation/viper.el: Use lexical-binding and nadvice.
12116         Remove redundant :group keywords.  Group the (if viper-mode) at top-level.
12117         Use add-function rather than a `(lambda ...).
12118         (viper--advice-list): New var.
12119         (viper--advice-add, viper--deactivate-advice-list): New funs.
12120         (viper-go-away, viper-set-hooks, viper-non-hook-settings): Use them.
12121         (viper-non-hook-settings): Don't hook into find-file any more.
12123 2016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12125         * lisp/vc/ediff-util.el: Use lexical-binding.
12127         * lisp/progmodes/js.el (js-syntax-propertize): Recognize shebang line.
12129 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12131         Add an animation sanity check
12133         * lisp/image.el (image-multi-frame-p): Give up on animations
12134         if it seems like they are too slow (bug#23431).
12136 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12138         abbrev-tests.el fix
12140         * test/lisp/abbrev-tests.el (abbrev-table-p-test): Don't check
12141         internal implementation detail.
12143 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12145         (shr-rescale-image): Clarify logic slightly
12147         * lisp/net/shr.el (shr-rescale-image): Clarify logic slightly.
12149 2016-05-02  Martin Rudalics  <rudalics@gmx.at>
12151         Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2
12153         * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
12154         to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
12155         Monnier.  (Bug#19185, Bug#20398)
12157 2016-05-02  Lee Bochicchio  <lboc.home@gmail.com>
12159         Add more abbrev tests
12161         * test/lisp/abbrev-tests.el
12162         (clear-abbrev-table-test): Use `abbrev-expansion'
12163         (abbrev-table-empty-p-test, list-abbrevs-test)
12164         (prepare-abbrev-list-buffer-test, insert-abbrevs-test)
12165         (edit-abbrevs-test, define-abbrevs-test)
12166         (read-write-abbrev-file-test)
12167         (abbrev-edit-save-to-file-test): New tests (bug#23139).
12169 2016-05-02  Philipp Stephani  <p.stephani2@gmail.com>  (tiny change)
12171         Allow eval-ing named character literals
12173         * lisp/progmodes/elisp-mode.el (elisp--preceding-sexp): Skip over
12174         named character literals.
12175         * test/lisp/progmodes/elisp-mode-tests.el
12176         (elisp--preceding-sexp--char-name): Add test for skipping over
12177         named character literals (bug#23354).
12179 2016-05-02  Aaron Conole  <aconole@redhat.com>
12181         Call va_end in boot_error
12183         * src/gnutls.c (boot_error): A recent change added a function
12184         to signal an error or return an error code. That function uses
12185         a variadic argument list to populate an error message
12186         string. However, it missed calling va_end after using the
12187         variadic argument list.
12189           Copyright-paperwork-exempt: yes
12191 2016-05-02  Aaron Conole  <aconole@bytheb.org>
12193         Fix the call to set_network_coding_system
12195         * src/process.c (Fmake_network_process): A recent commit
12196         modified the set_network_socket_coding_system function to take
12197         arguments host, service, and name. However, those arguments
12198         appear to be swapped.
12200           Copyright-paperwork-exempt: yes
12202 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
12204         Revert "alas, a map can have only one parent"
12206         This reverts commit d05806fda1cbba2db112bc783597fbe9d27175b2.
12208         This had already been fixed by using `make-composed-map'.  And
12209         we don't want image-map to inherit from special-mode-map, anyway.
12211 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
12213         Merge from origin/emacs-25
12215         bf21c84 Fix quoting problem in cc-engine debug message
12216         8f36614 Add electric-quote-string unit test
12217         6280531 Don’t electrically quote ‘'’ in Python
12218         fd7b430 `nreverse' Grep hits before passing them to xref--convert-hits
12220 2016-05-02  Sam Steingold  <sds@gnu.org>
12222         alas, a map can have only one parent
12224         * lisp/image-mode.el (image-model-map): Cannot have two parents.
12225         * lisp/image.el (image-map): Inherit from `special-mode-map'.
12227 2016-05-02  Michael Albinus  <michael.albinus@gmx.de>
12229         Fix Bug#10085
12231         * lisp/net/tramp.el (tramp-find-foreign-file-name-handler):
12232         Add optional arguments OPERATION and COMPETION.  Handle
12233         `file-name-as-directory', `file-name-directory' and
12234         `file-name-nondirectory' also in completion mode.
12235         (tramp-file-name-handler): Use it.  (Bug#10085)
12237         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
12238         Extend test.
12240 2016-05-01  Martin Rudalics  <rudalics@gmx.at>
12242         * src/minibuf.c (read_minibuf): Use CONSP instead of Fconsp.
12244 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12246         Tweak .gitignore
12248         * .gitignore: Remove leim/changed.misc, leim/changed.tit,
12249         as these files are no longer created.  Add gmon.out, for
12250         -pg profiling.  Sort.
12252 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12254         Sync from gnulib
12256         This incorporates:
12257         2016-05-01 mktime: port to stricter signed overflow checking
12258         2016-05-01 mktime: speed up DEBUG_MKTIME benchmarks
12259         2016-05-01 mktime: resurrect DEBUG_MKTIME testing
12260         2016-05-01 mktime: simplify DEBUG_MKTIME
12261         2016-05-01 Port mktime_internal offset to unsigned time_t
12262         2016-04-27 xstrtol: prohibit monstrosities like "1bB"
12263         2016-04-13 mktime: improve integer overflow checking
12264         2016-04-13 intprops: check two's complement assumption
12265         2016-04-13 intprops, mktime, strtol: assume two's complement
12266         * lib/intprops.h, lib/mktime-internal.h, lib/mktime.c:
12267         * lib/strtol.c, lib/timegm.c, m4/mktime.m4, m4/std-gnu11.m4:
12268         Copy from gnulib.
12270 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12272         Merge from origin/emacs-25
12274         c695fb3 ; Spelling fixes
12275         03750c0 * doc/misc/texinfo.tex: Sync from gnulib.
12276         42fed3b * lisp/isearch.el (isearch-forward-symbol-at-point): Add isea...
12278 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12280         Merge from origin/emacs-25
12282         d8affa3 Use ‘T *restrict’ proto, not ‘T[restrict]’
12283         d38d2a8 Fix documentation of 'url-retrieve-synchronously'
12284         586b213 * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bu...
12286         # Conflicts:
12287         #       doc/misc/url.texi
12288         #       lisp/url/url.el
12290 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12292         Merge from origin/emacs-25
12294         16e5e8e Fix last change to isearch-update (bug#23406)
12295         b755d98 Autoload cursor-sensor-inhibit (bug#23406)
12296         b52ebd4 org-map-entries: Fix org-agenda-prepare-buffers call
12297         86aa409 Followup for last commit in the user manual
12298         7004459 Improve doc string of 'set-goal-column'
12299         ccdaf04 Fix the MSDOS build
12300         ffe701c Remove \= from format string (bug#18190)
12301         1c58fa1 Fix variable-pitch font on MS-Windows
12302         c6077bf Restore follow-scroll-up/down to scrolling by the combined si...
12303         b671e21 Revert unneeded change which harms syntactic parsing.  This f...
12304         48b24c9 Correct indentation of ids in a C++ enum after a protection k...
12305         5c3534f * lisp/window.el (window--process-window-list): No-op if no p...
12306         734fb3a Port dumping to NetBSD with PaX
12307         0255a70 Don't mistake `for' inside a function for a part of array com...
12309         # Conflicts:
12310         #       src/Makefile.in
12312 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12314         Merge from origin/emacs-25
12316         71fb0e0 Improve last change to vc-git-mode-line-string
12317         6858e77 Todo mode doc bug fix
12318         e55d0db Fix revision calculation in vc-git-mode-line-string
12319         ca87b34 ; Fix errant revert ccb75d7
12320         40bfebe Add Python 3.5 keyword "await"
12321         fa7886a Add new keywords of Python 3.5
12322         ccb75d7 Partially revert previous change.
12323         8ee168a ; * etc/NEWS: Update entry about color fonts on OS X with a w...
12324         b09ca27 Say why text-quoting-style is not a user option
12326 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12328         Merge from origin/emacs-25
12330         5a952eb Don't mention ~/.emacs.bmk literally in doc strings
12331         c338cf3 * etc/NEWS: Explain why multicolor font display is disabled o...
12332         c30d1b4 Port to Ubuntu 16.04 --enable-gcc-warnings
12334 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12336         Mention the `find-library-name' changes
12338 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12340         Fix text in menu in minor-mode-menu-from-indicator
12342         * lisp/mouse.el (minor-mode-menu-from-indicator): Don't
12343         capitalize "Off" in "Turn Off" (bug#11028).
12345 2016-05-01  David Engster  <deng@randomsample.de>
12347         gitmerge: Add cherry pick to gitmerge-skip-regexp
12349         * gitmerge.el (gitmerge-skip-regexp): Add "cherry picked from commit",
12350           which is the string appended by 'git cherry-pick -x'.
12352 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12354         Allow `global-set-key' to bind keys under the `M-o' map
12356         * lisp/subr.el (global-set-key): Allow binding keys under the
12357         `M-o' map (bug#9730).
12359 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12361         Add `size-indication-mode' to the menu on `mouse-1' "Top"
12363         * lisp/bindings.el (mode-line-column-line-number-mode-map):
12364         Add `size-indication-mode' to the menu (bug#5727).
12366 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12368         Allow finding libraries loaded manually outside the load-path
12370         * lisp/emacs-lisp/find-func.el (find-library--from-load-path):
12371         New function to find a library from a load path (bug#5661).
12372         (find-library-name): Use it.
12374         There are so many combinations of inputs and possibly entries in
12375         `load-history' that the code looks like an entry in a code obfuscation
12376         contest.  If anybody has a better implementation, please substitute.
12378         But remember that the input given may be foo, foo.el, foo.elc, and the
12379         entries in load-history may be foo.el, foo.elc and foo.el.gz, and we
12380         want to return only foo.el and foo.el.gz.  *phew*
12382 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12384         Allow minibuffer prompts to use faces
12386         * doc/lispref/minibuf.texi (Text from Minibuffer): Document
12387         `minibuffer-prompt-properties' and explain how faces work in
12388         the minibuffer prompt.
12390         * src/minibuf.c (read_minibuf): If `face' is in
12391         `minibuffer-prompt-properties', apply it to the end of the
12392         face list to allow users to have their own faces on the
12393         prompts (bug#16136).
12395 2016-05-01  Peter Feigl  <peter.feigl@nexoid.at>  (tiny change)
12397         Add R7RS syntax forms to scheme.el
12399         * lisp/progmodes/scheme.el (scheme-font-lock-keywords-2): Add
12400         a number of special forms introduced in R7RS-small.
12401         * lisp/progmodes/scheme.el (scheme-indent-function): Same.
12403 2016-05-01  Alan Third  <alan@idiocy.org>
12405         Implement horizontal scroll bars on NS
12407         * lisp/scroll-bar.el (horizontal-scroll-bars-available-p): Remove NS
12408         check.
12409         * lisp/term/ns-win.el: Remove custom NS scroll-bar handlers and bind
12410         scroll-bar mouse clicks to standard handlers.
12411         * src/nsterm.h (EmacsScroller): Add 'horizontal' property and rename
12412         pixel_height to pixel_length.
12413         * src/nsterm.m (x_set_window_size): Remove left-hand scroll-bar code. It
12414         caused scroll-bars to be over-drawn and the best working solution
12415         appears to be complete removal.
12416         (ns_set_horizontal_scroll_bar): Rewrite to handle horizontal scrollers
12417         correctly.
12418         (ns_set_vertical_scroll_bar): Set width to actual scroller width.
12419         (setFrame): Handle horizontal case.
12420         (dealloc): Handle horizontal case.
12421         (judge): Handle horizontal case.
12422         (setPosition): Rename pixel_height to pixel_length.
12423         (sendScrollEventAtLoc): Handle horizontal case.
12424         (mouseDown): Handle horizontal case and general tidy up of code.
12425         (mouseDragged): Handle horizontal case. Call sendScrollEventAtLoc with
12426         absolute pixel size instead of ratio.
12427         * src/window.h: Remove NS check.
12429 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
12431         tramp.texi: Revert last change due to backward compatibility
12433 2016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12435         Fix the buffer-count patch (Bug#23394)
12437         * src/buffer.c (Fgenerate_new_buffer_name): Increment count just
12438         once each time through the loop.  Reported by Lars Ingebrigtsen in:
12439         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00918.html
12441 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12443         cua-prefix-override-inhibit-delay doc fix
12445         * lisp/emulation/cua-base.el
12446         (cua-prefix-override-inhibit-delay): Typo fix in doc string
12447         (bug#23401).
12449 2016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12451         Fix generate-new-buffer-name increment typo
12453         Problem reported by Chaitanya Koparkar (Bug#23394).
12454         * src/buffer.c (Fgenerate_new_buffer_name): Increment count when
12455         generating a new buffer.  This fixes a typo I introduced in
12456         2014-04-05T00:04:58Z!eggert@cs.ucla.edu.
12458 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12460         global-eldoc-mode doc fix
12462         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
12463         specific about what "applicable" means (bug#23071).
12465 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12467         Make the legend in describe-categories a link
12469         * lisp/help-fns.el (describe-categories): Make the "see
12470         bottom" text a link (bug#22227).
12472 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12474         normal-top-level-add-subdirs-to-load-path doc fix
12476         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
12477         Doc fix (bug#21962).
12479 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12481         isearch-search-fun-function doc tweak
12483         * lisp/isearch.el (isearch-search-fun-function): Mention what
12484         the STRING parameter is (bug#21552).
12486 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12488         Fill some imenu--index-alist doc lines
12490         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
12492 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12494         Make describe-variable look up the variable in the current buffer
12496         * lisp/help-fns.el (describe-variable): Get the variable
12497         definition in the buffer we were called from (in case it only
12498         exists there) (bug#21252).
12500 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12502         Fmarker_position doc string clarification
12504         * src/marker.c (Fmarker_position): Clarify the doc string
12505         (bug#21231).
12507 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12509         Further define-obsolete-* doc fixups
12511         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
12512         Fix up last change.
12513         (define-obsolete-variable-alias): Ditto.
12515 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12517         Describe WHEN in all the define-obsolete- macros
12519         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
12520         Say more verbosely what WHEN is (bug#21225).
12521         (define-obsolete-function-alias): Describe the WHEN parameter.
12522         (define-obsolete-variable-alias): Ditto.
12524 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12526         Mention with-silent-modifications in the lispref manual
12528         * doc/lispref/text.texi (Changing Properties): Document
12529         with-silent-modifications (bug#21171).
12531 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12533         with-silent-modifications doc clarification
12535         * lisp/subr.el (with-silent-modifications): Rearrange the doc
12536         string a bit so that the most pertinent information is at the
12537         top (bug#21171).
12539 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12541         clear-visited-file-modtime doc string fix
12543         * lisp/files.el (clear-visited-file-modtime): Fix possibly
12544         confusing doc string wording (bug#21169).
12546 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12548         Document mode mode line variables
12550         * doc/lispref/modes.texi (Mode Line Variables): Document
12551         `mode-line-front-space, `mode-line-misc-info',
12552         `mode-line-end-spaces' (bug#21014).
12554 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12556         Add a cross ref to Optional Mode Line
12558         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
12559         reference to the Emacs mode line node that explains things
12560         like `display-time-string' (bug#21002).
12562 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12564         Add a doc string to display-time-string
12566         * lisp/time.el: Add a doc string to `display-time-string',
12567         because it's referred to in the manual, and is too mysterious
12568         otherwise (bug#21002).
12570 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12572         custom-buffer-style doc fix
12574         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
12575         value (bug#20724).
12577 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12579         Document how to check for ImageMagick support
12581         * doc/lispref/display.texi (ImageMagick Images): Say how to
12582         check for ImageMagick support, which isn't quite obvious
12583         (bug#20702).
12585 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12587         Minor doc fix for ImageMagick/SVG builds
12589         * doc/lispref/display.texi (SVG Images): Don't imply that you
12590         have to build Emacs yourself (bug#20702).
12591         (ImageMagick Images): Ditto.
12593 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12595         Rearrange the doc of query-replace slightly
12597         * lisp/replace.el (query-replace): Move the mention of the
12598         interactive prefix arg earlier so that users can find it
12599         (bug#20654).
12601 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12603         apropos-print doc fix
12605         * lisp/apropos.el (apropos-print): Document the undocumented
12606         parameters (bug#20520).
12608 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12610         completion-table-with-predicate doc string fix
12612         * lisp/minibuffer.el (completion-table-with-predicate): t ->
12613         non-nil in the doc string (bug#20460).
12615 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12617         Fill the completion-table-with-predicate doc string
12619         * lisp/minibuffer.el (completion-table-with-predicate): Fill
12620         the doc string (bug#20460).
12622 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12624         replace-match-maybe-edit doc clarification
12626         * lisp/replace.el (replace-match-maybe-edit): Say what
12627         MATCH-DATA is (bug#20304).
12629 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12631         add-timeout doc fix
12633         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
12634         value (bug#20181).
12636 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12638         Extremely minor doc fix in Choosing Window
12640         * doc/lispref/windows.texi (Choosing Window): There's only one
12641         action alist, I think (bug#20158).
12643 2016-04-30  Alan Mackenzie  <acm@muc.de>
12645         * .dir-locals:  Amend for correct fontification of *.[ch] containing "IF_LINT"
12647 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12649         Transform mentions of `eval-after-load' to `with-eval-after-load'
12651         * doc/lispref/loading.texi (Hooks for Loading): Update text to
12652         not mention `eval-after-load' (bug#20038).
12654 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12656         cursor-type doc fix
12658         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
12659         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
12661 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12663         Add a link from Tool Bar to Images
12665         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
12666         Images node (bug#19722).
12668 2016-04-30  Alan Mackenzie  <acm@muc.de>
12670         CC Mode: Recognize a noise macro with parens after a declarator's identifier
12672         * lisp/progmodes/cc-engine (c-forward-decl-or-cast-1): In the while loop
12673         following comment "Skip over type decl suffix operators." insert code also
12674         to check for noise macros with parentheses.
12676 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12678         (default-mode-line-format): More explicit obsolete info
12680         * lisp/subr.el (default-mode-line-format): Be more explicit in
12681         how default values are now handled (bug#19424).
12683 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12685         Fcompare_buffer_substrings doc string clarification
12687         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
12688         doc string clarification (bug#19255).
12690 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12692         insert-file-contents-literally doc fix
12694         * lisp/files.el (insert-file-contents-literally): Say that the
12695         parameters are explained in the other function (bug#18317).
12697 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12699         Fix custom types for cursor-in-non-selected-windows
12701         * lisp/cus-start.el (standard): Use the same custom types for
12702         cursor-in-non-selected-windows as for cursor-type (bug#19214).
12704 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12706         Doc clarification to mwheel-scroll
12708         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
12709         does not apply to Windows (bug#19209).
12711 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12713         Clarify the doc of eval-expression-print-format
12715         * lisp/simple.el (eval-expression-print-format): Doc
12716         clarification (bug#19114).
12718 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12720         (extended-command-suggest-shorter): Add a version string
12722         * lisp/simple.el (extended-command-suggest-shorter): Add a
12723         version string.
12725 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12727         Document extended-command-suggest-shorter
12729         * doc/emacs/m-x.texi (M-x): Mention
12730         extended-command-suggest-shorter (bug#19152).
12732 2016-04-30  Ivan Shmakov  <ivan@siamics.net>
12734         Add a variable to control "shorter command" suggestions
12736         * lisp/simple.el (extended-command-suggest-shorter): New variable (bug#19152).
12737         (execute-extended-command): Use it.
12739 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12741         Explictly explain that package-initialize loads the packages
12743         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
12744         in saying that `package-initialize' obviates adjusting the
12745         path or requiring the packages, as this is a question that
12746         apparently comes up now and then (bug#18829).
12748 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12750         Have the doc strings of `load-path' and `require' mention each other
12752         * src/fns.c (Frequire): Mention `load-path' and fill the doc
12753         string (bug#18829).
12755         * src/lread.c (syms_of_lread): Mention that `require' uses
12756         `load-path'.
12758 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12760         Doc fix for insert-pair-alist
12762         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
12763         COMMAND-CHAR is (bug#18809).
12765 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12767         Move doc of backup-directory-alist to the Backup node
12769         * doc/emacs/files.texi (Backup): Move the documentation of
12770         `backup-directory-alist' here from the "Single or Numbered
12771         Backups" node, because it doesn't seem to have much to do with
12772         numbering (bug#18692).
12774 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12776         Tiny doc clarification for create-fontset-from-fontset-spec
12778         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
12779         Clarify what the optional part is (bug#18686).
12781 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12783         Fill the doc string of font-lock-keywords
12785         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
12786         reorganize some explanations (bug#21427).
12788 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12790         Doc fix for font-lock-remove-keywords
12792         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
12793         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
12795 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12797         Clarify whitespace-style doc string
12799         * lisp/whitespace.el (whitespace-style): Doc clarification
12800         (bug#18296).
12802 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12804         No need to test for jka-compr
12806         * lisp/vc/ediff-util.el (ediff-file-compressed-p): jka-compr
12807         is always available; no need to test (bug#18204).
12809 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12811         Doc fixed for next-error-buffer-p
12813         * lisp/simple.el (next-error-buffer-p): Clarify doc string
12814         (bug#18202).
12816 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12818         Tiny doc fix
12820         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
12821         (and fill) (bug#18201).
12823 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12825         Doc fix
12827         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
12828         slightly (bug#18092).
12830 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12832         delsel doc touch ups
12834         * lisp/delsel.el (delete-selection-helper): Use non-nil
12835         instead of t and clarify function return values (bug#18089).
12837 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12839         Doc fixes for menu-bar.el
12841         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
12842         REGION parameter (bug#18028).
12843         (clipboard-kill-region): Ditto.
12845 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12847         Doc fix
12849         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
12851 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12853         Minor doc clarification
12855         * lisp/subr.el (y-or-n-p): Document the return value from "n"
12856         (bug#18024).
12858 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12860         Fill font-lock-mode doc string
12862         * lisp/font-core.el (font-lock-mode): Fill the text to make it
12863         narrower (bug#18008).
12865 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12867         Wrap the auto-generated doc string
12869         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
12870         string to make it less likely that we get overlong lines
12871         (bug#17999).
12873 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12875         Clarify hi-lock-find-patterns
12877         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
12878         (bug#17989).
12880 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12882         Warning fix in jit-lock-mode
12884         * lisp/jit-lock.el (jit-lock-mode): Don't issue a warning when
12885         turning the mode on in an indirect buffer, if this somehow has
12886         happened (bug#17738).
12888 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12890         Add a doc string to `winner-mode'
12892         * lisp/winner.el (winner-mode): Add a doc string based on the
12893         comments in the file (bug#17716).
12895 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12897         Doc fix for align-newline-and-indent
12899         * lisp/align.el (align-newline-and-indent): Mention that
12900         alignment is done by `align' (bug#17707).
12902 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12904         Cancel the eldoc timer when switching off eldoc mode
12906         * lisp/emacs-lisp/eldoc.el (eldoc-mode): Cancel the eldoc
12907         timer when switching off eldoc mode.  It will be restarted
12908         again if needed (bug#17582).
12910 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12912         Doc fix for `kbd'
12914         * lisp/subr.el (kbd): Describe more fully the format of the
12915         parameter (bug#17039).
12917 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12919         Add a sanity check to apropos-documentation-internal
12921         * lisp/apropos.el (apropos-documentation-internal): Add a
12922         sanity check to be less fragile in the presence of invalid
12923         data (bug#16725).
12925 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12927         Doc tweak
12929         * lisp/simple.el (use-empty-active-region): Doc tweak.
12930         There's only one region (bug#16513).
12932 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12934         Clarify `read-face-name' doc and tweak the code
12936         * lisp/faces.el (read-face-name): Clarify the documentation
12937         and allow a mix of faces and faces names in all cases
12938         (bug#16483).
12940 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12942         Remove ": ?" from the read-face-name prompt
12944         * lisp/faces.el (read-face-name): Remove ": ?" from the prompt
12945         to be more backwards compatible (bug#15909).
12947 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12949         Link from (emacs)Exiting to (lisp)Killing Emacs
12951         * doc/emacs/entering.texi (Exiting): Link to the lispref
12952         manual for further customisations (bug#15445).
12954 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12956         find-lisp doc touchups
12958         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
12959         string (bug#15047).
12960         (find-lisp-find-files): Clarify doc.
12962 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12964         Don't have the manual claim that it lists all CL incompatibilities
12966         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
12967         incompatibilities isn't exhaustive, so don't say that it is
12968         (bug#15171).
12970 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12972         Fix call of `kmacro-display'
12974         * lisp/kmacro.el (kmacro-view-ring-2nd): Fix call of
12975         `kmacro-display' (bug#15020).
12977 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12979         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
12981         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
12982         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
12983         (bug#14554).
12985 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
12987         Rename "Directory Search" menu to "Servers"
12989         * lisp/menu-bar.el (menu-bar-tools-menu): Rename "Directory
12990         Search" to "Directory Servers".  Suggested by Eli
12991         Zaretskii. (bug#14919).
12993         * lisp/net/eudc.el: Rename ditto throughout.
12995 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
12997         Remove uses of the unused to-end parameter from simple.el
12999         * lisp/simple.el (line-move-partial): Remove usages of the
13000         unused to-end parameter, and make it optional (bug#14844).
13001         (line-move): Remove use of the unused to-end parameter.
13003 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13005         Doc fix: _ chars are automatically removed.
13007         * lisp/cus-edit.el (custom-buffer-create): _ chars are
13008         automatically removed when displaying help, so fix the last
13009         doc change.
13010         (custom-buffer-create-other-window): Ditto.
13012 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13014         Doc string change to enable-recursive-minibuffers
13016         * src/minibuf.c (syms_of_minibuf): Mention
13017         minibuffer-depth-indicator-mode in the doc string to
13018         enable-recursive-minibuffers (bug#14147).
13020 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13022         Fix definition of nobreak-space
13024         * lisp/faces.el (nobreak-space): The definition to
13025         nobreak-space was inadvertantly changed by the previous checkin.
13027 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13029         Clarify the `interactive' doc string slightly
13031         * src/callint.c (Finteractive): Clarify the doc string slightly
13032           (bug#14577).
13034 2016-04-28  Drew Adams  <drew.adams@oracle.com>
13036         Make icomplete respect `completion-ignored-extensions'
13038         * lisp/icomplete.el (icomplete-completions): Heed
13039         `completion-ignored-extensions' (bug#12939).
13041 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13043         Make ibuffer not break on newline-embedded buffer names
13045         * lisp/ibuffer.el (name): When buffer names contain newlines,
13046         quote those newlines before displaying (bug#12378).
13048 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13050         Add a new face for non-breaking hyphen characters
13052         * doc/emacs/display.texi (Standard Faces): Mention nobreak-hyphen.
13053         (Text Display): Ditto.
13055         * lisp/faces.el (nobreak-hyphen): New face (bug#12048).
13057         * src/xdisp.c (get_next_display_element): Use it instead of
13058         the escape-glyph face.
13060         * src/xdisp.c (syms_of_xdisp): New symbil Qnobreak_hyphen.
13062 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13064         Make a menu less ambiguous
13066         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
13067         is about using modifier keys, not binding them (bug#10942).
13069 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13071         Make kill-emacs-query-functions into defcustom
13073         * lisp/files.el (save-buffers-kill-terminal): Mention
13074         `save-buffers-kill-emacs' (bug#10794).
13075         (kill-emacs-query-functions): Made into a defcustom.
13077 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13079         Have describe-variable output multi-line values better
13081         * lisp/help-fns.el (describe-variable): When printing
13082         multi-line expressions, display them prettier (bug#10723).
13084 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13086         Clean up custom-buffer-create code slightly
13088         * lisp/cus-edit.el (custom-buffer-create-other-window): Don't
13089         pass the unused description value on (for clarity) (bug#10540).
13090         (custom-buffer-create): Ditto
13092 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13094         Clarify some doc strings
13096         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
13097         Clarify doc string (bug#8693).
13098         (syntax-propertize): Clarify doc string.
13100 2016-04-28  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13102         Fix number-at-point in lisp buffers
13104         * lisp/thingatpt.el (number-at-point): Don't say that things
13105         like ?a are numbers in lisp mode buffers (bug#8634).
13107 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13109         Don't consider colons to be paragraphs starting chars in strings
13111         * lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Don't
13112         consider colons to start paragraphs in (doc) strings
13113         (bug#7751).
13115 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13117         Make `undo' of `C-x r t' put point where it should be
13119         * lisp/rect.el (string-rectangle): Make `undo' of a this
13120         command put point back where it was (bug#7522).
13122 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13124         Add some concept index entries for custom types
13126         * doc/lispref/customize.texi (Composite Types): Add concept
13127         index entries for restricted-sexp, radio and choice (bug#7385).
13129 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13131         Mention `lisp-indent-function' in the lispref manual
13133         * doc/lispref/macros.texi (Indenting Macros): Mention
13134         `lisp-indent-function' (bug#3393).
13136 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13138         Clarify doc string of internal compilation function
13140         * lisp/progmodes/compile.el (compilation-get-file-structure):
13141         Clarify doc string (bug#3137).
13143 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13145         Avoid having `C-x h' mark the prompt part of the minibuffer
13147         * lisp/simple.el (mark-whole-buffer): Don't mark the prompt
13148         part of the minibuffer (bug#2589).
13150 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13152         Allow a prefix argument to find-library to pop to a different window
13154         * lisp/emacs-lisp/find-func.el (find-library): Allow a prefix
13155         argument to pop to a different window (bug#2270).
13157 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13159         Move the diff command to "Operate" in ibuffer
13161         * lisp/ibuffer.el (ibuffer-mode-operate-map): Move the diff
13162         command to the "Operate" menu, and remove the customisation
13163         entry to make the "View" menu more logical (bug#1150).
13165 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13167         Make the minor modes in help buffers into buttons
13169         * lisp/help.el (describe-mode): Make the minor modes into
13170         buttons to enable easier documentation traversal (bug#1149).
13172 2016-04-27  Jorgen Schaefer  <contact@jorgenschaefer.de>
13174         Add a number of Python 3 exceptions
13176         * lisp/progmoes/python.el (python-font-lock-keywords): Clean up the exception
13177         list, adding a number of new Python 3 exceptions and moving some exceptions
13178         to the Python 2 and 3 list as Python 2.7 includes them.
13180 2016-04-26  Anders Lindgren  <andlind@gmail.com>
13182         Fix bug#22891: wrong terminal width when a fringe width is zero.
13184         When either fringe width is zero, Emacs reserved one column for a
13185         continuation glyph. Terminal windows does not take this into
13186         account when the frame is resized.
13188         * lisp/window.el (window-adjust-process-window-size): Use
13189         `window-max-chars-per-line' instead of `window-body-width'.
13190         * lisp/term.el (term-window-width): Remove function. (It does the
13191         same as `window-max-chars-per-line' but without recent bug fixes.)
13192         (term-mode): Use `window-max-chars-per-line' instead of
13193         `term-window-width'.
13195 2016-04-26  Simen Heggestøyl  <simenheg@gmail.com>
13197         Add completion of `calc()' in CSS mode
13199         * lisp/textmodes/css-mode.el (css-value-class-alist): Add `calc()' as
13200         a completion candidate for several value classes.
13201         (css--value-class-lookup): Return only unique results.
13203         * test/lisp/textmodes/css-mode-tests.el
13204         (css-test-property-values-no-duplicates)
13205         (css-test-value-class-lookup): Update to reflect the above changes.
13207 2016-04-26  Paul Eggert  <eggert@cs.ucla.edu>
13209         Fix socketd fd startup bug that I introduced
13211         Problem reported by Matthew Leach in:
13212         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00778.html
13213         * src/emacs.c (main): Indicate more clearly the coupling between
13214         the --daemon option and init_process_emacs.
13215         * src/lisp.h: Adjust to API changes.
13216         * src/process.c (set_external_socket_descriptor):
13217         Remove, replacing by ...
13218         (init_process_emacs): ... passing the socket FD here instead.
13219         All uses changed.
13221 2016-04-25  Tao Fang  <fangtao0901@gmail.com>
13223         Fix: (void-variable url-http-response-status)
13225         * lisp/url/url-http.el
13226         (url-https-proxy-after-change-function): Display the error
13227         message before doing the callback to avoid a void variable
13228         situation (bug#23290).
13230 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13232         smtpmail would say it's done before it is
13234         * lisp/mail/smtpmail.el (smtpmail-via-smtp): Move the sending
13235         of the data end marker from here... (bug#23020).
13236         (smtpmail-send-data): ... to here, so that we don't get a
13237         "Sending done" before we've sent the final "." (which can make
13238         the SMPT server reject the email.
13240 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13242         `url-retrieve-synchronously' now takes an optional timeout parameter
13244         * doc/misc/url.texi (Retrieving URLs): Document optional parameters.
13246         * lisp/url/url.el (url-retrieve-synchronously): Allow passing
13247         in a timeout parameter (bug#22940).
13249 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13251         Include "Retype" as a comint password prompt
13253         * lisp/comint.el (comint-password-prompt-regexp): Include
13254         "Retype" to catch "Retype password for [account]:" from the
13255         "pass" utility (bug#22942).
13257 2016-04-25  Alan Mackenzie  <acm@muc.de>
13259         Fix spurious fontification of "for (; a * b;)" in CC Mode.
13261         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Check for being
13262         inside the parens of a for statement and after a semicolon near the beginning
13263         of the lambda form.
13265 2016-04-25  Paul Eggert  <eggert@cs.ucla.edu>
13267         New function ‘char-from-name’
13269         This also fixes the mishandling of "\N{CJK COMPATIBILITY
13270         IDEOGRAPH-F900}", "\N{VARIATION SELECTOR-1}", etc.
13271         Problem reported by Eli Zaretskii in:
13272         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00614.html
13273         * doc/lispref/nonascii.texi (Character Codes), etc/NEWS: Document this.
13274         * lisp/international/mule-cmds.el (char-from-name): New function.
13275         (read-char-by-name): Use it.  Document that "BED" is treated as
13276         a name, not as a hexadecimal number.  Reject out-of-range integers,
13277         floating-point numbers, and strings with trailing junk.
13278         * src/lread.c (character_name_to_code): Call char-from-name
13279         instead of inspecting ucs-names directly, so that we handle
13280         computed names like "VARIATION SELECTOR-1".  Do not use an auto
13281         string, since char-from-name might GC.
13282         * test/src/lread-tests.el: Add tests for new behavior, and
13283         fix some old tests that were wrong.
13285 2016-04-25  Alan Mackenzie  <acm@muc.de>
13287         c-forward-<>-arglist no longer directly applies face properties in Java Mode.
13289         This allows the calling of c-restore-<>-properties from c-common-init without
13290         the test suite giving spurious errors.
13292         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist): Remove the form that
13293         sets face properties.
13294         (c-forward-<>-arglist-recur): Reformulate the bit that handles types inside
13295         template brackets using c-inside-<>-type-key.  Don't bind
13296         c-record-type-identifiers or c-record-found-types around the recursive call,
13297         allowing positions of found types to flow back to the caller.
13299         * lisp/progmodes/cc-langs.el (c-inside-<>-type-kwds, c-inside-<>-type-key):
13300         new lang consts/var.
13302         * lisp/progmodes/cc-mode.el (c-common-init): Don't remove
13303         c-restore-<>-properties from the list of functions called at mode
13304         initialization.
13306 2016-04-25  Jun Hao  <jun_hao@aol.com>
13308         Pass in port only if provided by caller in the OS X keychain
13310         * lisp/auth-source.el (auth-source-macos-keychain-search): Pass in
13311         port only if provided (bug#23374).
13313 2016-04-25  Alan Mackenzie  <acm@muc.de>
13315         Add fontification for a C declaration which looks like a function call.
13317         For example, "t1 *fn (t2 *b);".
13319         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add new variable
13320         at-decl-start, setting it to whether the putative decl starts immediately
13321         after ; or { or }.  Accept such a construct as a decl when at-decl-start is
13322         non-nil.
13324         * lisp/progmodes/cc-langs.el (c-pre-start-tokens): New language variable.
13326 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
13328         Don't mirror slashes in convert-standard-filename on MS-Windows
13330         * lisp/w32-fns.el (w32-convert-standard-filename): Don't mirror
13331         slashes into backslashes.  This avoids producing ugly file names,
13332         and is deemed no longer necessary, and should certainly be
13333         unrelated to which shell is in use.
13335 2016-04-24  Dmitry Gutov  <dgutov@yandex.ru>
13337         Revert the disputed VC change and update the tests
13339         * lisp/vc/vc-hooks.el (vc-working-revision):
13340         Remove the previous change.
13341         (vc-state): Same.  And update the old, incorrect comment about
13342         unregistered files
13343         (http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00526.html).
13345         * test/lisp/vc/vc-tests.el (vc-test--state): Remove the check
13346         calling `vc-state' on default-directory (VC state is undefined
13347         for directories).  Check that `vc-state' returns nil where it
13348         returned `unregistered' before.  Remove all checks comparing
13349         invocations with the backend passed in explictly and without.
13350         (vc-test--working-revision): Remove all checks comparing
13351         invocations with the backend passed in explictly and without.
13352         Update comments, and add a new one.
13354 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13356         * etc/NEWS: Grammar and punctuation improvements.
13358 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13360         Merge from origin/emacs-25
13362         9daf1cf * etc/NEWS: Improve wording of vc-git-log-output-coding-syste...
13363         0cd2e92 Don't kill ~/ if it's the top level directory
13364         4f40f5f describe-char: fix insert char documentation
13365         87ee542 (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
13367 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13369         Merge from origin/emacs-25
13371         960f90d * etc/AUTHORS: Update the AUTHORS file
13372         b21e9d4 * admin/update_autogen: Use #!/usr/bin/env bash
13374 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13376         Merge from origin/emacs-25
13378         78f9af7 ; ChangeLog fixes
13379         162e549 * admin/authors.el (authors-ignored-files): Additions.
13380         2b31a0c In x_set_window_size restore do_pending_window_change calls
13381         401857e Fix Alt-modified keys on some European MS-Windows keyboards
13382         a77cf24 Document 'help-go-forward'
13383         1ba947f Revert "Allow to customize names of executables used by grep.el"
13384         570e0fa Revert "Don't use 'find-program'"
13385         645f4ef Revert "Use 'grep-find-program' in check-declare.el"
13386         aa03257 Clarify documentation of 'dired-mark-files-containing-regexp'
13387         ce0d8c7 Make tmm-menubar work in correct order again
13388         b8d5a8f Remove the Meta-CVS VC backend
13390 2016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
13392         Don't let `css--property-values' return duplicates
13394         * lisp/textmodes/css-mode.el (css--property-values): Don't return
13395         duplicate values.
13397         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
13398         Take the above into account.
13399         (css-test-property-values-no-duplicates): Test that duplicates aren't
13400         returned by `css--property-values'.
13402 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13404         Call `make-composed-keymap' correctly
13406         * lisp/image-mode.el (image-mode-map): Call
13407         `make-composed-keymap' correctly.
13409 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13411         Use `make-composed-keymap' instead of copying the keymap
13413         * lisp/image-mode.el (image-mode-map): Use
13414         `make-composed-keymap' instead of copying the keymap.
13416 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13418         Make `q' etc work in image mode again
13420         * lisp/image-mode.el (image-mode-map): Restore
13421         special-mode-map as the parent keymap of image-mode-map (bug#23167).
13423 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13425         Fix typo in last url.texi checkin
13427 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13429         Make STARTTLS error messages better
13431         * lisp/net/network-stream.el (network-stream-open-starttls):
13432         Output a better error message when TLS negotiation fails while
13433         doing STARTTLS (bug#23027).
13435 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13437         Encode the shr tests files with trailing white space
13439 2016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
13441         Cache results of `css--property-values'
13443         * lisp/textmodes/css-mode.el (css--property-values): Cache computed
13444         values.
13446         * test/lisp/textmodes/css-mode-tests.el (css-test-property-value-cache):
13447         New regression test for the above.
13449 2016-04-24  Michael Albinus  <michael.albinus@gmx.de>
13451         Some improvements in vc
13453         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
13454         Check, whether FILE is registered.
13456         * lisp/vc/vc-rcs.el (vc-rcs-checkout-model): Return `locking'
13457         for nonexistent files.
13459         * test/lisp/vc/vc-tests.el (w32-application-type): Declare.
13460         (vc-test--revision-granularity-function)
13461         (vc-test--unregister-function): Use `vc-call-backend'.
13462         (vc-test--run-maybe-unsupported-function): New defmacro.
13463         (vc-test--register, vc-test--state, vc-test--working-revision)
13464         (vc-test--checkout-model): Use it.  Fix also expected results.
13465         (vc-test-src02-state, vc-test-rcs04-checkout-model): They pass now.
13467 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13469         Document the nil/default values of url-user-agent
13471         * doc/misc/url.texi (Customization): Document the nil/default
13472         values of url-user-agent.
13474 2016-04-24  Clément Pit--Claudel  <clement.pit@gmail.com>
13476         Compute User-Agent dynamically in url-http
13478         * url-http.el (url-http-user-agent-string): Compute User-Agent
13479         string dynamically.
13480         (url-http--user-agent-default-string): New function.
13482         * url-vars.el (url-privacy-level): Allow `emacs' in list of
13483         information not to send.
13484         (url-user-agent): Add nil and `default' options; do not
13485         pre-compute value.
13487 2016-04-24  Jun Hao  <jun_hao@aol.com>
13489         Handle auth-source items with special characters on OS X
13491         * lisp/auth-source.el
13492         (auth-source-macos-keychain-search-items): Handle keychain
13493         output correctly when has special chararcters (bug#22824).
13495 2016-04-24  Magnus Henoch  <magnus.henoch@gmail.com>
13497         Implement process-attributes for Darwin
13499         * src/sysdep.c (timeval_to_timespec, make_lisp_timeval)
13500         (system_process_attributes): Implement process-attributes
13501         for Darwin (bug#16579).
13503 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13505         Use Unicode literals instead of hex values
13507         * lisp/net/shr.el (shr-tag-bdo): Use Unicode literals instead
13508         of hex values for greater readability.
13509         (shr-tag-bdi): Ditto.
13511 2016-04-24  Steve Purcell  <steve@sanityinc.com>
13513         Allow _ characters in SQL prompts
13515         * lisp/progmodes/sql.el (sql-product-alist): Allow _
13516         characters in SQL prompts (bug#22596).
13518         Fixes issue 22596, whereby "_" is now not considered a word constituent
13519         character in sql-interactive-mode, so prompts like "foo_dev# " are not
13520         correctly detected. Rather than piggy-back on the symbol table, we
13521         explicitly match against alphanumeric chars or "_".
13523 2016-04-23  Glenn Morris  <rgm@gnu.org>
13525         When autoload-timestamps is nil, use a dummy timestamp rather than "t".
13527         * lisp/emacs-lisp/autoload.el (autoload--non-timestamp): New constant.
13528         (autoload-generate-file-autoloads, autoload-find-destination)
13529         (update-directory-autoloads): Use autoload--non-timestamp.
13531 2016-04-23  Glenn Morris  <rgm@gnu.org>
13533         * test/lisp/xt-mouse-tests.el: Move from test/automated/.
13535 2016-04-22  Jö Fahlke  <jorrit@jorrit.de>  (tiny change)
13537         Regexps for matching CMake output
13539         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add
13540         regexps for matching CMake output.
13541         * test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data): Add
13542         CMake test cases.
13543         * etc/compilation.txt (CMake): Add CMake examples.
13545 2016-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13547         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
13549         Fix docstring quotes.
13551 2016-04-21  Paul Eggert  <eggert@cs.ucla.edu>
13553         Improve character name escapes
13555         * doc/lispref/nonascii.texi (Character Properties):
13556         Avoid duplication of Unicode names.  Reformat examples to fit in
13557         narrow pages.
13558         * doc/lispref/objects.texi (General Escape Syntax):
13559         Simplify and better-organize explanation of \N{...} escapes.
13560         * src/character.h (CHAR_SURROGATE_PAIR_P): Remove; unused.
13561         (char_surrogate_p): New inline function.
13562         * src/lread.c: Do not include string.h; no longer needed.
13563         (invalid_character_name, check_scalar_value): Remove; the ideas
13564         behind these functions are now bundled into character_name_to_code.
13565         (character_name_to_code): Remove undocumented support for "CJK
13566         IDEOGRAPH-XXXX" names, as "U+XXXX" suffices.  Reject monstrosities
13567         like "\N{U+-0}" and null bytes in \N escapes.  Reject floating
13568         point in \N escapes instead of returning garbage.  Use
13569         AUTO_STRING_WITH_LEN to lessen pressure on the garbage collector.
13570         * test/src/lread-tests.el (lread-char-number, lread-char-name)
13571         (lread-string-char-number, lread-string-char-name):
13572         Test runtime behavior, not compile-time, as the test framework
13573         is not set up to test compile-time.
13574         (lread-char-surrogate-1, lread-char-surrogate-2)
13575         (lread-char-surrogate-3, lread-char-surrogate-4)
13576         (lread-string-char-number-2, lread-string-char-number-3):
13577         New tests.
13578         (lread-string-char-number-1): Rename from lread-string-char-number.
13580 2016-04-21  Philipp Stephani  <phst@google.com>
13582         Use 'ucs-names' for character name escapes
13584         * lread.c (invalid_character_name, check_scalar_value)
13585         (parse_code_after_prefix, character_name_to_code): New helper
13586         functions that use 'ucs-names' and parsing for CJK ideographs.
13587         (read_escape): Use helper functions.
13588         (syms_of_lread): New symbol 'ucs-names'.
13589         * test/src/lread-tests.el: New tests; fix a couple of bugs in
13590         existing tests.
13592 2016-04-21  Philipp Stephani  <phst@google.com>
13594         Minor cleanups for character name escapes
13596         * src/lread.c (init_character_names): Add missing 'void'.
13597         Remove top-level 'const'.
13598         (read_escape): Simplify loop a bit.  Remove top-level 'const'.
13600 2016-04-21  Philipp Stephani  <phst@google.com>
13602         Add documentation for character name escapes
13604 2016-04-21  Philipp Stephani  <phst@google.com>
13606         Implement named character escapes, similar to Perl
13608         * lread.c (init_character_names): New function.
13609         (read_escape): Read Perl-style named character escape sequences.
13610         (syms_of_lread): Initialize new variable 'character_names'.
13611         * test/src/lread-tests.el (lread-char-empty-name): Add test file
13612         for src/lread.c.
13614 2016-04-21  Fabrice Popineau  <fabrice.popineau@gmail.com>
13616         Avoid run-time dependency on libwinpthread DLL on MS-Windows
13618         * nt/mingw-cfg.site (ac_cv_search_clock_gettime)
13619         (ac_cv_func_clock_gettime, ac_cv_func_clock_settime): Force to not
13620         present, so that MinGW64 builds don't depend on libwinpthread.
13621         (Bug#22959)
13623 2016-04-21  Matthew Leach  <matthew@mattleach.net>
13625         Add LIBSYSTEMD to the list of supported features
13627         * configure.ac: Add LIBSYSTEMD to EMACS_CONFIG_FEATURES and print a
13628         message at the end of configure stating whether Emacs will be build
13629         with libsystemd support.
13631 2016-04-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
13633         Support absolute column movement in 'ansi-term'
13635         * lisp/term.el (term-handle-ansi-escape): Handle the "\E[G" sequence
13636         for absolute column movement.  (Bug#23303)
13638 2016-04-21  Jorgen Schaefer  <contact@jorgenschaefer.de>
13640         Add Python 3.5 keyword "await"
13642         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
13643         keyword.
13645 2016-04-20  Simen Heggestøyl  <simenheg@gmail.com>
13647         Add "keyframes" to list of CSS at-rules
13649         * lisp/textmodes/css-mode.el (css-at-ids): Add "keyframes" at-rule.
13651 2016-04-20  Phillip Lord  <phillip.lord@russet.org.uk>
13653         Prevent bootstrap autoload backup files
13655          * lisp/emacs-lisp/autoload (autoload-find-generated-file): Suppress
13656            backups in newly created file.
13658           (autoload-ensure-default-file): Function split into two.
13659           (autoload-ensure-file-writeable): New function from split.
13661           (Bug#23203)
13663 2016-04-20  Paul Eggert  <eggert@penguin.cs.ucla.edu>
13665         Fix org-timestamp-change typo
13667         Problem reported by Peter Münster (Bug#23299).
13668         * lisp/org/org.el (org-timestamp-change): Fix typo that relied
13669         on undocumented behavior in ‘encode-time’.  In practice the
13670         old code used local time, so use that.
13672 2016-04-19  Paul Eggert  <eggert@cs.ucla.edu>
13674         Avoid AC_PREPROC_IFELSE glitch in configure.ac
13676         Problem reported by Angelo Graziosi in:
13677         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00545.html
13678         * configure.ac (gl_gcc_warnings): Work around an Autoconf glitch:
13679         AC_PREPROC_IFELSE doesn’t generate a simple shell command.
13681 2016-04-19  Michael Albinus  <michael.albinus@gmx.de>
13683         autorevert: Resume with polling if file is deleted
13685         * lisp/autorevert.el: Use consistent wording in comments and
13686         docstrings.
13687         (auto-revert-mode): Add local function to `kill-buffer-hook'.
13688         (auto-revert-notify-handler): Improve handling of `stopped' event.
13690         * test/lisp/autorevert-tests.el
13691         (auto-revert-test02-auto-revert-deleted-file): New test.
13692         (auto-revert-test03-auto-revert-tail-mode)
13693         (auto-revert-test04-auto-revert-mode-dired): Rename them.
13695 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13697         Merge from origin/emacs-25
13699         5a0cbe5 Fix Bug#23276
13700         2007e32 Sync with upstream vhdl mode v3.38.1.
13701         b6d2552 Tweak configure.ac syntax in recent module patch
13703 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13705         Merge from origin/emacs-25
13707         ac00a92 Make sh-electric-here-document-mode accessible in sh-mode-hoo...
13708         3287f48 ; Add entry to MAINTAINERS
13709         b85981f * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from prev...
13710         0f33284 Make use of rectangle-preview custom variable.
13711         aa0d83a Make use of rectangle-preview face.
13712         33bef6e Use 'grep-find-program' in check-declare.el
13713         a8560e5 Improve "C-h S" for cl-lib symbols
13714         52e798b Fix minor issues with removing left or right fringes
13715         d6ffd64 Speed up redisplay in ansi-term mode
13716         4ab671c Simplify 8-bit character handling by terminal for 'raw-text'
13717         f3653ec * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bu...
13718         ab849b7 Fix w32 memory-management problem when extending buffer text
13720 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13722         Merge from origin/emacs-25
13724         32364bb substitute-command-keys keeps quotes’ text props
13725         567ab52 * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping ...
13726         24b87a1 Add semantic-symref-filepattern-alist entry for lisp-interact...
13727         cc0b713 Perform xref searches without visiting unopened files
13728         5045575 Revert "Prevent bootstrap autoload backup files"
13730 2016-04-18  Philipp Stephani  <p.stephani2@gmail.com>
13732         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
13734         so that it matches the actual implementation.
13735         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
13737 2016-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
13739         * lisp/textmodes/ispell.el: Compile with lexical-binding
13741         (declare-function): Don't define any more.
13742         (ispell-check-minver, ispell-looking-back): Tweak definition so that
13743         the compiler can obviously know that it's always defined.
13744         (ispell-debug-buffer): Declare var.
13745         (ispell-hunspell-fill-dictionary-entry)
13746         (ispell-parse-hunspell-affix-file, ispell-hunspell-add-multi-dic)
13747         (ispell-find-hunspell-dictionaries, ispell-set-spellchecker-params)
13748         (ispell-command-loop): Avoid add-to-list on local variables.
13750 2016-04-17  Paul Eggert  <eggert@cs.ucla.edu>
13752         Minor fixups for external socket launching
13754         * configure.ac (HAVE_LIBSYSTEMD): Change earliest version to 222.
13755         * doc/emacs/misc.texi (Emacs Server):
13756         * etc/NEWS: Spelling and doc fixes.
13757         * src/emacs.c (main) [HAVE_LIBSYSTEMD]:
13758         Check for sd_is_socket returning positive, not zero.
13759         * src/process.c (external_sock_fd): Instead of initializing here ...
13760         (init_process_emacs): ... initialize it here, so that it does the
13761         right thing after dump/restore.
13762         (connect_network_socket): Simplify socket_to_use test.
13764 2016-04-17  Simen Heggestøyl  <simenheg@gmail.com>
13766         Add HTML5 tags to HTML mode
13768         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 tags.
13769         (html-tag-help): Add short descriptions of those tags.
13771 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13773         Finish idna->puny changes in last Message patch
13775         * lisp/gnus/message.el (message-idna-to-ascii-rhs-1): Use puny
13776         instead of idna functions.
13778 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13780         Use puny.el instead of idna.el functions in Gnus
13782         * lisp/gnus/gnus-art.el (gnus-use-idna): Default to t (since
13783         Emacs comes with IDNA support built in).
13784         (article-decode-idna-rhs): Use `puny-decode-domain' instead of
13785         `idna-to-unicode'.
13787         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message): Ditto.
13789 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13791         Mention `message-use-idna' in NEWS
13793 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13795         Default `message-use-idna' to t
13797         * lisp/gnus/message.el (message-use-idna): Default to t (since
13798         Emacs comes with puny.el now).
13800 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13802         Extend battery.el to exotic power supply types
13804         * lisp/battery.el (battery-linux-sysfs-regexp): Rename from
13805         'battery--linux-sysfs-regexp' and make a defcustom. All users
13806         changed.  (Bug#23216)
13808 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13810         Add external socket launching support
13812         * src/process.c (connect_network_socket): Allow a pre-allocated socket
13813         descriptor to be used if passed to Emacs, avoiding the call to
13814         'socket' and 'bind'.
13815         (Fmake_network_process): Allow users to pass ':use-external-socket' in
13816         the parameter plist to use any sockets that have been passed to Emacs.
13817         (wait_reading_process_output): Call 'socket' and 'bind' every time.
13818         (syms_of_process): New symbol ':use-external-socket'.
13819         (set_external_socket_descriptor): New function.
13820         (external_sock_fd): New variable.
13821         * src/lisp.h: (set_external_socket_descriptor): New declaration.
13822         * src/emacs.c (main): Call 'sd_listen_fds' to read the number of sockets
13823         passed and call 'set_external_socket_descriptor' to set the external
13824         socket.
13825         * src/Makefile.in: Add libsystemd library and C flags to the Emacs
13826         compilation options.
13828         * configure.ac: Add new default-on option "systemd" and check for
13829         libsystemd at configure time.
13831         * lisp/server.el (server-start): Set ':use-external-socket' to 't' when
13832         calling 'make-network-process'.
13834         * etc/NEWS: Document new socket-passing functionality and the configure
13835         option to disable systemd interaction.
13837         * doc/emacs/misc.texi (Emacs Server): Document systemd socket passing
13838         functionality and provide systemd unit examples.
13839         * doc/lispref/processes.texi (Network Processes): Document new
13840         'make-network-process' option ':use-external-socket'.
13842 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13844         Don't spell-check argument of 'cref' TeX macro
13846         * lisp/textmodes/ispell.el (ispell-tex-skip-alists): Add the cref
13847         macro to skip spell-checking the cref macro argument.
13849 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13851         Simplify use of O_BINARY
13853         * src/callproc.c (call_process):
13854         * src/fileio.c (write_region):
13855         * src/filelock.c (read_lock_data):
13856         * src/image.c (x_find_image_fd):
13857         * src/lread.c (openp):
13858         * src/sysdep.c (init_random, emacs_fopen):
13859         * src/unexcw.c (unexec):
13860         Omit unnecessary use of O_BINARY, since emacs_open now arranges
13861         that for us.
13863 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13865         * src/indent.c (Fvertical_motion): Pacify GCC
13867         5.3.1 20160406 (Red Hat 5.3.1-6) on x86-64.
13869 2016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13871         Port ‘./autogen.sh git’ to non-clones
13873         Problem reported by Angelo Graziosi in:
13874         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00341.html
13875         * autogen.sh (do_git): Default to false when the arg is ‘all’ but
13876         there is no ‘.git’.
13877         (git_common_dir, hooks): New vars.
13878         (git_config, tailored_hooks, sample_hooks): Use them.
13880 2016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13882         Do not require that .git be a directory
13884         Problem reportyed by Phillip Lord.
13885         * admin/update_autogen, autogen.sh, build-aux/gitlog-to-emacslog:
13886         * configure.ac, make-dist:
13887         Do not require that .git be a directory, as 'git worktree' makes
13888         it a file and not a directory.
13890 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13892         Avoid now-obsolete function gmm-format-time-string
13894         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13895         Use format-time-string instead of obsolete function
13896         gmm-format-time-string.
13898 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13900         Support OFFSET and (OFFSET ABBR) time zone rules
13902         This simplifies Gnus and VC time zone support, by letting them
13903         feed the output of ‘current-time-zone’ and ‘decode time’ to
13904         primitives that accept time zone arguments.
13905         * doc/lispref/os.texi (Time Zone Rules, Time Conversion):
13906         * etc/NEWS:
13907         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13908         * lisp/org/org.el (org-timestamp-format):
13909         * src/editfns.c (Fformat_time_string, Fdecode_time):
13910         (Fcurrent_time_string, Fcurrent_time_zone, Fset_time_zone_rule):
13911         Document new behavior.
13912         * lisp/gnus/gmm-utils.el (gmm-format-time-string):
13913         * lisp/vc/add-log.el (add-log-iso8601-time-zone):
13914         Mark as obsolete, as it is now just an alias or narrow wrapper
13915         around format-time-string.
13916         * src/editfns.c (tzlookup): Also support integer OFFSET and
13917         list (OFFSET ABBR) as time zone rules.
13918         (Fencode_time): No longer need a special case for a cons ZONE.
13919         (Fcurrent_time_zone): If the time zone string is missing, compute
13920         it the same way the other new code does.
13922 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13924         Merge from origin/emacs-25
13926         ca50981 Improve time zone documentation
13927         c23c965 Prevent bootstrap autoload backup files
13928         9344612 Disable multicolor fonts on OS X since they are not supported...
13929         c41ce1c Capitalize “Universal Time” in documentation
13930         10597c9 Don't use 'find-program'
13932 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13934         Merge from origin/emacs-25
13936         b134c20 Sync with gnulib
13937         bb30fa9 Fix last change on 2016-01-02
13938         488a72f ; Spelling fixes
13939         9b1aab9 Port run-prolog EMACS to SWI-Prolog 7.2.3
13940         0e7bcec Avoid crashes due to unreasonably large or small text scaling
13941         85f257c Improve documentation of 'with-eval-after-load'
13942         668c7bc Improve handling of non-ASCII characters in Git log messages
13943         b570769 Remove undefined behavior in OS X dumper.
13944         97211f3 Fix clipping of xwidgets
13945         e87fbc0 Improve Lisp-level documentation of tooltips
13946         9f1786e Faces names should not end in "-face".
13947         3283271 * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
13948         a1f221b Comint and compile no longer set EMACS
13949         5c28890 * lisp/subr.el (read-key): Don't let the prompt linger (bug#2...
13950         a75b9a6 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
13951         c93ae7a Allow to customize names of executables used by grep.el
13952         f6497c6 Set locale encoding to UTF-8 when run from OS X GUI.
13953         7ad1d07 Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
13954         a3f1ac2 Avoid infinite loop in 'studlify-word'
13955         f36df4b Don’t recommend obsolete EMACS env var
13956         fb0b531 * lisp/emacs-lisp/package.el: Change from a few days ago need...
13958 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13960         Merge from origin/emacs-25
13962         96d9e78 Fix "Beginning of buffer" error in forward-page
13963         20686f7 Add a `transient' project type
13965 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13967         Merge from origin/emacs-25
13969         80128a7 Fix stability confusion in sort-tests
13970         1e4aa42 Avoid describe-key error with lambdas
13971         a05fb21 * lisp/emacs-lisp/package.el (package-install-selected-packag...
13972         f501116 Sync with gnulib
13973         c4963f9 Fix doc for Universal Time
13975 2016-04-10  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
13977         Fix alignement rule for CSS
13979         * lisp/align.el (align-rules-list): Support CSS properties that have
13980         multiple words.
13982 2016-04-10  Tassilo Horn  <tsdh@gnu.org>
13984         New custom option for overriding mailcap choices
13986         * lisp/net/mailcap.el (mailcap--get-user-mime-data): New function.
13987         (mailcap--set-user-mime-data): New function.
13988         (mailcap-user-mime-data): New customization option.
13989         (mailcap-select-preferred-viewer): New function.
13990         (mailcap-mime-info): Use it.
13992         * doc/misc/emacs-mime.texi (mailcap): Document `mailcap-user-mime-data'.
13994 2016-04-10  Michael Albinus  <michael.albinus@gmx.de>
13996         Fix Bug#23207
13998         * src/keyboard.c (read_char): Resume idle timers in case of
13999         dbus-event, file-notify-event and config-changed-event.
14000         Reported by Johan Claesson <johanclaesson@bredband.net>.  (Bug#23207)
14002 2016-04-09  Michael Albinus  <michael.albinus@gmx.de>
14004         Add vc-backend and vc-responsible-backend tests
14006         * lisp/vc/vc-hooks.el (vc-file-setprop, vc-file-getprop)
14007         (vc-file-clearprops): Use properties on absolute files.
14009         * test/lisp/vc/vc-tests.el (vc-test--unregister-function):
14010         Clear file properties.
14011         (vc-test--register): Add tests for `vc-backend' and
14012         `vc-responsible-backend'.  Catch other errors but `vc-not-supported'.
14013         (vc-test--state, vc-test--checkout-model): Catch other errors
14014         but `vc-not-supported'.
14015         (vc-test--working-revision): Fix test for RCS and SCCS.  Catch
14016         other errors but `vc-not-supported'.
14017         (vc-test-src02-state): Mark as an expected failure.
14019 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
14021         Minor improvements for hash function primitives
14023         * src/fns.c (hashfn_eql): Define in terms of hashfn_equal and
14024         hashfn_eq rather than reaching inside them.
14025         (hashtest_eq, hashtest_eql, hashtest_equal):
14026         Now constants with initializers.
14027         (syms_of_fns): Omit no-longer-needed initialization.
14028         * src/lisp.h (LISPSYM_INITIALLY): New macro.
14029         (DEFINE_LISP_SYMBOL): Use it.
14031 2016-04-08  Paul Pogonyshev  <pogonyshev@gmail.com>
14033         New primitives sxhash-eq, sxhash-eql
14035         * doc/lispref/hash.texi (Defining Hash), etc/NEWS: Document this.
14036         * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
14037         Add sxhash-equal, sxhash-eq, sxhash-eql.
14038         * lisp/subr.el (sxhash): Now an alias for sxhash-equal.
14039         * src/fns.c (Fsxhash_eq, Fsxhash_eql): New functions.n
14041 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
14043         Teach Dired support parallel execution of commands on MS-Windows
14045         * lisp/dired-aux.el (dired-shell-stuff-it): Support
14046         parallel-in-background execution of commands on MS-Windows.
14047         Test 'w32-shell-dos-semantics' instead of the underlying OS
14048         when determining whether addition of 'wait' is needed.
14050 2016-04-08  Tino Calancha  <f92capac@gmail.com>
14052         Make 'dired-do-shell-command' wait for all background jobs
14054         * lisp/dired-aux.el (dired-shell-stuff-it): Force POSIX shells to
14055         wait until all background jobs exit.  (Bug#23206).
14057 2016-04-07  Vivek Dasmohapatra  <vivek@etla.org>
14059         Prefer 'font-lock-face to 'face in erc where appropriate
14061         * lisp/erc/erc-button.el (erc-button-add-face): Prefer
14062         'font-lock-face to 'face where appropriate.
14063         * lisp/erc/erc-capab.el (erc-capab-identify-add-prefix)
14064         * lisp/erc/erc-dcc.el (erc-dcc-chat-parse-output)
14065         * lisp/erc/erc-goodies.el (erc-controls-propertize)
14066         * lisp/erc/erc-stamp.el (erc-format-timestamp)
14067         * lisp/erc/erc-track.el (erc-faces-in)
14068         * lisp/erc/erc.el (erc-load-irc-script-lines, erc-display-msg)
14069         (erc-display-command, erc-make-notice, erc-highlight-notice)
14070         (erc-format-my-nick, erc-format-@nick, erc-format-privmessage)
14071         (erc-display-prompt, erc-display-message-highlight)
14072         (erc-log-irc-protocol): Ditto.
14074         * test/lisp/erc/erc-track-tests.el: Converted asserts into ert
14075         tests.
14077 2016-04-06  Lele Gaifax  <lele@metapensiero.it>
14079         Add new keywords of Python 3.5
14081         Python 3.5, released in mid September 2015, introduced a few new
14082         keywords to better support asynchronous code, "async" and "await"
14083         in particular. See https://www.python.org/dev/peps/pep-0492/ for
14084         details. (Bug#21783)
14085         * lisp/progmodes/python.el (python-rx-constituents): Add async
14086         def/for/with as block-start and async def as defun.
14087         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
14088         def/for/with as keyword.
14089         * test/automated/python-tests.el (python-indent-after-async-block-1,
14090         python-indent-after-async-block-2, python-indent-after-async-block-3,
14091         python-nav-beginning-of-defun-3): New tests to test indentation and
14092         navigation for the async keyword.
14094 2016-04-05  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
14096         Support completion of at-rules in SCSS mode
14098         lisp/textmodes/css-mode.el (scss-at-ids): New defconst holding
14099         SCSS-specific at-rules.
14100         (css--at-ids): New buffer-local variable holding the list of at-rules
14101         for the current mode.
14102         (css--complete-at-rule): Retrieve at-rules from `css--at-ids`.
14103         (scss-mode): Set `css--at-ids'.
14105 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
14107         Enable GCC warnings in developer builds
14109         However, do not fail; just issue the warnings.  Add an option
14110         --enable-gcc-warnings=warn-only to configure, to implement this.
14111         * INSTALL, etc/NEWS: Document this.
14112         * configure.ac (gl_GCC_VERSION_IFELSE): New macro, from coreutils.
14113         (gl_gcc_warnings, WERROR_CFLAGS): Use it to add new option.
14114         Don’t treat --with-x-toolkit=no as a special case when configuring
14115         warnings.
14117 2016-04-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14119         Inhibit querying for the encoding of the headers when resending
14121         * lisp/gnus/message.el (message-resend): Inhibit querying for
14122         the encoding of the headers when resending.
14124 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14126         Prefer AUTO_STRING_WITH_LEN to make_formatted_string
14128         * src/buffer.c (Fgenerate_new_buffer_name):
14129         * src/filelock.c (get_boot_time):
14130         * src/minibuf.c (get_minibuffer):
14131         * src/process.c (make_process):
14132         * src/xdisp.c (ensure_echo_area_buffers):
14133         Prefer AUTO_STRING_WITH_LEN + sprintf to make_formatted_string
14134         when either will do.
14136 2016-04-04  Tao Fang  <fangtao0901@gmail.com>
14138         Allow URL using HTTPS proxies using CONNECT
14140         * lisp/url/url-http.el (url-http-find-free-connection): Allow
14141         using proxies (bug#11788).
14142         (url-http-end-of-document-sentinel): Ditto.
14143         (url-http): The protocol may change from http to https and
14144         vice versa.
14145         (url-https-proxy-connect): Allow using CONNECT proxies for https.
14147 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14149         New C macro AUTO_STRING_WITH_LEN
14151         Put a bit less pressure on the garbage collector by defining a
14152         macro that is like AUTO_STRING but also allows null bytes in strings,
14153         and by extending AUTO_STRING to work with any unibyte string.
14154         * src/alloc.c (verify_ascii): Remove; all uses removed.
14155         AUTO_STRING can now be used on non-ASCII unibyte strings.
14156         * src/lisp.h (AUTO_STRING): Now allows non-ASCII unibyte strings.
14157         (AUTO_STRING_WITH_LEN): New macro.
14158         * src/coding.c (from_unicode_buffer):
14159         * src/editfns.c (format_time_string):
14160         * src/emacs-module.c (module_make_string, module_format_fun_env):
14161         * src/fileio.c (Fexpand_file_name):
14162         * src/font.c (font_parse_family_registry):
14163         * src/ftfont.c (ftfont_get_charset):
14164         * src/keymap.c (silly_event_symbol_error):
14165         * src/menu.c (single_menu_item):
14166         * src/sysdep.c (system_process_attributes):
14167         Use AUTO_STRING_WITH_LEN if possible.
14168         * src/emacs-module.c (module_make_function):
14169         * src/fileio.c (report_file_errno, report_file_notify_error):
14170         * src/fns.c (Flocale_info):
14171         * src/sysdep.c (system_process_attributes):
14172         Use AUTO_STRING if possible.  This is doable more often now
14173         that AUTO_STRING works on any unibyte string.
14175 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14177         Port redirect-debugging-output to MS-Windows
14179         Suggested by Eli Zaretskii in:
14180         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00037.html
14181         * src/print.c [WINDOWSNT]: Include sys/socket.h.
14182         * src/w32.c (sys_dup2): Work around problem with MS-Windows _dup2.
14184 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14186         Port redirect-debugging-output to non-GNU/Linux
14188         Problem reported by Kylie McClain for musl in:
14189         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01592.html
14190         * etc/DEBUG, etc/NEWS: Mention this.
14191         * src/callproc.c (child_setup) [!MSDOS]:
14192         * src/dispnew.c (init_display):
14193         * src/emacs.c (main, Fdaemon_initialized):
14194         * src/minibuf.c (read_minibuf_noninteractive):
14195         * src/regex.c (xmalloc, xrealloc):
14196         Prefer symbolic names like STDERR_FILENO to magic numbers like 2,
14197         to make file-descriptor manipulation easier to follow.
14198         * src/emacs.c (relocate_fd) [!WINDOWSNT]: Remove; no longer needed
14199         now that we make sure stdin, stdout and stderr are open.  All uses
14200         removed.
14201         (main): Make sure standard FDs are OK.  Prefer symbolic names like
14202         EXIT_FAILURE to magic numbers like 1.  Use bool for boolean.
14203         * src/lisp.h (init_standard_fds): New decl.
14204         * src/print.c (WITH_REDIRECT_DEBUGGING_OUTPUT) [GNU_LINUX]:
14205         Remove; no longer needed.
14206         (Fredirect_debugging_output): Define on all platforms, not just
14207         GNU/Linux.  Redirect file descriptor, not stream, so that the code
14208         works even if stderr is not an lvalue.  Report an error if the
14209         file arg is neither a string nor nil.
14210         (syms_of_print): Always define redirect-debugging-output.
14211         * src/sysdep.c (force_open, init_standard_fds): New functions.
14213 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14215         Spelling fixes
14217 2016-04-03  John Wiegley  <johnw@newartisans.com>
14219         Revert "Add `r'/`l' grep command history commands"
14221         This reverts commit a32eea60ac90d367435860fe3a10bf843e6f497c.
14223 2016-04-03  John Wiegley  <johnw@newartisans.com>
14225         Revert "Restore the point in grep buffers when traversing the history"
14227         This reverts commit f7c5f79ca565d3ef3feeb1e0af5ca261f1bcf58a.
14229 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14231         Merge from origin/emacs-25
14233         787df9d ; * src/keyboard.c (read_char): Fix typos in a comment.
14235 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14237         Merge from origin/emacs-25
14239         b787d55 More format-time-string change fixups
14240         13c8f29 make-xwidget unused arg cleanup
14241         36e05f0 Remove unused arguments from make-xwidget
14242         1042217 Document incompatible changes in 'format-time-string'
14243         7228eb8 Improve documentation of byte-code objects
14244         0020047 Adapt calls to 'format-time-string' to changes in Emacs 25
14245         17b5152 Improve vc-diff with Git backend
14246         c28f87a (js--continued-expression-p): Special-case unary plus and minus
14247         2d02a5f ; * lisp/vc/vc-annotate.el (vc-annotate): Clarify commentary.
14248         9151f16 Prevent C++ Mode wrongly fontifying some identifiers near tem...
14249         b3b523c Avoid crashes due to insanely large columns in tabulated-list...
14250         a3daa34 Teach M-x disassemble a default argument.
14251         e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
14252         df441b3 Fix OS X specific settings in tramp-tests
14253         2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
14255         # Conflicts:
14256         #       lisp/net/tramp-sh.el
14257         #       lisp/progmodes/cc-engine.el
14259 2016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14261         Restore the point in grep buffers when traversing the history
14263         * lisp/progmodes/grep.el (grep-process-setup): Allow moving
14264         point to a specific place after finishing the grep command.
14265         (grep-mode): Use it to restore point after traversing the history.
14266         (grep--history-point): New internal variable.
14267         (grep--save-history, grep-forward-history): Use it to restore
14268         the point.
14270 2016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14272         Add `r'/`l' grep command history commands
14274         * doc/emacs/building.texi (Grep Searching): Mention the
14275         `r'/`l' commands.
14277         * lisp/progmodes/grep.el (grep-forward-history): New command.
14278         (grep-backward-history): Ditto.
14279         (grep--save-buffers): New function.
14280         (grep): Use it to record the history.
14281         (grep--command-history, grep--history-inhibit)
14282         (grep--history-place): New internal variables for the grep
14283         history (bug#22627).
14285 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14287         Fix Bug#23186, again
14289         * lisp/net/tramp.el (tramp-encoding-shell)
14290         (tramp-encoding-command-switch)
14291         (tramp-encoding-command-interactive): Check for
14292         `w32-shell-name'.  (Bug#23186)
14294 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14296         Fix Bug#23186
14298         * lisp/net/tramp.el (tramp-encoding-command-switch)
14299         (tramp-encoding-command-interactive):
14300         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
14301         `tramp-encoding-shell' could be nil.  (Bug#23186)
14303 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14305         Fix Bug#22145
14307         * lisp/net/tramp-cache.el (tramp-get-connection-property)
14308         (tramp-set-connection-property, tramp-connection-property-p)
14309         (tramp-flush-connection-property): Improve docstring.
14311         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
14313         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
14315         * test/automated/tramp-tests.el (tramp--test-utf8):
14316         Improve settings of coding systems.  (Bug#22145)
14318 2016-04-02  John Wiegley  <johnw@newartisans.com>
14320         Merge from origin/emacs-25
14322         7c1802f * doc/lispref/text.texi (Columns): Remove a nonexistent refer...
14323         9034c50 * doc/man/emacsclient.1: Document +line:column option.
14324         06495c9 Fix rare problems with echo-area display and multiple frames
14325         f99b512 In M-%, avoid making buffer-local binding of text-property-de...
14327 2016-04-02  John Wiegley  <johnw@newartisans.com>
14329         Merge from origin/emacs-25
14331         e65c307 * src/font.c (QCuser_spec): Add missing colon to :user-spec.
14332         c8b868b Don't start the 'midnight' timer twice
14333         278c8a7 * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of X...
14334         e5c17f4 Fix todo-mode category movement
14335         bc70fda * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
14336         cf40f38 Ignore non-nil. non-cons values of unread-command-events
14337         8ee4c52 Improve documentatuon of 'truncate-partial-width-windows'
14338         fb9a62c * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU...
14339         1e1ea22 Fix 'dired-goto-file' in Dired buffers produced by find-dired
14340         3a13472 Fix map-put and map-delete for alists (Bug#23105)
14341         422c3da Minor copyedits of documentation for temporary displays
14342         90fb9b3 Add customization option for using UTF-8 coordinates in xt-mouse
14343         f14d463 Minor doc string fixes in replace.el
14344         e70ee9d Fix scrolling upwards with 'xwidget-webkit-browse-url'
14345         44782de Fix display of Indic scripts
14346         326c64f Fix splash screen display at startup
14347         7ab2a97 ; In NEWS mention new display of minibuffer completions window
14348         a1cd84c Describe temporary displays in Emacs manual
14349         5ec1056 Avoid stray As next to IDLW icons
14350         45577d5 Avoid GTK 3 crash with icons and masks
14351         e99ff6e * lisp/minibuffer.el (minibuffer-completion-help): Use fit-wi...
14352         077b78c Define make_save_ptr_ptr unconditionally
14353         20a1003 Preserve current buffer when popping up TTY menus
14354         7eba90c Improve font selection by family on MS-Windows
14355         73d213f Comint, term, and compile now set EMACS
14356         9524ec5 Ignore more merges when generating ChangeLog
14357         ad250f2 Sync with gnulib
14358         c0165ea Resurrect GNUS-NEWS autogeneration
14359         1e5327c ; Backport ChangeLog.2 fixes from master
14360         e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
14361         38a43f1 Fix bug in displaying header line with a box face
14362         91e6676 Fix an Isearch var to be a string (Bug#23038)
14363         76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
14364         8a35f83 Render empty <ul><li><ul> correctly
14365         d8b2ce5 Ignore invalid base64 encoded embedded images
14366         52ba24b Fix <p> and <div> newlines with or without <li> in shr
14367         b8ea08b Avoid errors in 'newline'
14368         fc3cd53 Fix Bug#23032
14369         dd2737b Adjudicate review comments in abbrevs.texi
14370         26f9c50 Fixup the "normal" matcher; highlight global var symbols, too
14371         413e73b ; Small theme additions
14372         cd950da Honor prefix arg in doc-view-next-line-or-next-page
14373         ed909c0 ; Spelling fixes
14374         6da3a6d Port to strict C99 offsetof
14375         de7601f Port to GTK with strict C11 compiler
14376         658aa2d Port to GTK with strict C99 compiler
14377         1df7173 Avoid screen artifacts with new OS X visible bell after scrol...
14378         7a2edd3 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
14379         dca240a Suppress some Tramp tests for OSX, do not merge with master
14380         9094304 * lisp/progmodes/xref.el (xref-buffer-name, xref--window): Mo...
14381         cbedfc2 * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
14382         005ac7c * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
14383         9ab03f2 ; Auto-commit of loaddefs files.
14384         56df617 Address compilation warnings due to 2016-01-03 mml refactoring.
14385         a1ef911 * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp i...
14386         79ae7fb * lisp/dired-x.el (dired-omit-here-always): Correct error mes...
14387         253929f * lisp/dired-x.el (dired-omit-here-always): Replace undefined...
14388         ce53389 * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
14389         d6d164f Avoid segfaults due to frame image cache being absent
14390         bc7f6f6 Improve documentation of glyphless-character display
14391         6b6916e ; * src/xdisp.c (with_echo_area_buffer): Fix typos in comments.
14392         ee9a1f7 Support safe navigation operator in non-SMIE indentation code
14393         c3ed95b Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
14394         2036be4 Fix Ruby's operator precedence
14395         1d686c2 (ruby-interpolation-inside-another-interpolation): New failin...
14396         7950e1d Port to clang 3.7.0 on x86-64
14397         218ae59 * test/automated/package-test.el (package-test-signed): Tweak...
14398         ba33b7c Sync with gnulib
14399         38b276d Fix startup of "emacs -nw" on systems that CANNOT_DUMP
14400         dbfbedd Do not tokenize a comment before continuation as ';'
14401         0403620 Don't misindent arguments of a method call inside continuation
14402         e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec...
14403         8475f3d ASCII-only etc/NEWS etc.
14404         5cc6919 Fix a cacheing bug, which led to inordinately slow c-beginnin...
14405         0ce37ea Fix Isearch prompt when invoked with an argument
14406         f3033d4 Fix a typo in the Emacs manual
14407         4235d2d Curved quotes in etc/NEWS etc.
14408         26b56dc Fix some single quotes in documentation
14409         80ec484 Make lisp-completion-at-point's argument optional
14410         9d463ae Tweak the left precedence of '=>'
14411         5b705bc Indent '.' relative to the first sibling expression
14412         04f5525 Make '.' associative, for easier sexp navigation
14413         ba24c99 Revert "Simplify "Visit New File" to "New File""
14415 2016-04-02  Stefan Monnier  <monnier@iro.umontreal.ca>
14417         * lisp/erc/erc-backend.el: Use lexical-binding. Silence byte-compiler
14419         Use #' to quote functions.
14420         (erc-server-delayed-reconnect): Remove unused arg `event'.
14421         (erc-process-sentinel-2): Adjust accordingly.
14422         Don't pass `err' to condition-case if we don't use it.
14423         (define-erc-response-handler): Use add-hook rather than add-to-list.
14424         (NICK): Use cl-pushnew rather than add-to-list.
14425         (331): Remove unused var `topic'.
14426         (352): Remove unused var `hopcount'.
14428 2016-04-02  Paul Pogonyshev  <pogonyshev@gmail.com>
14430         Support macros in 'func-arity'
14432         * src/eval.c (Ffunc_arity): Support Lisp macros as well.
14434 2016-04-02  Andy Moreton  <andrewjmoreton@gmail.com>
14436         Fix compilation of Cygwin w32 port
14438         * src/w32xfns.c (init_crit, delete_crit) [HAVE_W32NOTIFY]: Only
14439         initialize and free the notification set if compiling with
14440         w32notify feature.
14442 2016-04-01  Paul Eggert  <eggert@penguin.cs.ucla.edu>
14444         Fix resize incompatibility with GTK+ master
14446         Problem reported by Matthias Clasen (Bug#23144).
14447         * src/xterm.c (handle_one_xevent) [USE_GTK]:
14448         Do not call xg_frame_resized.
14450 2016-04-01  Paul Eggert  <eggert@cs.ucla.edu>
14452         Fix check for subscript errors in module calls
14454         * src/emacs-module.c (check_vec_index): New function.
14455         (module_vec_set, module_vec_get): Use it instead of a
14456         not-strict-enough check.
14458 2016-03-31  Simen Heggestøyl  <simenheg@gmail.com>
14460         Support completion of bang-rules in CSS mode
14462         lisp/textmodes/css-mode.el (css--bang-ids): New buffer-local variable
14463         holding the list of bang-rules for the current mode.
14464         (css--font-lock-keywords): Retrieve bang-rules from `css--bang-ids'
14465         instead of computing them.
14466         (css--complete-bang-rule): New function for completing a bang-rule.
14467         (css-completion-at-point): Add support for completing bang-rules.
14468         (scss-font-lock-keywords): Change from a variable to a function in
14469         order to recompute `css--font-lock-keywords' when `css--bang-ids' has
14470         changed.
14471         (scss-mode): Set `css--bang-ids' and recompute font-lock keywords.
14473 2016-03-30  Simen Heggestøyl  <simenheg@gmail.com>
14475         Add HTML4 tags to HTML mode
14477         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML4 tags.
14478         (html-tag-help): Add short descriptions of those tags.
14480 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14482         Pacify --enable-gcc-warnings for buffer-hash etc.
14484         * src/fns.c (make_digest_string): Now static.
14485         (secure_hash): Omit unused local.
14487 2016-03-29  Oleh Krehel  <ohwoeowho@gmail.com>
14489         Add support for 7z archives
14491         * lisp/dired-aux.el (dired-compress-file-suffixes): "Z" should now
14492           also work with 7z archives.
14494         The shell command should produce a single extracted directory named
14495         after the archive's name.
14497         In case the extracted directory exists, all files will be overwritten
14498         without a prompt. This matches the expected behavior with the "tar.gz"
14499         archives.
14501 2016-03-29  Nicolas Petton  <nicolas@petton.fr>
14503         * lisp/emacs-lisp/seq.el: Require cl-lib instead of cl-extra
14505 2016-03-29  Michael Albinus  <michael.albinus@gmx.de>
14507         Fix typo in network-stream-tests.el
14509         * test/lisp/net/network-stream-tests.el
14510         (connect-to-tls-ipv6-nowait): Fix typo.
14512 2016-03-29  Nicolas Petton  <nicolas@petton.fr>
14514         New function seq-sort-by in seq.el
14516         * lisp/emacs-lisp/seq.el (seq-sort-by): New function.
14517         * test/lisp/emacs-lisp/seq-tests.el: New test for seq-sort-by.
14518         * doc/lispref/sequences.texi: Add documentation for seq-sort-by.
14520 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14522         Mention the `M-q' changes
14524 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14526         Have `M-q' not mark buffers are changed when they haven't
14528         * lisp/textmodes/fill.el (fill-paragraph): Use `buffer-hash'
14529         to avoid marking buffers as changed when they haven't.
14531 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14533         Add a new function `buffer-hash'
14535         * doc/lispref/text.texi (Checksum/Hash): Document `buffer-hash'.
14537         * src/fns.c (Fbuffer_hash): New function.
14538         (make_digest_string): Refactored out into its own function.
14539         (secure_hash): Use it.
14541         * test/src/fns-tests.el (fns-tests-hash-buffer): New tests.
14543 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
14545         Rename C names to match Lisp symbols better
14547         This was inspired by commit e65c3079c65595d95749348366af9811fafff062,
14548         which fixed a bug where the C name for a symbol disagreed with the
14549         symbol name itself.  Fix other instances of disagreements that I found.
14550         Although this doesn’t fix a bug, it should make code easier to follow.
14551         The remaining disagreements are idiosyncratic: Qminus, Qplus,
14552         Qsans__serif, Qbackquote, Qcomma, Qcomma_at, Qcomma_dot.
14553         All uses changed.
14554         * src/alloc.c (QAutomatic_GC): Rename from Qautomatic_gc.
14555         * src/dbusbind.c (QCsystem): Rename from QCdbus_system_bus.
14556         (QCsession): Rename from QCdbus_session_bus.
14557         (QCtimeout): Rename from QCdbus_timeout.
14558         (QCbyte): Rename from QCdbus_type_byte.
14559         (QCboolean): Rename from QCdbus_type_boolean.
14560         (QCint16): Rename from QCdbus_type_int16.
14561         (QCuint16): Rename from QCdbus_type_uint16.
14562         (QCint32): Rename from QCdbus_type_int32.
14563         (QCuint32): Rename from QCdbus_type_uint32.
14564         (QCint64): Rename from QCdbus_type_int64.
14565         (QCuint64): Rename from QCdbus_type_uint64.
14566         (QCdouble): Rename from QCdbus_type_double.
14567         (QCstring): Rename from QCdbus_type_string.
14568         (QCobject_path): Rename from QCdbus_type_object_path.
14569         (QCsignature): Rename from QCdbus_type_signature.
14570         (QCunix_fd): Rename from QCdbus_type_unix_fd.
14571         (QCarray): Rename from QCdbus_type_array.
14572         (QCvariant): Rename from QCdbus_type_variant.
14573         (QCstruct): Rename from QCdbus_type_struct.
14574         (QCdict_entry): Rename from QCdbus_type_dict_entry.
14575         (QCserial): Rename from QCdbus_registered_serial.
14576         (QCmethod): Rename from QCdbus_registered_method.
14577         (QCsignal): Rename from QCdbus_registered_signal.
14578         * src/emacs-module.c (Qinternal__module_call):
14579         Rename from Qinternal_module_call.
14580         * src/frame.c (Qwindow__pixel_to_total):
14581         Rename from Qwindow_pixel_to_total.
14582         * src/gnutls.c (QChostname): Rename from QCgnutls_bootprop_hostname.
14583         (QCpriority): Rename from QCgnutls_bootprop_priority.
14584         (QCtrustfiles): Rename from QCgnutls_bootprop_trustfiles.
14585         (QCkeylist): Rename from QCgnutls_bootprop_keylist.
14586         (QCcrlfiles): Rename from QCgnutls_bootprop_crlfiles.
14587         (QCmin_prime_bits): Rename from QCgnutls_bootprop_min_prime_bits.
14588         (QCloglevel): Rename from QCgnutls_bootprop_loglevel.
14589         (QCcomplete_negotiation): Rename from QCgnutls_complete_negotiation.
14590         (QCverify_flags): Rename from QCgnutls_bootprop_verify_flags.
14591         (QCverify_error): Rename from QCgnutls_bootprop_verify_error.
14592         * src/w32fns.c (Qfont_parameter): Rename from Qfont_param.
14593         (Qgnutls): Rename from Qgnutls_dll.
14594         (Qlibxml2): Rename from Qlibxml2_dll.
14595         (Qzlib): Rename from Qzlib_dll.
14596         * src/w32select.c (Qutf_16le_dos): Rename from QUNICODE.
14597         * src/window.c (Qwindow__resize_root_window):
14598         Rename from Qwindow_resize_root_window.
14599         (Qwindow__resize_root_window_vertically):
14600         Rename from Qwindow_resize_root_window_vertically.
14601         (Qwindow__sanitize_window_sizes):
14602         Rename from Qwindow_sanitize_window_sizes.
14603         (Qwindow__pixel_to_total): Rename from Qwindow_pixel_to_total.
14604         * src/xdisp.c (Qredisplay_internal_xC_functionx):
14605         Rename from Qredisplay_internal.
14606         * src/xfns.c (Qfont_parameter): Rename from Qfont_param.
14607         * src/xselect.c (Q_EMACS_TMP_): Rename from QEMACS_TMP.
14609 2016-03-26  Paul Eggert  <eggert@cs.ucla.edu>
14611         func-arity minor improvements
14613         * src/bytecode.c (get_byte_code_arity): Omit unnecessary
14614         runtime test for integer argument, unless debugging.
14615         Use EMACS_INT for Emacs integers.
14616         * src/eval.c (Ffunc_arity): Omit unused locals.
14617         Avoid side effects in ‘if’ expr.
14618         (lambda_arity): Use bool for boolean, and EMACS_INT for Emacs ints.
14620 2016-03-26  John Wiegley  <johnw@newartisans.com>
14622         Restore the fix to bug#18527 from commit d6868025
14624 2016-03-26  Martin Rudalics  <rudalics@gmx.at>
14626         Safely run window size change functions
14628         * src/window.c (run_window_size_change_functions): Use
14629         safe_call1 when running a size change function.
14630         (grow_mini_window, shrink_mini_window): Report error when
14631         minibuffer window cannot be resized.
14633 2016-03-26  Paul Pogonyshev  <pogonyshev@gmail.com>
14635         Implement 'func-arity'
14637         * src/eval.c (Ffunc_arity, lambda_arity): New functions.
14638         * src/bytecode.c (get_byte_code_arity): New function.
14639         * src/lisp.h (get_byte_code_arity): Add prototype.
14641         * doc/lispref/functions.texi (What Is a Function): Document
14642         'func-arity'.
14644         * etc/NEWS: Mention 'func-arity'.
14646         * test/src/fns-tests.el (fns-tests-func-arity): New test set.
14648 2016-03-25  Alan Mackenzie  <acm@muc.de>
14650         Fix absence of c-noise-macro-name-re, etc., in languages which don't use it
14652         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id, c-forward-type)
14653         (c-forward-declarator, c-forward-decl-or-cast-1, c-backward-over-enum-header)
14654         (c-guess-basic-syntax): Check c-opt-cpp-prefix before `looking-at'
14655         c-noise-macro-with-parens-name-re.
14657         * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): The same as for
14658         cc-engine.el.
14660         * lisp/progmodes/cc-mode.el (c-basic-common-init): Add call to
14661         `c-make-noise-macro-regexps'.
14662         (c-mode, c++-mode, objc-mode): Remove calls to `c-make-noise-macro-regexps'.
14664         * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
14665         (c-noise-macro-with-re): Initialize to "\\<\\>" rather than nil.
14667 2016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14669         (shr-insert): Respect non-breaking space in non-<pre> text
14671         * lisp/net/shr.el (shr-insert): Respect non-breaking space in
14672         non-<pre> text.
14674 2016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14676         parse-times-string doc string clarification
14678         * lisp/calendar/parse-time.el (parse-time-string): Note that
14679         we accept RFC2822 strings.
14681 2016-03-25  Marcin Borkowski  <mbork@mbork.pl>
14683         Doc string fix
14685         * lisp/calendar/parse-time.el (parse-time-tokenize): Clarify
14686         doc string and clean up code.
14688 2016-03-25  Michael Albinus  <michael.albinus@gmx.de>
14690         Cleanup file notification code in Tramp
14692         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
14693         Make `events' a list of symbols for "inotifywait".
14694         (tramp-sh-gvfs-monitor-dir-process-filter): Make event a list.
14695         Call `file-notify-handle-event' for better traces.
14696         (tramp-sh-inotifywait-process-filter): Check for expected events.
14697         Call `file-notify-handle-event' for better traces.
14699 2016-03-24  Michael Albinus  <michael.albinus@gmx.de>
14701         Adapt filenotify-tests.el according latest tests
14703         * test/lisp/filenotify-tests.el (file-notify-test02-events)
14704         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
14705         Remove superfluous `read-event' calls.
14706         (file-notify-test02-events): Expect different events under MS
14707         Windows 7 and 10.
14708         (file-notify-test04-file-validity): Move `file-notify-valid-p'
14709         check up.
14711 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14713         Merge from origin/emacs-25
14715         ad250f2 Sync with gnulib
14716         c0165ea Resurrect GNUS-NEWS autogeneration
14718         # Conflicts:
14719         #       etc/GNUS-NEWS
14720         #       lisp/Makefile.in
14722 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14724         Merge from origin/emacs-25
14726         e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
14727         38a43f1 Fix bug in displaying header line with a box face
14729 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14731         * etc/NEWS: Use straight quotes.
14733 2016-03-23  Simen Heggestøyl  <simenheg@gmail.com>
14735         Support completion of attribute values in CSS mode
14737         * lisp/textmodes/css-mode.el (css-property-alist): New defconst
14738         holding CSS identifiers and the values they can have.
14739         (css-property-ids): Compute dynamically from `css-property-alist'.
14740         (css-value-class-alist): New defconst holding property value classes
14741         and their values.
14742         (css--property-value-cache): New variable providing a cache for
14743         `css--property-values'.
14744         (css--value-class-lookup): New function for computing a list of values
14745         in a value class.
14746         (css--property-values): New function for computing a list of possible
14747         values for a CSS property.
14748         (css--complete-property-value): New function for completing a property
14749         value.
14750         (css-completion-at-point): Add support for completing property values.
14751         * test/lisp/textmodes/css-mode-tests.el: New file.
14753 2016-03-22  Wilson Snyder  <wsnyder@wsnyder.org>
14755         Sync with verilog-mode development tree.
14757         * lisp/progmodes/verilog-mode.el (verilog-imenu-generic-expression,
14758         verilog-speedbar-initialize): Automatically add verilog-mode
14759         extensions when in speedbar mode, bug1045, bug1046.  Reported by
14760         David Shleifman.
14761         (verilog-mode-map): Move `verilog-star-comment' from M-* to C-c/ to
14762         avoid conflict with `pop-tag-mark'. Reported by Ian Perryman.
14763         (verilog-read-always-signals-recurse): Fix :: notation for
14764         auto-reset signals.  Reported by Andrew Jones.
14765         (verilog-font-lock-grouping-keywords-face): Fix highlighting of
14766         grouping keywords, bug1002. Reported by Paul Sargent.
14767         (verilog-save-font-no-change-functions): Commentary and fix
14768         pre-Emacs 21 behavior.
14770 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14772         Compute a better commit message for merges
14774         Problem reported by David Engster in:
14775         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01270.html
14776         * admin/gitmerge.el (gitmerge-commit-message):
14777         Truncate the computed commit message to at most 72 characters per line.
14778         (gitmerge-maybe-resume): Don’t use "-" as the commit message for
14779         merges; use the computed commit message instead.
14781 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14783         * admin/gitmerge.el (gitmerge-skip-regexp): Add "no need to merge".
14785 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14787         Change do-not-merge pattern to "do not merge"
14789         This should avoid the problem we recently had with
14790         automatically-generated merge messages, while still letting people
14791         specify commits not to merge.
14792         * admin/gitmerge.el (gitmerge-skip-regexp): Add "do not merge".
14793         (gitmerge-highlight-skip-regexp): Fold case when searching
14794         for gitmerge-skip-regexp.
14796 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14798         Merge from origin/emacs-25
14800         91e6676 Fix an Isearch var to be a string (Bug#23038)
14801         76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
14803 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14805         -
14807         -
14809 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14811         Keep "merge" commits by default in gitmerge
14813         * admin/gitmerge.el (gitmerge-skip-regexp): Omit "merge", as it
14814         causes false positives.  See:
14815         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01234.html
14817 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14819         Assume NON_BLOCKING_CONNECT (Bug#22946)
14821         * lisp/proced.el (proced-signal-list): Omit comment about
14822         obsolete systems that do not support POSIX 1003.1-2001 signals.
14823         * src/process.c (NON_BLOCKING_CONNECT): Remove, since we can now
14824         assume POSIX 1003.1-2001 or better here.  Assume it’s defined.
14825         (connect_network_socket): Assume EINPROGRESS is defined,
14826         as that’s portable too now.
14827         (Fmake_network_process): Use bool for boolean.
14829 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14831         Fix problems caused by new implementation of sub-word mode
14833         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
14834         New functions.
14835         (word-move-empty-char-table): New variable.
14837         * etc/NEWS: Mention 'forward-word-strictly' and
14838         'backward-word-strictly'.
14840         * doc/lispref/positions.texi (Word Motion): Document
14841         'find-word-boundary-function-table', 'forward-word-strictly', and
14842         'backward-word-strictly'.  (Bug#22560)
14844         * src/syntax.c (syms_of_syntax)
14845         <find-word-boundary-function-table>: Doc fix.
14847         * lisp/wdired.el (wdired-xcase-word):
14848         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
14849         (texinfo-copy-section-title, texinfo-start-menu-description)
14850         (texinfo-copy-menu-title, texinfo-specific-section-type)
14851         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
14852         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
14853         (texinfo-insert-@end):
14854         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
14855         (texinfo-anchor, texinfo-multitable-widths)
14856         (texinfo-multitable-item):
14857         * lisp/textmodes/tex-mode.el (latex-env-before-change):
14858         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
14859         * lisp/skeleton.el (skeleton-insert):
14860         * lisp/simple.el (count-words):
14861         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
14862         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
14863         (vhdl-update-sensitivity-list, vhdl-template-block)
14864         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
14865         (vhdl-template-default-indent, vhdl-template-for-loop)
14866         (vhdl-template-if-then-use, vhdl-template-bare-loop)
14867         (vhdl-template-nature, vhdl-template-procedural)
14868         (vhdl-template-process, vhdl-template-selected-signal-asst)
14869         (vhdl-template-type, vhdl-template-variable)
14870         (vhdl-template-while-loop, vhdl-beginning-of-block)
14871         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
14872         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
14873         (verilog-forward-sexp, verilog-beg-of-statement)
14874         (verilog-set-auto-endcomments, verilog-backward-token)
14875         (verilog-do-indent):
14876         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
14877         (vera-indent-block-closing):
14878         * lisp/progmodes/simula.el (simula-context)
14879         (simula-backward-up-level, simula-forward-down-level)
14880         (simula-previous-statement, simula-next-statement)
14881         (simula-skip-comment-backward, simula-calculate-indent)
14882         (simula-find-if, simula-electric-keyword):
14883         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
14884         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
14885         (ruby-smie--forward-token, ruby-smie--backward-token)
14886         (ruby-singleton-class-p, ruby-calculate-indent)
14887         (ruby-forward-sexp, ruby-backward-sexp):
14888         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
14889         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
14890         (perl-syntax-propertize-special-constructs)
14891         (perl-backward-to-start-of-continued-exp):
14892         * lisp/progmodes/pascal.el (pascal-indent-declaration):
14893         * lisp/progmodes/octave.el (octave-function-file-p):
14894         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
14895         * lisp/progmodes/js.el (js--forward-function-decl):
14896         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
14897         (idlwave-beginning-of-block, idlwave-end-of-block)
14898         (idlwave-block-jump-out, idlwave-determine-class):
14899         * lisp/progmodes/icon.el (icon-is-continuation-line)
14900         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
14901         * lisp/progmodes/hideif.el (hide-ifdef-define):
14902         * lisp/progmodes/f90.el (f90-change-keywords):
14903         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
14904         (cperl-linefeed, cperl-electric-terminator)
14905         (cperl-find-pods-heres, cperl-fix-line-spacing)
14906         (cperl-invert-if-unless):
14907         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
14908         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
14909         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
14910         (ada-adjust-case-skeleton, ada-create-case-exception)
14911         (ada-create-case-exception-substring)
14912         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
14913         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
14914         (ada-get-indent-if, ada-get-indent-block-start)
14915         (ada-get-indent-loop, ada-get-indent-type)
14916         (ada-search-prev-end-stmt, ada-check-defun-name)
14917         (ada-goto-decl-start, ada-goto-matching-start)
14918         (ada-goto-matching-end, ada-looking-at-semi-or)
14919         (ada-looking-at-semi-private, ada-in-paramlist-p)
14920         (ada-search-ignore-complex-boolean, ada-move-to-start)
14921         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
14922         * lisp/net/quickurl.el (quickurl-grab-url):
14923         * lisp/mail/sendmail.el (mail-do-fcc):
14924         * lisp/mail/rmail.el (rmail-resend):
14925         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
14926         * lisp/mail/mail-extr.el (mail-extract-address-components):
14927         * lisp/json.el (json-read-keyword):
14928         * lisp/files.el (insert-directory):
14929         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
14930         * lisp/completion.el (symbol-under-point, symbol-before-point)
14931         (symbol-before-point-for-complete, next-cdabbrev)
14932         (add-completions-from-c-buffer):
14933         * lisp/cedet/semantic/texi.el (semantic-up-context)
14934         (semantic-beginning-of-context):
14935         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
14936         use 'forward-word-strictly' and 'backward-word-strictly' instead
14937         of 'forward-word' and 'backward-word'.
14939         [This reapplies commit c1d32a65372c72d7de4808d620eefd3214a8e92a,
14940         which was inadvertently lost by merge commit
14941         c71e7cc113ed0d5f01aaa2e441a3e3c9fbeb9fa5.]
14943 2016-03-21  Paul Eggert  <eggert@cs.ucla.edu>
14945         * etc/TODO: Minor quoting and grammar fixes.
14947         [This reapplies commit 433407d8230a8a256b26c6c7615d3921b43f59ce,
14948         which was inadvertently lost by merge commit
14949         5ab243f40e4db91586ff74b01a775a5218a1d5be.]
14951 2016-03-21  Alan Mackenzie  <acm@muc.de>
14953         Don't confuse "::" with ":" when trying to parse member initializers.
14955         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
14956         more robustly for ":" token when searching backwards for it.
14958         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
14959         variable.
14961         [This reapplies commit 9e5452f7166e3634f2d8e943815ed722e1672714,
14962         which was inadvertently lost by merge commit
14963         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14965 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14967         Ensure positive number of glyphs for margins of positive width
14969         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
14970         positive value when a non-zero width of the marginal area was
14971         requested.  (Bug#22356)
14973         [This reapplies commit 740849fe986b62a839bce4bbf67d0036fc1be0b9,
14974         which was inadvertently lost by merge commit
14975         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14977 2016-03-21  Alan Mackenzie  <acm@muc.de>
14979         In comment-dwim with style `extra-line', respect indent-tabs-mode.
14981         This fixes bug #22369.
14983         * lisp/newcomment.el (comment-make-bol-ws): New function.
14984         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
14986         [This reapplies commit 016b3d5894b8c424eab262aeefc646c6cd03a70a,
14987         which was inadvertently lost by merge commit
14988         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14990 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14992         Merge doc fixes for 'random' lost in previous merge
14994         [This reapplies part of commit
14995         3ffe81e245d854a694ae1734f1b6a995bdc5e724,
14996         which was inadvertently lost by merge commit
14997         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14998         (Bug#22202)
15000 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
15002         Unhide the --no-line-directive option to 'etags'
15004         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
15005         option.  (Bug#22306)
15007         * doc/man/etags.1: Document the --no-line-directive option.
15009         [This reapplies commit fee0526a189f43e8470d78e8374bd425890fbe6f,
15010         which was inadvertently lost by merge commit
15011         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15013 2016-03-21  Alan J Third  <alan@idiocy.org>  (tiny change)
15015         Fix picture-mode wrt double-width characters
15017         * lisp/textmodes/picture.el (picture-insert): Check the width of
15018         the character being replaced, not just that of the replacement.
15019         (Bug#1808)
15021         [This reapplies commit b70dba4e18514411ed38b5bbb846558158842ace,
15022         which was inadvertently lost by merge commit
15023         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15025 2016-03-20  Martin Rudalics  <rudalics@gmx.at>
15027         Resurrect earlier fix of resize_frame_windows
15029         * src/window.c (resize_frame_windows): Resurrect earlier fix for
15030         calculating the number of columns of the minibuffer window which
15031         was lost in subsequent merges.
15033 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15035         Move the cert files to the data directory
15037 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15039         Further empty <li> tweaks
15041         * lisp/net/shr.el (shr-tag-li): When showing several empty
15042         <li> elements, ensure that they really get inserted on a new line.
15044 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15046         Don't remove too much white space at the end of documents
15048         * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): Don't
15049         remove too much white space -- leave it on the last line (in
15050         case there's a background color).
15052 2016-03-20  Alan Mackenzie  <acm@muc.de>
15054         Amend parse-partial-sexp correctly to handle two character comment delimiters
15056         Do this by adding a new field to the parser state: the syntax of the last
15057         character scanned, should that be the first char of a (potential) two char
15058         construct, nil otherwise.
15059         This should make the parser state complete.
15060         Also document element 9 of the parser state.  Also refactor the code a bit.
15062         * src/syntax.c (struct lisp_parse_state): Add a new field.
15063         (SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
15064         (internalize_parse_state): New function, extracted from scan_sexps_forward.
15065         (back_comment): Call internalize_parse_state.
15066         (forw_comment): Return the syntax of the last character scanned to the caller
15067         when that character might be the first of a two character construct.
15068         (Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
15069         (scan_sexps_forward): Remove a redundant state parameter.  Access all `state'
15070         information via the address parameter `state'.  Remove the code which converts
15071         from external to internal form of `state'.  Access buffer contents only from
15072         `from' onwards.  Reformulate code at the top of the main loop correctly to
15073         recognize comment openers when starting in the middle of one.  Call
15074         forw_comment with extra argument (for return of syntax value of possible first
15075         char of a two char construct).
15076         (Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
15077         doc string.  Clarify the doc string in general.  Call
15078         internalize_parse_state.  Take account of the new elements when consing up the
15079         output parser state.
15081         * doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
15082         element 10.  Minor wording corrections (remove reference to "trivial
15083         cases").
15084         (Low Level Parsing): Minor corrections.
15086         * etc/NEWS: Note new element 10, and documentation of element 9 of parser
15087         state.
15089 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15091         Allow the shr test files to have trailing blank space.
15093         * .gitattributes: Allow the shr test files to have trailing
15094         blank space.
15096 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15098         Add tests for empty <ul><li>
15100 2016-03-20  Paul Eggert  <eggert@cs.ucla.edu>
15102         * src/alloc.c (purecopy): Use AUTO_STRING.
15104 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15106         Ignore invalid base64 encoded embedded images
15108         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
15109         encoded embedded images (bug#22928).
15111 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15113         Render empty <ul><li><ul> correctly
15115         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
15116         correctly (bug#22964).
15118 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15120         Fix <p> and <div> newlines with or without <li> in shr
15122         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
15123         a <li>, if we are, and don't insert newlines there.
15124         (shr-ensure-paragraph): When mixing newlines and paragraph
15125         ensurements, don't insert too many blank lines.
15126         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
15127         new line.
15129 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15131         Add more shr HTML rendering tests
15133         Add a test harness for shr HTML rendering and one test
15135 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15137         Remove code left over from when overlays were used for padding
15139         * lisp/net/shr.el (shr-previous-newline-padding-width): Remove.
15140         (shr-remove-trailing-whitespace): Ditto.
15141         (shr-insert-document): Don't call them.
15143 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15145         Remove trailing blank lines in shr
15147         * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): New function.
15148         (shr-insert-document): Use it to remove trailing blank lines
15149         at the end of documents, since these never seem to be very useful.
15151 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15153         Don't bug out on nil `patch-buf' arguments
15155         * lisp/vc/ediff.el (ediff-patch-file): Don't bug out on nil
15156         `patch-buf' arguments.
15158 2016-03-20  Ernest Adrogué  <nfdisco@gmail.com>
15160         Add a Catalan language environment
15162         * international/mule-cmds.el (locale-language-names): Map locale
15163           language name `ca' to language environment `Catalan'.
15165         * language/european.el: Add definition of language environment for
15166           the Catalan language.
15168         * leim/quail/latin-pre.el: Add quail rule to the `catalan-prefix'
15169           input method to support input of middle dot characters through
15170           composition (bug#18279).
15172 2016-03-19  Paul Eggert  <eggert@cs.ucla.edu>
15174         No need to block input when reading directories
15176         * src/dired.c: Don’t include blockinput.h.
15177         (open_directory, directory_files_internal_unwind)
15178         (directory_files_internal, file_attributes):
15179         Don’t block input here, as the reasons for blocking input should
15180         no longer apply.  See blockinput.h FIXME.  (Bug#22996).
15182 2016-03-19  Oscar Fuentes  <ofv@wanadoo.es>
15184         * lisp/vc/vc-hooks.el: Fix typo
15186 2016-03-19  Fabrice Popineau  <fabrice.popineau@gmail.com>
15188         Improve w32notify notifications
15190         * src/w32notify.c (DIRWATCH_BUFFER_SIZE): New macro.
15191         (struct notification): 'terminate' is now a HANDLE.
15192         (send_notifications): Argument is now a pointer to a
15193         notification.  Don't loop waiting for the notification to be
15194         acknowledged by the main thread; instead, just add the
15195         notification to the linked list of notifications waiting to be
15196         acknowledged.
15197         (watch_end): Don't close the directory handle.
15198         (watch_completion): Allocate a new notification structure to be
15199         added to the notifications set.  Call ReadDirectoryChangesW
15200         immediately after adding the new notification, and before sending
15201         a message to the main thread about them.
15202         (watch_worker): Don't loop calling ReadDirectoryChangesW; instead,
15203         call it just once -- it will be called again in watch_completion.
15204         Loop waiting for the main thread's indication to terminate.
15205         (start_watching): Create the event to be used to indicate to the
15206         worker thread that its should terminate.
15207         (remove_watch): Indicate to the worker thread that it should
15208         terminate.
15209         * src/w32term.c (queue_notifications): Loop over all the
15210         notifications in the linked list, processing all of them in one
15211         go.
15212         * src/w32inevt.c (handle_file_notifications): Loop over all the
15213         notifications in the linked list.
15214         * src/w32xfns.c (init_crit): Initialize the linked list of file
15215         notifications.
15216         (delete_crit): Free the linked list of file notifications,
15217         including any unprocessed notifications left in it.
15218         * src/w32term.h (struct notifications_se): New struct.
15220         * test/lisp/filenotify-tests.el (file-notify-test02-events)
15221         (file-notify-test05-dir-validity): Add read-event calls to
15222         facilitate event recognition by the main thread in batch mode.
15224 2016-03-17  Sam Steingold  <sds@gnu.org>
15226         make `vc-log-operation' buffer local to allow multiple simultaneous editing
15228 2016-03-17  Glenn Morris  <rgm@gnu.org>
15230         Simplify some rococo Gnus code that loads or tests for other libraries.
15232         * lisp/gnus/gnus-art.el (gnus-treat-ansi-sequences): Simplify default.
15233         * lisp/gnus/mml-smime.el (epg): Simply require it.
15234         (mml-smime-use): Simplify the default.  Doc fix.
15235         * lisp/gnus/mml2015.el (epg-config): Require it.
15236         (mml2015-use): Simplify the default.
15237         * lisp/gnus/smime.el (password-cache): Simply require it.
15238         (password-read-and-add): Remove declaration.
15240 2016-03-16  Glenn Morris  <rgm@gnu.org>
15242         * test/lisp/dabbrev-tests.el: Merge fix: move here from test/automated.
15244 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15245             Alex Harsanyi  <AlexHarsanyi@gmail.com>
15247         Sync with soap-client repository, version 3.1.1
15249         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix error
15250         message.
15251         (soap-find-port): Delete trailing whitespace.
15252         (soap-find-operation): Fix documentation and rename parameter.
15253         (soap-find-port): Likewise.
15254         (soap-operation-arity): Likewise.
15256         * lisp/net/soap-client.el: Update copyright years.
15257         (soap-warning): Fix docstring quoting.
15258         (soap-decode-date-time): Likewise.
15259         (soap-validate-xs-simple-type): Remove tabs for indentation.
15260         * lisp/net/soap-inspect.el: Update copyright years.
15262         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
15263         assume xsd:base64Binary values are UTF-8 strings.
15264         (soap-decode-xs-basic-type): Likewise.
15265         (soap-invoke): Document xsd:base64Binary handling.
15267         * lisp/net/soap-client.el (soap-find-port, soap-find-operation)
15268         (soap-operation-arity): new defuns
15269         (soap-invoke-internal): use soap-find-port, soap-find-operation.
15271 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
15273         Merge from gnulib
15275         This incorporates:
15276         2016-03-15 std-gnu11: improve clang support
15277         * m4/std-gnu11.m4: Copy from gnulib.
15279 2016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15281         Disable MOVE more for Dovecot
15283         * lisp/gnus/nnimap.el (nnimap-process-expiry-targets): Also
15284         disable MOVE when expirying.
15285         (nnimap-split-incoming-mail): And when splitting mail.
15287 2016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15289         Don't use MOVE on Dovecot
15291         * lisp/gnus/nnimap.el (nnimap-request-move-article): Don't use
15292         MOVE on Dovecot, since it's broken in many versions.
15293         (nnimap-quirks): Mark MOVE on Dovecot as non-working.
15295 2016-03-13  Paul Eggert  <eggert@cs.ucla.edu>
15297         Improve diff hunk headers when maintaining Emacs
15299         * .gitattributes: Improve diff hunk header support for makefiles,
15300         shell scripts, Ada, C, C++, Objective C, HTML, SHTML, XML, Java,
15301         Perl, PHP, Python, Ruby, and TeX, all of which are used in Emacs
15302         somewhere (sometimes just in test cases).
15303         * autogen.sh: Add regexes for makefiles and shell scripts.
15305 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
15307         Update handling of <bdo> per Unicode 9.0
15309         * lisp/net/shr.el (shr-tag-bdo): Wrap in FSI..PDI as well, per
15310         Unicode 9.0 changes in UAX#9, paragraph 2.7.
15312 2016-03-11  John Wiegley  <johnw@newartisans.com>
15314         Merge from origin/emacs-25
15316         facb5e2 Update Emacs manual section related to character folding
15317         4efea8e ; * etc/DEBUG: Fix a typo.  (Bug#22984)
15318         f8df21b Update admin/notes/unicode
15319         950be68 Add symref-filepattern entries for c?perl-mode
15320         8b8a6ad Don't use XRANDR 1.3 extensions if the server doesn't support them.
15321         985dacf ; NEWS update for the last change in etags
15322         741a6f8 Sync with gnulib
15323         7352c6c Rework C source files to avoid ^(
15324         a589e9a By default, etags produces unqualified Perl tag names
15325         72c7438 Indent methods with keyword names correctly
15326         28532a9 Propertize character literals and special global variables
15327                 differently
15328         a7d6f39 ; Fix last change in NEWS
15329         83b2a20 Change how /etc/NEWS presents character folding
15330         b417c5a Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding
15331                 off by default""
15332         711ca36 Properly handle lambda as read function (bug 22961)
15333         1b9d616 Propertize operator symbol names with symbol syntax class
15334         9b16bc2 Stop recognizing :#{} as symbol in ruby-mode
15335         366ec77 Allow using the left shift operator without spaces on both sides
15336         02bf7cc Properly handle unquoting in wdired (bug 22938)
15337         16cf469 ; Spelling fix and tighten up comment
15338         f50bc04 Allow splat operator before percent literal
15339         991c801 Don't apply the return value of goto-char as syntax class
15340         6e63b3e Guard against nested percent literals
15341         066f3bc Recognize iuwu-mod after an escaped newline
15342         6f7a57c Fix symbolic mode string conversion for s and t
15343         50b9826 Update 'ucs-names' database
15344         993b2fb Improve doc string of 'shell-command'
15345         b71c717 Make the code in movemail_strftime more general
15346         cc057e4 Speed up redisplay of binary files with long series of nulls
15347         e51b27e Remove the highlighting support for quoting 'like this' inside
15348                 Lisp docstrings
15349         b1abce1 Restore leading space in movemail pop output
15350         98b8d44 Fix bidi-paragraph-direction in Rmail view buffer
15351         dc9d837 Don't misindent computed property generator methods
15352         7923112 Fix mbox files produced by movemail on MS-Windows
15353         c45a1ca doc string file descriptor exhaustion fix
15354         265141b Fix Bug#22814
15356 2016-03-11  John Wiegley  <johnw@newartisans.com>
15358         Merge from origin/emacs-25
15360         620951f Fix previous fix of enlarge-/shrink-window
15361         2e78353 * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
15362         66d2717 Complete temperature units in calc-convert-temperature
15363         dbb02bf Make sure to use case-sensitive search
15364         8b01e69 Prevent infinite loop on not-well-formed xml. (Bug#16344)
15365         100346a Add the missing test case for the previous patch
15366         5aba61e Use the correct dabbrev expansion
15368 2016-03-11  Michael Albinus  <michael.albinus@gmx.de>
15370         Remove compat code in Tramp
15372         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
15373         Remove compat code.
15375 2016-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
15377         * lisp/textmodes/tex-mode.el: Complete local envs.  Use #'.
15379         Use #' for function names.
15380         (latex-complete-envnames): Include existing environments in
15381         current buffer.
15382         (latex-insert-block): Use latex-complete-envnames.
15383         (tildify-foreach-ignore-environments): Declare.
15385 2016-03-10  Alain Schneble  <a.s@realize.ch>
15387         Fix asynchronous TLS connections on MS-Windows
15389         * src/w32.c (sys_write): Don't switch the socket to blocking mode
15390         if the connection attempt is in progress.  Instead, return either
15391         EWOULDBLOCK immediately if the connection is in progress, or the
15392         error code produced by '_sys_wait_connect' if the connection
15393         failed.  Switching the socket to blocking mode was found to
15394         interfere with GnuTLS handshake.  (Bug#22789)
15396 2016-03-10  Alan Mackenzie  <acm@muc.de>
15398         Clarify the documentation of nested comments.
15400         * doc/lispref/syntax.texi (Syntax Flags): State that only comments of the same
15401         style are recognized inside nestable comments.
15402         (Low-Level Parsing): Clarify that parsing will stop after the start or end of
15403         UNNESTED comments.
15405 2016-03-10  Nicolas Richard  <youngfrog@members.fsf.org>
15407         Add new function display-buffer-reuse-mode-window
15409         * lisp/window.el (display-buffer-reuse-mode-window): New function.
15410         * doc/lispref/windows.texi (Display Action Functions): Document it.
15412 2016-03-09  Paul Eggert  <eggert@cs.ucla.edu>
15414         Minor fixes for getaddrinfo_a usage
15416         * src/process.c (Fdelete_process): Check gai_cancel return value.
15417         That way, there’s no need to invoke gai_error.  Check gai_suspend
15418         return value.
15419         (Fmake_network_process): Don’t assume gai_strerror returns a UTF-8
15420         string.  Simplify call to connect_network_socket.
15421         (check_for_dns): Avoid unnecessary initialization of local.
15423 2016-03-09  Sam Steingold  <sds@gnu.org>
15425         declare `rmail-mime-entity-truncated' and `rmail-mime-render-html-function'
15427         The former avoids a compiler warning, the latter fixes a bug whereas
15428         the variable is compiled as lexical instead of dynamic.
15430 2016-03-08  Paul Eggert  <eggert@cs.ucla.edu>
15432         Pacify --enable-gcc-warnings
15434         * src/xfns.c (x_create_tip_frame): Omit unused local.
15435         (Fx_show_tip): Don’t jump over auto initialization.
15437 2016-03-07  Martin Rudalics  <rudalics@gmx.at>
15439         Optionally reuse tooltip frames instead of deleting/recreating them.
15441         * src/frame.c (tooltip_reuse_hidden_frame): New option.
15442         * src/w32fns.c (x_create_tip_frame): Remove argument TEXT.  Fix
15443         handling of dividers.
15444         (x_hide_tip): New function.
15445         (Fx_show_tip): Try to reuse old tooltip frame when
15446         `tooltip-reuse-hidden-frame' is non-nil and frame parameters
15447         have not changed.  Insert STRING here instead of passing it to
15448         x_create_tip_frame.  Compute size of tooltip window with
15449         Fwindow_text_pixel_size.  Obey Vw32_tooltip_extra_pixels when
15450         padding tooltip window.
15451         (Fx_hide_tip): Call x_hide_tip.
15452         (Vw32_tooltip_extra_pixels): New variable.
15453         * src/xdisp.c (Fwindow_text_pixel_size): Don't return negative y
15454         value.  Fix doc-string.
15455         * src/xfns.c (x_create_tip_frame): Remove argument TEXT.  Call
15456         make_frame with mini_p argument false.
15457         (x_hide_tip): New function.
15458         (Fx_show_tip): Try to reuse old tooltip frame when
15459         `tooltip-reuse-hidden-frame' is non-nil and frame parameters
15460         have not changed.  Insert STRING here instead of passing it to
15461         x_create_tip_frame.  Compute size of tooltip window with
15462         Fwindow_text_pixel_size.
15463         (Fx_hide_tip): Call x_hide_tip.
15464         * lisp/cus-start.el (tooltip-reuse-hidden-frame): Add
15465         customization entry.
15467 2016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15469         Assume getaddrinfo in C code
15471         * admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO.
15472         All uses removed.
15473         * doc/lispref/processes.texi (Network, Network Processes), etc/NEWS:
15474         Say that port numbers can be integer strings.
15475         * lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl.
15476         (socket_connection): Assume HAVE_GETADDRINFO.
15477         * lisp/mpc.el (mpc--proc-connect):
15478         * lisp/net/network-stream.el (open-network-stream):
15479         It’s now OK to use integer strings as port numbers.
15480         * src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove.
15481         (Fmake_network_process): Assume HAVE_GETADDRINFO.
15483 2016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15485         Remove support for IRIX
15487         The IRIX port wasn’t really working anyway, and the code was
15488         getting in the way of other changes (e.g., getaddrinfo fixes).
15489         IRIX’s supplier dropped support for IRIX in 2013.
15490         * admin/CPP-DEFINES:
15491         * configure.ac (opsys):
15492         * doc/lispref/os.texi (System Environment):
15493         * etc/MACHINES, etc/PROBLEMS:
15494         * lisp/find-dired.el (find-grep-options):
15495         * lisp/lpr.el (lpr-lp-system):
15496         * lisp/ls-lisp.el (ls-lisp-emulation):
15497         * lisp/mail/rmail.el (rmail-spool-directory):
15498         * lisp/net/net-utils.el (ping-program-options):
15499         * lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p):
15500         * lisp/progmodes/ps-mode.el (ps-mode-print-function):
15501         * src/conf_post.h [IRIX6_5]:
15502         * src/emacs.c (Vsystem_type):
15503         * src/filelock.c (get_boot_time_1):
15504         * src/process.c (process_send_signal):
15505         * src/unexelf.c (unexec):
15506         Omit IRIX-specific code and/or documentation.
15507         * configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP):
15508         Remove.  All uses removed.
15509         * etc/NEWS: Document the change.
15511 2016-03-06  John Wiegley  <johnw@newartisans.com>
15513         Revert "Use colors in the VC mode lines"
15515         This reverts commit 2621c293d82c15c00d9e73a8db75d70da7d0a23b.
15517 2016-03-06  Ken Brown  <kbrown@cornell.edu>
15519         Fix Cygwin-w32 build
15521         * src/w32fns.c (funhook, setup_w32_kbdhook, remove_w32_kbdhook):
15522         Define only if WINDOWSNT, and update all uses accordingly.
15523         * src/w32term.h (check_w32_winkey_state, setup_w32_kbdhook)
15524         (remove_w32_kbdhook): Declare only if WINDOWSNT.
15525         (w32_kbdhook_active): Define as 0 if not WINDOWSNT.
15527 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
15529         Unbreak the MinGW64 build
15531         * nt/inc/ms-w32.h [MINGW_W64]: Undefine HAVE_GAI_STRERROR.  See
15532         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00130.html
15533         for the details.  Reported by Angelo Graziosi
15534         <angelo.graziosi@alice.it>.
15536 2016-03-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15538         Don't signal errors on E_AGAIN
15540         * src/gnutls.c (Fgnutls_errorp): Qgnutls_e_again is not an
15541         error now that TLS is async.
15543 2016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15545         Allow making TLS negotiation blocking
15547         * lisp/net/gnutls.el (gnutls-negotiate): Make negotiation blocking.
15549         * src/gnutls.c (Fgnutls_boot): Provide a new keyword,
15550         :complete-negotiation, to specify that we want complete
15551         negotiation even if the socket is non-blocking.
15552         (gnutls_try_handshake): Complete negotiation if given that keyword.
15554         * src/process.h (L): Added gnutls_complete_negotiation_p.
15556 2016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15558         Don't run ipv6 test on systems without ipv6
15560         * test/lisp/net/network-stream-tests.el
15561         (connect-to-tls-ipv6-nowait): Skip on systems without ipv6.
15563 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
15565         Implement getaddrinfo fallback for MS-Windows
15567         See http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01602.html
15568         for more details.
15570         * nt/mingw-cfg.site (ac_cv_func_getaddrinfo)
15571         (ac_cv_func_gai_strerror): Set to "yes", as the configure script's
15572         test program is not smart enough to auto-detect these.
15573         * nt/inc/sys/socket.h (getaddrinfo, freeaddrinfo): Redirect to
15574         sys_getaddrinfo and sys_freeaddrinfo.  Provide prototypes for
15575         sys_getaddrinfo and sys_freeaddrinfo.
15577         * src/w32.c (init_winsock): Try loading getaddrinfo and
15578         freeaddrinfo from ws2_32.dll.
15579         (sys_getaddrinfo, sys_freeaddrinfo): New functions.
15581         * lib-src/pop.c [WINDOWSNT]: Include winsock2.h, not winsock.h,
15582         and also ws2tcpip.h.
15583         (getaddrinfo, freeaddrinfo) [WINDOWSNT]: Redirect to
15584         sys_getaddrinfo and sys_freeaddrinfo, respectively.
15585         (load_ws2, sys_getaddrinfo, sys_freeaddrinfo) [WINDOWSNT]: New
15586         functions.
15588 2016-03-04  Glenn Morris  <rgm@gnu.org>
15590         * lisp/files.el: Fix recent typo.
15592         * lisp/subr.el (read-multiple-choice): Avoid free variable.
15594         * doc/lispref/files.texi (File Attributes): Fix typo.
15596 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15598         Make the describe-key prompts clearer
15600         * lisp/help.el (describe-key-briefly): Make the prompt clearer
15601         (bug#14854).
15602         (describe-key): Ditto.
15604 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15606         Allow scrolling while querying multiple choice
15608         * lisp/subr.el (read-multiple-choice): Allow scrolling the
15609         buffer while querying (bug#22827).
15611 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15613         Add accessors for `file-attributes'
15615         * doc/lispref/files.texi (File Attributes): Mention the accessors.
15617         * lisp/files.el (file-attribute-type)
15618         (file-attribute-link-number, file-attribute-user-id)
15619         (file-attribute-group-id, file-attribute-access-time)
15620         (file-attribute-modification-time)
15621         (file-attribute-change-time, file-attribute-size)
15622         (file-attribute-modes, file-attribute-inode-number)
15623         (file-attribute-device-number): New functions.
15625         * src/dired.c (Ffile_attributes): Mention the accessors (bug#22890).
15627 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
15629         Fix Bug#22814
15631         * lisp/autorevert.el (global-auto-revert-mode): Do not set
15632         `auto-revert-use-notify' to nil.
15634         * etc/NEWS: Mention this.
15636         * etc/PROBLEMS: Remove problem Bug#22814.
15638         * src/kqueue.c: Include <sys/resource.h>.
15639         (Fkqueue_add_watch): Limit the number of used file descriptors.
15640         (Bug#22814)
15642         * test/lisp/filenotify-tests.el (file-notify--test-remote-enabled)
15643         (file-notify-test00-availability, file-notify-test01-add-watch)
15644         (file-notify-test02-events, file-notify-test06-many-events):
15645         Use #' read syntax for functions.
15646         (file-notify-test05-dir-validity)
15647         (file-notify-test06-many-events): Simplify directory creation.
15648         (file-notify-test09-sufficient-ressources): New test.
15650 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15652         Fix insertion of edited servers in the dribble file
15654         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
15655         insert explicit newlines, because they're quoted (bug#22903).
15657 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15659         Move cl-seq-tests to the right place after the merge
15661         Move cl-seq-tests to the right place after the merge
15663 2016-03-03  John Wiegley  <johnw@newartisans.com>
15665         Merge from origin/emacs-25
15667         d6f6b7d * etc/AUTHORS: Update the AUTHORS file
15668         5cf7c39 authors.el updates
15669         a26f193 ; fix changelog entries
15670         fbc85c7 ; make change-history-commit
15671         06da00c Fix Bug#22859
15672         ab30bf5 ; * src/w32proc.c: Update the commentary to sys_select.
15673         1481029 Fix reordering of bidi text in an isolate inside an override
15674         60e0596 Document c-guess-basic-syntax in the CC Mode manual.
15676 2016-03-03  John Wiegley  <johnw@newartisans.com>
15678         Merge from origin/emacs-25
15680         f5d1435 Fix targets in test/automated/Makefile.in
15682 2016-03-03  John Wiegley  <johnw@newartisans.com>
15684         Merge from origin/emacs-25
15686         b6d6304 Comment on last change to define-derived-mode
15688 2016-03-03  John Wiegley  <johnw@newartisans.com>
15690         Merge from origin/emacs-25
15692         cb1e3da Also allow setting the paragraph direction to nil
15693         bbe8a89 Made the new OS X visible bell more visible.
15695 2016-03-03  John Wiegley  <johnw@newartisans.com>
15697         Merge from origin/emacs-25
15699         aae436e Uncomment the next-error-function integration in xref
15700         5f0d096 Remove the word "valid", to avoid ambiguity
15702 2016-03-03  John Wiegley  <johnw@newartisans.com>
15704         Merge from origin/emacs-25
15706         5a44bfe Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
15707         0d60bfc Fix ModelSim error parsing
15709 2016-03-03  John Wiegley  <johnw@newartisans.com>
15711         Merge from origin/emacs-25
15713         b13cab6 Add a eww command to toggle paragraph direction
15714         4e46128 * nextstep/WISHLIST: Merge into etc/TODO and remove.
15715         9e078e5 Fix char signedness issue in bidi code
15716         064adf6 * lib-src/pop.c (socket_connection): Fix format string.
15717         14060a9 Avoid inflooping in thing-at-point-looking-at
15718         098d47b * lisp/emacs-lisp/derived.el (define-derived-mode): Revert
15719                 indent change.
15720         b5db8e0 etc/PROBLEMS: Mention problems with using file descriptors
15721         ec10ef9 * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
15722         d2dd614 Remove unneeded workaround in xftfont.c
15723         9b7593c ; * etc/NEWS: Reflect latest changes in saveplace.
15724         fde0cd1 * lisp/saveplace.el (save-place-local-mode): New minor mode
15725         06a872b Fix redisplay on a TTY after 'make-frame'
15726         95f5a43 Make double-click-1 work with unbalanced parens in CC Mode.
15727                 Fixes bug#5560.
15728         7d206fc Input method polish-slash should not use keyboard translation
15729         8be32cf Fix an assertion
15730         040e0d6 Fix 'toggle-save-place'
15731         5244db2 * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
15733 2016-03-03  John Wiegley  <johnw@newartisans.com>
15735         Merge from origin/emacs-25
15737         e6a3819 Update HISTORY section in readme for the NextStep interface.
15738         f67f1ed ; * doc/lispref/modes.texi (Font Lock Basics): Minor rewording.
15739         7c81a0b Improve documentation of 'save-place-mode'
15740         cab3f0a Allocate glyph matrices for the initial frame
15741         e01c72f Fix white space in last checkin
15742         370eb67 Make `insert-pair' always leave the cursor where documented
15743         b594393 etc/NEWS: Mention the new second parameter to `package-install'
15745 2016-03-03  John Wiegley  <johnw@newartisans.com>
15747         Merge from origin/emacs-25
15749         bd58c13 Improve documentation of focus-related hooks
15750         00a4720 Further improve doc string of 'disable-point-adjustment'
15751         c582def Further adaptions in file-notify-tests.el for w32notify
15752         a1585e1 Don't bug out on localised dates in gnus-icalendar
15754 2016-03-03  John Wiegley  <johnw@newartisans.com>
15756         Merge from origin/emacs-25
15758         7bc4820 Make setf for frame-height/width work again
15760 2016-03-03  John Wiegley  <johnw@newartisans.com>
15762         Merge from origin/emacs-25
15764         6620944 (cl-union): Do not ignore :test argument when lists are equal.
15765         17dd3fb Add `isearch' to `basic-faces'
15766         c1ec743 Make $, : and @ "prefix characters" in ruby-mode
15767         e72a26e Make find-tag-default-bounds more strict
15768         1bc0e0a Minor fixes in filenotify.el
15770 2016-03-02  Alain Schneble  <a.s@realize.ch>
15772         Fix issue of inserting images on some systems
15774         * lisp/net/shr.el (shr-tag-img): Construct a non-empty range
15775         to pass to shr-image-fetched, to indicate where to insert the
15776         image.  Fixes the issue introduced with commit
15777         80852f843e69b81618f29cfb9aa4b074946cb3c4
15778         (bug#22789).
15780 2016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
15782         Ensure TLS negotiation progress
15784         * src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the
15785         number of retries so that we try for about a minute.
15787         * src/process.c (wait_reading_process_output): Ensure progress
15788         for DNS resolution and TLS negotiation.
15790 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15792         emacs-module.h slight simplification
15794         * src/emacs-module.c (emacs_init_function, emacs_subr): Move here ...
15795         * src/emacs-module.h: ... from here, as they don’t need to be public.
15796         (enum emacs_arity): Remove useless enum tag.  The enum value is
15797         used in ptrdiff_t contexts.
15799         * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
15801 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15803         * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
15805 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15807         emacs-module.c simplification and tuneup
15809         * src/emacs-module.c (CHECK_USER_PTR): New function.
15810         (module_get_user_ptr, module_set_user_ptr)
15811         (module_get_user_finalizer, module_set_user_finalizer): Use it.
15812         (module_make_global_ref, module_copy_string_contents)
15813         (module_make_string, module_vec_set, module_vec_get): Omit
15814         unnecessary runtime tests.  For example, vector sizes are always
15815         fixnums, so we don’t need to test that they are in fixnum range.
15817 2016-03-02  Philipp Stephani  <phst@google.com>
15819         Use standard checks whenever possible.
15821         This is possible in all functions where we catch signals anyway.
15823         * emacs-module.c (module_make_global_ref, module_funcall)
15824         (module_copy_string_contents, module_make_string): Use xsignal0
15825         and CHECK macros for argument checks.
15827 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15829         Deterministic build improvements
15831         * configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP,
15832         and negate its sense.  Use it via AC_SUBST, not AC_DEFINE,
15833         and have its value be either empty or --no-build-details.
15834         All uses changed.  Change option to --disable-build-details.
15835         * doc/lispref/cmdargs.texi (Initial Options):
15836         Document --no-build-details.
15837         * doc/lispref/internals.texi (Building Emacs):
15838         * etc/NEWS:
15839         Document --disable-build-details.
15840         * doc/lispref/intro.texi (Version Info): Say that
15841         emacs-build-time can be nil.
15842         * lisp/erc/erc-compat.el (erc-emacs-build-time):
15843         Now nil if details are omitted.
15844         * lisp/erc/erc.el (erc-cmd-SV):
15845         * lisp/version.el (emacs-build-time):
15846         Now nil if no build details.
15847         (emacs-version):
15848         Output build time only if build details.
15849         * src/Makefile.in (BUILD_DETAILS): New macro.
15850         (temacs, bootstrap-emacs): Use it.
15851         * src/emacs.c (build_details): New var.
15852         (standard_args, main): Support --no-build-details.
15853         (Vdeterministic_dump): Remove; all uses replaced
15854         by !build_details.
15855         (syms_of_emacs): Set Vbuild_details to a boolean, not
15856         to a Lisp_Object.
15857         * src/lisp.h (build_details): New decl.
15858         * src/sysdep.c (init_system_name): When !build_details,
15859         set system-name to nil, not to "elided".
15861 2016-03-02  Philipp Stephani  <phst@google.com>
15863         Remove build system name from deterministic dumps
15865         * configure.ac (DETERMINISTIC_DUMP): New configuration option.
15866         * lisp/version.el (emacs-build-time): Add a comment to make the
15867         build time deterministic if requested.
15868         (emacs-build-system): Make variable deterministic if requested.
15869         * src/emacs.c (main): Initialize `deterministic-dump' from the
15870         configuration option.
15871         (syms_of_emacs): New constant `deterministic-dump'.
15872         * src/sysdep.c (init_system_name): Use a constant
15873         if a deterministic dump is requested.
15875 2016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
15877         Remove buggy parse-time test
15879         * test/lisp/calendar/parse-time-tests.el (parse-time-tests):
15880         Remove the iso parse test, since it doesn't work.
15882 2016-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15884         * src/syntax.c (syntax_multibyte): Omit unnecessary parens.
15886 2016-02-29  Glenn Morris  <rgm@gnu.org>
15888         * lisp/emacs-lisp/autoload.el (autoload-timestamps):
15889         Experiment with setting to nil.
15891 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15893         Make the revert command in timer-list-mode work
15895         * lisp/emacs-lisp/timer-list.el (timer-list): Make the revert
15896         command work.
15898 2016-02-29  Glenn Morris  <rgm@gnu.org>
15900         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
15901         Fix 6-week old merge error.
15903         * lisp/emacs-lisp/autoload.el (update-file-autoloads):
15904         Ensure timestamps.
15906         * lisp/emacs-lisp/package.el (package-generate-autoloads):
15907         Disable timestamps.
15909 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15911         Allow binding `url-mime-accept-string'
15913         * lisp/url/url-http.el (url-http): Allow binding
15914         `url-mime-accept-string' (bug#22855).
15916 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15918         Add a NEWS entry for the colorful VC indicator
15920 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15922         Use colors in the VC mode lines
15924         * lisp/vc/vc-hooks.el: Make the mode line faces default to
15925         using colors to more clearly tell the user what the status is.
15927 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15929         Support <bdo> and <bdi>
15931         * lisp/net/shr.el (shr-tag-bdo): New function.
15932         (shr-tag-bdi): Ditto.
15934 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15936         Respect <html dir=auto>
15938         * lisp/net/shr.el (shr-tag-html): Respect the "auto"
15939         directional HTML setting.
15941 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15943         Default bidi paragraph direction to nil
15945         * lisp/net/eww.el (eww-display-html): Default bidi rendering
15946         to nil, so that possibly more Arabic web pages render
15947         correctly (bug#22786).
15948         (eww-setup-buffer): Ditto.
15950 2016-02-29  Mathias Dahl  <mathias.dahl@gmail.com>
15952         Preserve current column, going up/down in thumbnail view.
15954 2016-02-29  Alan Mackenzie  <acm@muc.de>
15956         Handle "noise" macros and compiler directives.
15958         * lisp/progmodes/cc-langs.el (c-symbol-char-key): New language variable.
15960         * lisp/progmodes/cc-vars.el (c-noise-macro-names)
15961         (c-noise-macro-with-parens-names): New customizable variables.
15962         (c-noise-macro-name-re, c-noise-macro-with-parens-name-re): New variables.
15963         (c-make-noise-macro-regexps): New function.
15965         * lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Adapt to treat
15966         members of c-noise-macro-names as whitespace.
15967         (c-forward-noise-clause): New function.
15968         (c-forward-keyword-prefixed-id, c-forward-type, c-forward-declarator)
15969         (c-forward-decl-or-cast-1, c-backward-over-enum-header)
15970         (c-guess-basic-syntax CASE 5A.3, CASE 5A.5, CASE 9A):
15971         Handle "noise clauses" in parallel with, e.g., "hangon key clauses".
15973         * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): Handle "noise clauses"
15974         in parallel with "prefix-spec keywords".
15976         * lisp/progmodes/cc-mode.el (c-mode, c++-mode, objc-mode): call
15977         c-make-noise-macro-regexps to initialize the internal variables.
15979         * doc/misc/cc-mode.texi ("Noise Macros"): New section documenting the new
15980         facilities.
15982 2016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
15984         Stop calling res_init
15986         Emacs shouldn’t need to call res_init any more, now that nscd or
15987         equivalent is everywhere.  On modern systems, calling res_init
15988         simply slows Emacs down.  On ancient systems lacking nscd Emacs
15989         will still work well enough with this change; it’s just that it
15990         won’t respond to changes in /etc/resolv.conf.
15991         * configure.ac (HAVE_RES_INIT): Remove.  Worry about -lresolv only
15992         when configured --with-hesiod.  Hesiod is still used; see, e.g.:
15993         https://soylentnews.org/meta/article.pl?sid=15/07/13/0255214
15994         * src/Makefile.in (LIBRESOLV): Remove.  All uses removed.
15996 2016-02-29  Glenn Morris  <rgm@gnu.org>
15998         * lisp/progmodes/grep.el (grep-save-buffers): Fix type, tweak doc.
16000         * lisp/progmodes/grep.el (grep-save-buffers): Don't autoload defcustoms.
16002 2016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
16004         * src/process.c (Fdelete_process): Simplify cast.
16006 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
16008         Use the correct background color when filling nested <divs>
16010         * lisp/net/shr.el (shr-face-background): Return the first
16011         background, because that's the one that's visible (bug#22680).
16013 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16015         Make <div> in <li> not insert extra newlines
16017         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
16018         extra newlines (bug#19587).
16020 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16022         Allow reading Gnus reports from an offline cache
16024         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
16025         Allow reading bug reports from an offline cache directory.
16027 2016-02-28  Tino Calancha  <f92capac@gmail.com>
16029         Meta + shift + Fn combos are recognized by xterm>=216.
16031         * lisp/term/xterm.el (xterm-alternatives-map): Meta + shift +
16032         Fn combos are recognized by xterm>=216 (bug#22837).
16034 2016-02-28  Simen Heggestøyl  <simenheg@gmail.com>
16036         Declare $ as an expression prefix in SCSS
16038         * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
16039         expression prefix (bug#22841).
16041 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16043         Revert "Declare $ as an expression prefix in SCSS"
16045         This reverts commit ffb33264f21e8af60b8055c47baffcf0f6c300df.
16047         Revering to fix author name.
16049 2016-02-28  Simen  <simenheg@gmail.com>
16051         Declare $ as an expression prefix in SCSS
16053         * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
16054         expression prefix (bug#22841).
16056 2016-02-28  Hugh Brown  <aardvark@saintaardvarkthecarpeted.com>
16058         Save buffers before running grep commands
16060         * lisp/progmodes/grep.el (grep-ask-about-save): New variable (bug#96).
16061         (grep, lgrep, rgrep): Use it (bug#96).
16063         * doc/emacs/building.texi (Grep Searching): Document
16064         `grep-save-buffers'.
16066         * lisp/progmodes/grep.el (grep-save-buffers): Rename from
16067         `grep-ask-about-save'.
16068         (grep--save-buffers): New function.
16069         (grep, lgrep, rgrep): Use it.
16071 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16073         Allow sorting flyspell corrections
16075         * lisp/textmodes/flyspell.el (flyspell-sort): New function (bug#2405).
16076         (flyspell-sort-corrections-functionx): New variable.
16077         (flyspell-sort-corrections-alphabetically): New function.
16078         (flyspell-notify-misspell): Use them.
16079         (flyspell-auto-correct-word): Ditto.
16080         (flyspell-emacs-popup): Ditto.
16081         (flyspell-xemacs-popup): Ditto.  Suggested by Sebastien Delafond.
16083 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16085         Wait for async DNS to complete before freeing resources
16087         * src/process.c (Fdelete_process): Wait for async DNS to
16088         complete before freeing the data structures it needs.
16090 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16092         * lisp/faces.el: Remove duplicated functions from previous patch.
16094 2016-02-28  Eli Zaretskii  <eliz@gnu.org>
16096         Fix TLS connections on MS-Windows
16098         * src/w32.c (sys_write): If 'send' returns with WSAENOTCONN, and
16099         this is a non-blocking socket whose connection is in progress, set
16100         errno to EWOULDBLOCK, as expected by GnuTLS and other callers.
16101         Avoid overwriting the errno value from 'send' by 'ioctlsocket'.
16102         Suggested by Alain Schneble <a.s@realize.ch>.  (Bug#22789)
16104 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16106         Add a NEWS entry for the read-color change
16108 2016-02-27  Jan Moringen  <jan.moringen@uni-bielefeld.de>
16110         Show the face colours when completing in `read-color'
16112         * lisp/faces.el (defined-colors-with-face-attributes): New function.
16113         (readable-foreground-color, defined-colors-with-face-attributes)
16114         (readable-foreground-color): Ditto.
16115         (read-color): Use them (bug#5305).
16117 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16119         Clean up the code in parse-time-string-chars
16121         * lisp/calendar/parse-time.el (parse-time-string-chars):
16122         Clean up the code a bit.
16124 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16126         Add some tests for parse-time.el
16128         * test/lisp/calendar/parse-time-tests.el: New file.
16130 2016-02-27  Dima Kogan  <dima@secretsauce.net>
16132         Strip out some leading whitespace when looking at logs
16134         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): When looking
16135         at expanded git logs with `vc-print-root-log' (C-x v L, then
16136         <enter> by default), Emacs was stripping out all leading
16137         whitespace from git logs.  I now strip exactly 2 leading
16138         spaces, which retains the indentation in the logs (bug#18110).
16140 2016-02-27  Dima Kogan  <dima@secretsauce.net>
16142         Use a separate history variable for align-regexp
16144         * lisp/align.el (align-regexp-history): New variable (bug#16891).
16145         (align-regexp): Use it.
16147 2016-02-27  Phil Sung  <philbert@gmail.com>
16149         Create subdirectories automatically in wdired
16151         * lisp/wdired.el (wdired-create-parent-directories): New
16152         variable (bug#6817).
16153         (wdired-create-parentdirs): New function.
16154         (wdired-do-renames): Use it.
16155         * doc/emacs/dired.texi (Wdired): Mention
16156         `wdired-create-parent-directories'
16158 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16160         Return the correct error values from gnutls.c
16162         * src/gnutls.c (emacs_gnutls_read): Set errno to the value
16163         expected by process.c.
16164         (gnutls_try_handshake): Set gnutls_p to true earlier to avoid
16165         possible race condition with the process.c socket polling
16166         functions.
16168 2016-02-27  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
16170         Don't make assumptions about mkdir.  (Bug#22822)
16172         * test/Makefile.in (MKDIR_P): New, set by configure.
16173         (%.log): Use MKDIR_P.
16175 2016-02-27  Alexander Kuleshov  <kuleshovmail@gmail.com>
16177         Support switching to hexl-mode from image-mode
16179         * lisp/image-mode.el (image-toggle-hex-display)
16180         (image-mode-to-text): New functions.
16181         (image-mode-map, image-minor-mode-map): Bind "C-c C-x" to
16182         image-toggle-hex-display.
16183         (image-mode-map): New menu item "Show as Hex".
16184         (image-mode): Update doc string and echo-area message.
16185         (image-toggle-display): Support toggle to hex.  (Bug#22453)
16187         * doc/emacs/files.texi (File Conveniences): Document
16188         'image-toggle-hex-display'.
16190 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
16192         Remove unused code in coding.c
16194         * src/coding.c (decode_eol): Remove unused code that handled the
16195         case of coding->dst_object being nil.  Replace it with an
16196         assertion.
16198 2016-02-26  Aurelien Aptel  <aaptel@suse.com>
16200         * src/syntax.c: Fix result of syntax_multibyte()
16202         The ?: operator has a lower precedence than ||.
16203         Bug introduced by commit 45b683a.
16205 2016-02-26  Paul Eggert  <eggert@cs.ucla.edu>
16207         --enable-gcc-warnings now uses -Wjump-misses-init
16209         When configuring with --enable-gcc-warnings, also enable
16210         -Wjump-misses-init, as it’s confusing to use a goto to skip over
16211         an initialization.  Fix the few places in the code that run afoul
16212         of this warning.
16213         * configure.ac (WERROR_CFLAGS): Add -Wjump-misses-init.
16214         * src/doc.c (Fsubstitute_command_keys):
16215         * src/image.c (svg_load_image):
16216         * src/regex.c (re_match_2_internal):
16217         * src/xdisp.c (redisplay_internal, redisplay_window):
16218         Don’t jump over initialization.
16220 2016-02-26  Jussi Lahdenniemi  <jussi@aprikoodi.fi>
16222         Improve the register-hotkey functionality on MS-Windows
16224         * src/w32fns.c (_WIN32_WINNT): Define to 0x0600, needed for
16225         keyboard hook functionality.
16226         Include w32inevt.h, basetyps.h and unknwn.h.
16227         (VK_ANY, WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK): New macros.
16228         (kbdhook): A new struct definition.
16229         (funhook, setup_w32_kbdhook, remove_w32_kbdhook, hook_w32_key)
16230         (check_w32_winkey_state, reset_w32_kbdhook_state): New functions.
16231         (modifier_set): Call check_w32_winkey_state if a Win key was
16232         pressed and the keyboard hook is active.
16233         (w32_wnd_proc): Don't handle Win key combinations if the keyboard
16234         hook is active.  Only register/unregister the hotkeys if the
16235         keyboard hook is not active.  When WM_CREATE is received, call
16236         setup_w32_kbdhook.  When WM_DESTROY is received, call
16237         reset_w32_kbdhook_state.
16238         (lookup_vk_code): When the keyboard hook is active, map
16239         alphanumeric characters to themselves.
16240         (w32_parse_and_hook_hot_key): Renamed from w32_parse_hot_key.  Map
16241         modified keys to VK_ANY if the keyboard hook is active.  Register
16242         Alt-x and Win-x combinations.
16243         (Fw32_shell_execute): Update doc string to reflect new
16244         functionality.  Bypass the code that posts the
16245         WM_EMACS_REGISTER_HOT_KEY message if the keyboard hook is active.
16246         (Fw32_unregister_hot_key): Bypass the code that posts the
16247         WM_EMACS_UNREGISTER_HOT_KEY message if the keyboard hook is active.
16248         (syms_of_w32fns) <w32-pass-lwindow-to-system>
16249         <w32-pass-rwindow-to-system, w32-phantom-key-code>
16250         <w32-lwindow-modifier, w32-rwindow-modifier>: Update doc strings
16251         to reflect the new functionality.
16252         * src/w32console.c (initialize_w32_display): Install the low-level
16253         keyboard hook.
16254         * src/w32inevt.c (key_event): Handle Win-x combinations only if
16255         the keyboard hook is not active.  If the hook is active, use
16256         check_w32_winkey_state instead.
16257         * src/w32term.h (setup_w32_kbdhook, remove_w32_kbdhook)
16258         (check_w32_winkey_state): Add prototypes.
16259         (w32_kbdhook_active): New macro.
16261         * doc/emacs/msdos.texi (Windows Keyboard): Update to reflect the
16262         new functionality.
16264 2016-02-25  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
16266         Add forward-sexp (and related) tests
16268         * test/lisp/emacs-lisp/lisp-tests.el: New file for testing
16269         forward-sexp and related functions (bug#22800).
16271 2016-02-25  Jan Tatarik  <jan.tatarik@gmail.com>
16273         Don't use (localised) week days in dates
16275         * lisp/gnus/gnus-icalendar.el
16276         (gnus-icalendar-event:org-timestamp): Don't use (localised)
16277         week days in the dates, because that messes up things later.
16279 2016-02-25  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
16281         Update pcomplete/find
16283         * lisp/pcmpl-gnu.el (pcomplete/find): Update to newest version
16284         (bug#10487).
16286 2016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
16288         Make parse-time-string-chars more efficient
16290         * lisp/calendar/parse-time.el (parse-time-string-chars): The
16291         string has already been downcase, so don't care about case
16292         (bug#18522).
16294 2016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
16296         Remove killed buffers from the list of Gnus buffers
16298         * lisp/gnus/gnus.el (gnus-prune-buffers): Remove killed
16299         buffers from the list of Gnus buffers (bug#18522).
16301 2016-02-25  Paul Eggert  <eggert@cs.ucla.edu>
16303         Integer overflow cleanups for ports and socklen
16305         * src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp)
16306         (get_lisp_to_sockaddr_size, Fset_process_datagram_address)
16307         (connect_network_socket):
16308         Use ptrdiff_t, not int, for signed object sizes.
16309         This addresses only a theoretical problem, as in practice these
16310         object sizes are less than 2**31, but we might as well use the
16311         same style here as elsewhere in Emacs.
16312         (string_integer_p): Remove; all uses removed.
16313         (Fmake_network_process): Check that port number is in range.
16314         When converting an integer-string service, rely on strtol
16315         rather than rechecking the string by hand.
16316         * src/process.h, src/w32.c (conv_sockaddr_to_lisp):
16317         Adjust prototypes to match.
16319 2016-02-24  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
16321         Add pcomplete support for find
16323         * lisp/pcmpl-gnu.el (pcomplete/find): Add pcomplete support
16324         for find (bug#10487).
16326 2016-02-24  Per Starbäck  <starback@stp.lingfil.uu.se>
16328         Replace XXX acronyms with draft standard ones
16330         * lisp/international/characters.el (c1-acronyms): Replace XXX
16331         entries with the acronyms PAD, HOP, SGCI from draft DIS 10646
16332         (bug#13745).
16334 2016-02-24  Kevin Ryde  <user42@zip.com.au>
16336         Make checkdoc warn about variables described as "True"
16338         * checkdoc.el (checkdoc-this-string-valid-engine): Docstrings for
16339         variables "True...", and functions "Return true...", should usually be
16340         "non-nil" (bug#15506).
16342 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
16344         Add NEWS entry for "number string" change
16346 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
16348         Allow using "number strings" as services on non-GNU systems
16350         * src/process.c (string_integer_p): New function.
16351         (Fmake_network_process): Use it to allow connecting to
16352         services specified as "993" even when getaddrbyname isn't
16353         available.
16355 2016-02-24  Michael Albinus  <michael.albinus@gmx.de>
16357         Fix problem in tramp.texi
16359         * doc/misc/tramp.texi (File name completion): Do not use
16360         @trampfn{} for IPv6 addresses.  Somehow, it results in errors
16361         during PDF creation.
16363 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16365         Make image commands available in image-mode
16367         * lisp/image-mode.el (image-mode-map): Inherit from
16368         `image-map' so that the usual image commands work.
16370 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16372         Move `o' to `O' in shr-map
16374         * lisp/net/shr.el (shr-map): `shr-save-contents' has moved
16375         from `o' to `O' to avoid collisions with `image-map'.
16377 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16379         Make setting the coding system non-blocking
16381         * src/process.c (Fset_process_filter_multibyte): Defer
16382         completing coding system setup in asynchronous processes.
16383         (Fset_process_coding_system): Ditto.
16385 2016-02-23  Gregoire Jadi  <daimrod@gmail.com>
16387         Mention `proced-toggle-auto-update' in the proced-mode doc string
16389         * lisp/proced.el (proced-mode): Mention
16390         `proced-toggle-auto-update' (bug#14341).
16392 2016-02-23  Joshua Datko  <jbdatko@gmail.com>  (tiny change)
16394         Add a fortune-message command
16396         * lisp/play/fortune.el (fortune-message): Add a command to
16397         display fortunes in the echo area (bug#14915).
16399 2016-02-23  Susanne Oberhauser  <froh@suse.com>  (tiny change)
16401         Add hideshow bindings analogous to outline mode
16403         * lisp/progmodes/hideshow.el (hs-minor-mode-map): Add bindings
16404         analogous to outline mode bindings (bug#15324).
16406 2016-02-23  Bastien Guerry  <bzg@altern.org>
16408         Allow highlighting things like @math{2^{12}}
16410         * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords):
16411         Allow highlighting things like @math{2^{12}} (bug#16390).
16413 2016-02-23  Per Bothner  <per@bothner.com>
16415         Make `C-{up,down,left,right}' work in term mode
16417         * lisp/term.el (term-raw-map): Define C-{up,down,left,right}
16418         to send the same escape sequence that xterm sends.  This makes
16419         backward-word and forward-word work in readline (bug#16746).
16421 2016-02-23  Dima Kogan  <dima@secretsauce.net>
16423         Allow ff-find-other-file (etc) to work with indirect clone buffers
16425         * lisp/find-file.el (ff-buffer-file-name): New function to
16426         allow the feature to work with indirect buffers, too
16427         (bug#16904).
16428         (ff-find-the-other-file): Use it.
16429         (ff-other-file-name): Ditto.
16430         (ff-get-file-name): Ditto.
16432 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16434         Fix error in add-change-log-entry when the entry has no newline
16436         * lisp/vc/add-log.el (add-change-log-entry): The entry in the
16437         ChangeLog may end without a new line starting with blanks.
16439 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16441         Avoid using mm-util functoins in gravatar.el
16443         * lisp/image/gravatar.el (gravatar-retrieve): Avoid using
16444         mm-util functions.
16445         (gravatar-retrieve-synchronously): Ditto.
16447 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16449         Move low-level library files from the lisp/gnus directory
16451         The files moved from lisp/gnus are:
16453         auth-source.el -> /
16454         compface.el -> /image
16455         ecomplete.el -> /
16456         flow-fill.el -> /mail
16457         gravatar.el -> /image
16458         gssapi.el -> /net
16459         html2text.el -> /net
16460         ietf-drums.el -> /mail
16461         mail-parse.el -> /mail
16462         mail-prsvr.el -> /mail
16463         mailcap.el -> /net
16464         plstore.el -> /
16465         pop3.el -> /net
16466         qp.el -> /mail
16467         registry.el -> /
16468         rfc1843.el -> /international
16469         rfc2045.el -> /mail
16470         rfc2047.el -> /mail
16471         rfc2231.el -> /mail
16472         rtree.el -> /
16473         sieve-manage.el -> /net
16474         sieve-mode.el -> /net
16475         sieve.el -> /net
16476         starttls.el -> /net
16477         utf7.el -> /international
16478         yenc.el -> /mail
16480 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16482         Allow undoing changes while doing query-replace
16484         * doc/lispref/searching.texi (Search and Replace): Mention
16485         undo (bug#21684).
16487         * lisp/replace.el (query-replace-help): Document undo.
16488         (perform-replace): Implement undo while replacing text.
16490 2016-02-23  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
16492         Highlight assignments in Makefiles more correctly
16494         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
16495         Highlight assignments preceded by a TAB character correctly
16496         (bug#20787).
16498 2016-02-23  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
16500         Use memmove instead of memcpy on overlapping regions
16502         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
16503         use memmove instead of memcpy (bug#19213).
16505 2016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
16507         Port to --enable-gcc-warnings sans getaddrinfo_a
16509         * src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED
16510         to a local unused when getaddrinfo_a is missing.
16511         Resize portbuf to size needed.  Do cheap test first.
16512         Move local to block where it’s needed.
16514 2016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
16516         Minor cleanups for async DNS etc.
16518         * src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED):
16519         Omit unnecessary parens.
16520         * src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit)
16521         (gnutls_verify_boot):
16522         Use bool for boolean.
16523         (ATTRIBUTE_FORMAT_PRINTF): Add printf attribute.
16524         * src/process.c (free_dns_request, Fmake_network_process):
16525         Allocate and free async request control block all in one go.
16526         (set_network_socket_coding_system, finish_after_tls_connection)
16527         (connect_network_socket):
16528         Now static.
16529         (conv_numerical_to_lisp): 2nd arg is now int, not unsigned.
16530         (Fmake_network_process): Use list1 for brevity.
16531         (wait_for_socket_fds): 2nd arg is now const ptr.
16532         * src/process.h (struct Lisp_Process.dns_request):
16533         Now struct gaicb *, not struct gaicb **, since there was always
16534         exactly one.  All uses changed.
16535         * src/window.c, src/window.h (run_window_configuration_change_hook):
16536         Now static.
16538 2016-02-23  Carlos Pita  <carlosjosepita@gmail.com>
16540         Allow more shell script defun forms
16542         * lisp/progmodes/sh-script.el (sh-mode): Allow more shell
16543         script defun forms, like function name () {...} (bug#19754).
16545 2016-02-23  Martin Rudalics  <rudalics@gmx.at>
16547         Fix `window-configuration-change-hook' and `window-size-change-functions'
16549         (1) Run `window-configuration-change-hook' if and only if at least
16550         one window was deleted or created or shows another buffer since
16551         last redisplay.
16553         (2) Run `window-size-change-functions' if and only if at least
16554         one window changed its size since last redisplay (in a few cases
16555         `window-size-change-functions' will also run when no window
16556         changed its size).
16558         (3) Provide two functions `window-pixel-height-before-size-change'
16559         and `window-pixel-width-before-size-change' that allow to easily
16560         detect which window changed size.
16562         * src/frame.h (struct frame): New boolean member
16563         window_configuration_changed.
16564         (FRAME_WINDOW_SIZES_CHANGED): Remove macro.
16565         (FRAME_WINDOW_CONFIGURATION_CHANGED): New macro.
16566         * src/frame.c (adjust_frame_size): Don't run
16567         `window-configuration-change-hook'.
16568         * src/window.h (struct window): New fields
16569         pixel_width_before_size_change and pixel_height_before_size_change.
16570         (WINDOW_INTERNAL_P): New macro.
16571         * src/window.c (Fwindow_pixel_width_before_size_change)
16572         (Fwindow_pixel_height_before_size_change): New functions.
16573         (Fdelete_other_windows_internal, Fwindow_resize_apply)
16574         (resize_frame_windows, Fsplit_window_internal)
16575         (Fdelete_window_internal, grow_mini_window)
16576         (shrink_mini_window, Fresize_mini_window_internal): Don't call
16577         FRAME_WINDOW_SIZES_CHANGED.
16578         (window_size_changed, window_set_before_size_change_sizes)
16579         (run_window_size_change_functions): New functions.
16580         (make_window): Initialize pixel_width_before_size_change and
16581         pixel_height_before_size_change.
16582         (Fdelete_window_internal): Don't call
16583         run_window_configuration_change_hook.
16584         (struct saved_window): Add pixel_height_before_size_change and
16585         pixel_width_before_size_change.
16586         (Fset_window_configuration): Try to identify window configuration
16587         changes correctly so run_window_configuration_change_hook and
16588         run_window_size_change_functions run only if configuration and size
16589         really changed.
16590         (save_window_save): Set the pixel_height_before_size_change and
16591         pixel_width_before_size_change fields.
16592         (Vwindow_size_change_functions): Move here definiton from xdisp.c.
16593         * src/xdisp.c (prepare_menu_bars, redisplay_internal): Call
16594         run_window_size_change_functions.
16595         (Vwindow_size_change_functions): Move definition to window.c.
16596         * src/xfns.c (x_set_menu_bar_lines): Don't call
16597         run_window_configuration_change_hook.
16598         * doc/lispref/windows.texi (Window Sizes): Document new
16599         functions `window-pixel-height-before-size-change' and
16600         `window-pixel-width-before-size-change'.
16601         (Window Configurations): Mention that this may trigger
16602         execution of `window-size-change-functions' although no window
16603         changed size.
16604         (Window Hooks): Update descriptions of `window-size-change-functions'
16605         and `window-configuration-change-hook'.
16607 2016-02-23  Drew Adams  <drew.adams@oracle.com>
16609         (ls-lisp-insert-directory): Make -B work
16611         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
16612         (bug#20776).
16614 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16616         Fix typo in message-setup-fill-variables
16618         * lisp/gnus/message.el (message-setup-fill-variables): Fix
16619         typo in a recent checkin that used `setq-default' instead of
16620         `setq-local' (bug#22781).
16622 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16624         `message-dont-reply-to-names' can also be a list of regexps
16626         * lisp/gnus/message.el (message-dont-reply-to-names):
16627         `message-dont-reply-to-names' can also be a list of regexps (bug#22773).
16629 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
16631         Make buttons in header lines work
16633         * lisp/help-mode.el (help-button-action): `help-xref-button' in
16634         header line doesn't work (bug#21024).
16636 2016-02-23  Vasilij Schneidermann  <v.schneidermann@gmail.com>
16638         Place apples randomly in Snake
16640         * lisp/play/snake.el (snake-score): New variable (bug#21359).
16641         (snake-set-dot): Place the apples randomly.
16643 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16645         Allow optional parameter to be nil
16647         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Allow the
16648         optional parameter to be nil (bug#21576).
16650 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16652         Completely ignore buffers with no name when copying file names
16654         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Completely
16655         ignore buffers with no file name. (bug#21577).
16657 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16659         Make spelling of "Eshell" consistent
16661         * lisp/eshell/esh-mode.el (eshell-mode): Spell it "Eshell".
16662         * lisp/eshell/eshell.el (eshell-command):
16663         Spell it "Eshell" (bug#21678).
16665 2016-02-23  Simen Heggestøyl  <simenheg@gmail.com>
16667         Allow pretty lambdas in Scheme mode
16669         * lisp/progmodes/scheme.el (scheme-mode-variables): Borrow
16670         `prettify-symbols-alist' from Lisp mode (bug#21679).
16672 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16674         Rename lisp--prettify-symbols-alist
16676         * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist):
16677         Rename from `lisp--prettify-symbols-alist' since we're going
16678         to use it in Scheme mode, too.
16679         (lisp-mode-variables): Use it.
16681 2016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>  (tiny change)
16683         Remove spurious newline in package list
16685         * lisp/emacs-lisp/package.el (describe-package-1): Remove
16686         spurious newline (bug#21706).
16688 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16690         Revert "Remove spurious newline in package list"
16692         This reverts commit fad14c289d36a2c61e0fd34105ebb1f62c80d71d.
16694 2016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>
16696         Remove spurious newline in package list
16698         * lisp/emacs-lisp/package.el (describe-package-1): Remove
16699         spurious newline (bug#21706).
16701 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16703         Keep the position in the process buffer when deleting processes
16705         * lisp/simple.el (process-menu-delete-process): Keep the
16706         position in the buffer after killing a process (bug#21759).
16708 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16710         Require that the buffer that we're trying to patch exist
16712         * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
16713         buffer that we're trying to patch exist (bug#21852).
16715 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16717         Require that the buffer that we're trying to patch exist
16719         * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
16720         buffer that we're trying to patch exist (bug#21852).
16722 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16724         Be more verbose when changing frame mode in ediff
16726         * lisp/vc/ediff-util.el (ediff-toggle-multiframe): Say what
16727         mode we toggled to (bug#21853).
16729 2016-02-22  Łukasz Stelmach  <stlman@poczta.fm>
16731         Encode header strings before printing
16733         * lisp/ps-print.el (ps-generate-header-line): Encode the
16734         header strings to avoid problems with non-ASCII headers
16735         (bug#22611).
16737 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16739         Test message-strip-subject-trailing-was
16741         * test/lisp/gnus/message-test.el (message-strip-subject-trailing-was):
16742         New test (bug#22632).
16744 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16746         Make use of the `ert-with-function-mocked' macro
16748         * test/lisp/calendar/icalendar-tests.el (icalendar--create-uid):
16749         * test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9781): Use
16750         `ert-with-function-mocked' instead of implementing the fragile
16751         `unwind-protect' logic openly.
16753 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16755         message-strip-subject-trailing-was: Refactor
16757         * lisp/gnus/message.el (message-strip-subject-trailing-was): Refactor
16758         the function replacing sequence of `if' calls with a mixture of `or'
16759         and `and' calls instead.  This makes it shorter and containing less
16760         internal state thus easier to follow.
16762 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16764         ert-with-function-mocked: New macro
16766         * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): New macro which
16767         allows evaluating code while particular function is replaced with
16768         a mock.  The original definition of said function is restored once the
16769         macro finishes.
16771 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16773         Move Gnus functions frm rfc1843 to new file gnus-rfc1843
16775         * lisp/gnus/gnus-rfc1843.el: New file for Gnus/rfc1843
16776         interface functions.
16778         * lisp/gnus/rfc1843.el: Move all Gnus-specifig functions to
16779         gnus-rfc1843.
16781 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16783         Don't use mm-util functions in qp.el
16785         * lisp/gnus/qp.el (quoted-printable-decode-region): Don't use
16786         mm-util functions.
16787         (quoted-printable-encode-string): Ditto.
16788         (quoted-printable-encode-region): Ditto.
16790 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16792         Don't require mm-util
16794         * lisp/gnus/ietf-drums.el (mm-util): Don't require.
16796 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16798         Remove Gnus functions from auth-source.el
16800         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
16801         Remove usage of Gnus utility function.
16802         (mm-util, gnus-util): Don't require.
16804 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16806         Allow deleting all non-matching cookies
16808         * lisp/url/url-cookie.el (url-cookie-delete-cookies): Allow
16809         keeping matching cookies (bug#22720).
16811 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16813         Make (setf (image-property ...)) return VALUE
16815         * lisp/image.el (image--set-property): Return VALUE, not IMAGE.
16817 2016-02-22  John Wiegley  <johnw@newartisans.com>
16819         Merge from origin/emacs-25
16821         a9c48d5 Additional fixes for file notification
16822         6bd9d69 Fix documentation of 'global-disable-point-adjustment'
16823         8c22ac9 ; Spelling fix
16824         2975784 Set file modes of pinentry socket for extra safety
16825         2667b3e Clarify GnuPG version compatibility chapter
16826         5e34c36 Revert "Change the default socket location for pinentry"
16827         e19c1c3 Kill off xref--display-history
16828         5698947 Keep the xref buffer visible until the user quits it explicitly
16829         e34fbde Change the default socket location for pinentry
16830         5f89658 Mention how to enable pinentry feature
16831         db51224 Sync with gnulib
16832         aa5a794 Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
16833         2d8b2fd Restore point when writing semantic table to disk
16834         27d3430 Mention pinentry.el in epa manual
16835         5baa001 Fix Bug#22736
16836         7261355 Grammar fix in doc string
16837         d0f3b18 Naming fix for consistency
16838         74ec92d Prefer customized value for GnuPG executable
16839         ea0b604 Fix memory reservation on MS-Windows
16840         c5f72aa Update NextStep readme and add wish list.
16841         6de26a7 Report also result in `file-notify--test-event-handler'
16842         5d17ae7 Improve file-notify-test08-watched-file-in-watched-dir
16843         1cb1268 Fix todo-mode item date editing bugs
16844         1e996cf Fix "[:upper:]" for non-ASCII characters
16845         896f993 Allow customising the article mode cursor behavior
16846         24c1c1d Use pop-to-buffer-same-window in woman.el
16847         2a75f64 New filenotify test for bug#22736
16848         c9bccf7 Report critical battery errors
16849         d675db9 Make eww message toggling message clearer
16850         5e0bb40 * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
16851         fa8fd65 ; Improve character-folding entries in NEWS
16852         3722a69 Fix bugs in window resizing code
16853         289d5c6 Fix decoding DOS EOL in a unibyte buffer
16854         2abcb06 Correct c-parse-state cache manipulation error.
16855         14aec91 Take advantage of new GnuPG version check function
16856         e80c2a7 Make GnuPG version check robuster
16857         15a9464 Fix x-load-color-file pointer signedness
16858         132dbf0 * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
16859         78ab6f1 Follow convention for greek letter constants.
16860         106b5bb Add Stefan-Boltzmann constant to calc units table.
16861         b96baa8 * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
16862         5f91cf9 Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
16863         2d40f7d Fix soffice UserInstallation-URL for Windows
16864         b1a3ebe Fix display of <pre> elements
16865         57d0e3d ; * lisp/help-fns.el: Remove outdated comment.
16866         7a0628d ; * admin/make-tarball.txt: Mention cleaning.
16868 2016-02-22  Oleh Krehel  <ohwoeowho@gmail.com>
16870         lisp/calendar/appt.el (appt-delete-window): Check if buffer is live
16872         * lisp/calendar/appt.el (appt-delete-window): Avoid trying to delete a
16873           non-existing buffer.
16875 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16877         Mention the further asynchronousity
16879 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16881         Fix async TLS boot problem
16883         * src/process.c (wait_reading_process_output): Verify the boot
16884         of the correct process.
16886 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16888         Clean up forgotten text in manual
16890         * doc/lispref/display.texi (Defining Images): Remove example
16891         forgotten when making previous change.
16893 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16895         Clean up debugging code
16897         * src/process.c (Fmake_network_process): Remove debugging printf.
16898         (wait_for_socket_fds, wait_while_connecting)
16899         (wait_for_tls_negotiation): Remove newlines from messages.
16901 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16903         Fix merge conflicts in network-stream-tests.el
16905 2016-02-21  Paul Eggert  <eggert@penguin.cs.ucla.edu>
16907         Port recent filevercmp addition to MS-Windows
16909         Reported by Andy Moreton in:
16910         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01302.html
16911         * nt/gnulib.mk (libgnu_a_SOURCES): Add filevercmp.c.
16912         (EXTRA_DIST): Add filevercmp.h.
16914 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16916         add_to_log expects Lisp parameters
16918 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16920         Mention sentinels in conjunction with :nowait t.
16922         * doc/lispref/processes.texi (Network Processes): Mention the
16923         recommended way of using sentinels with :nowait t.
16925 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16927         Mention in the doc strings that process functions may block
16929         (Fprocess_contact, Fprocess_datagram_address)
16930         (Fset_process_datagram_address, Fset_network_process_option)
16931         (Fprocess_send_region, Fprocess_send_string): Mention that the
16932         functions may block.
16933         (Fset_process_coding_system): Ditto.
16935 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16937         Add blocker warnings to the *Messages* buffer
16939         * src/process.c (wait_for_socket_fds): Add warning to the log.
16940         (wait_while_connecting): Ditto.
16941         (wait_for_tls_negotiation): Ditto.
16943 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16945         Rework the image property getter/setters
16947         * doc/lispref/display.texi (Defining Images): Document the
16948         renamed `image-get/set-property' functions.
16950         * lisp/image.el (image--set-property): Rename from
16951         image-set-property.
16952         (image-property): Declare a setf form.
16953         (image-property): Rename from `image-get-property'.
16955 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
16957         Use Gnulib filevercmp for version comparison
16959         * admin/merge-gnulib (GNULIB_MODULES): Add filevercmp.
16960         * doc/lispref/strings.texi (Text Comparison):
16961         * etc/NEWS, src/fns.c:
16962         * test/src/fns-tests.el (fns-tests-string-version-lessp):
16963         Rename newly-introduced function to string-version-lessp, by
16964         analogy with strverscmp.
16965         * lib/filevercmp.c, lib/filevercmp.h: New files, copied from gnulib.
16966         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
16967         * src/fns.c: Include <filevercmp.h>.
16968         (gather_number_from_string): Remove.
16969         (Fstring_version_lessp): Reimplement via filevercmp.
16971 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16973         Add a function to delete URL cookies
16975         * doc/misc/url.texi (Cookies): Document
16976         url-cookie-delete-cookies.
16978         * lisp/url/url-cookie.el (url-cookie-delete-cookies): New function.
16980 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16982         Avoid integer overflows in string-numeric-lessp
16984         * src/fns.c (Fstring_numeric_lessp): If we have an integer
16985         overflow, compare lexicographically.
16987 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16989         Add the string-numeric-lessp function
16991         * doc/lispref/strings.texi (Text Comparison): Document
16992         `string-numerical-lessp'.
16994         * src/fns.c (Fstring_numeric_lessp): New function.
16995         (gather_number_from_string): Helper function for that function.
16997         * test/src/fns-tests.el (fns-tests-string-numeric-lessp): Add tests.
16999 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
17001         Clarify levels of :nowait t.
17003         * doc/lispref/processes.texi (Network Processes): Mention
17004         levels of asynchronicity.
17006 2016-02-20  Alain Schneble  <a.s@realize.ch>
17008         Respect DNS timeouts
17010         * src/process.c (check_for_dns): If the async DNS request
17011         failed and the associated process is still in "connect" state,
17012         deactivate the process and set status to "failed".
17014 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17016         Add a frame around the placeholder image in shr
17018         * lisp/net/shr.el (shr-make-placeholder-image): Add a frame
17019         around the image.
17021 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17023         Use placeholder images in shr to avoid text moving around
17025         * lisp/net/shr.el (shr-rescale-image): Pass in width/height
17026         from the HTML.
17027         (shr-tag-img): Ditto.
17028         (shr-string-number): New function.
17029         (shr-make-placeholder-image): Make placeholder images.
17030         (shr-tag-img): Insert them if we have SVG support.
17032 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17034         Get explicit width/height + scale computations right
17036         * src/image.c (compute_image_size): :scale should also be
17037         taken into account when :width and :height are explicitly names.
17039 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17041         New functions for getting and setting image properties
17043         * doc/lispref/display.texi (Defining Images): Document
17044         image-get/set-property.
17046         * lisp/image.el (image-set-property): New function.
17047         (image-get-property): Ditto.
17049 2016-02-19  Alan Mackenzie  <acm@muc.de>
17051         Await the final mouse event in C-h c and C-h k.
17053         * lisp/help.el (describe-key-briefly, describe-key): On receiving a mouse
17054         event, keep reading further events until a timeout occurs, to ensure we have
17055         the complete mouse event from the user.
17057 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17059         Add a library for creating and manipulating SVG images
17061         * doc/lispref/display.texi (SVG Images): New section.
17063         * lisp/svg.el: New file.
17065 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17067         Fix up tests for async TLS negotiation
17069 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17071         Fix coding system setup
17073         * src/process.c (set_network_socket_coding_system): Pass in
17074         the host/service that's been computed already.
17076 2016-02-18  Michael Albinus  <michael.albinus@gmx.de>
17078         Reference `tramp-theme' in GNU ELPA.
17080         * doc/misc/tramp.texi (Frequently Asked Questions):
17081         Reference `tramp-theme' in GNU ELPA.
17083 2016-02-17  Lars Ingebrigtsen  <larsi@gnus.org>
17085         Verify the TLS connection asynchronously
17087         * src/gnutls.c (gnutls_verify_boot): Refactor out into its own
17088         function so that we can call it asynchronously.
17089         (Fgnutls_boot): Use it.
17091         * src/process.c (wait_reading_process_output): Verify the TLS
17092         negotiation.
17094 2016-02-16  Simen Heggestøyl  <simenheg@gmail.com>
17096         Add column layout module to CSS property list
17098         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
17099         CSS Multi-column Layout Module.
17101 2016-02-16  Michael Albinus  <michael.albinus@gmx.de>
17103         Minor cleanup in CONTRIBUTE and test/README
17105         * CONTRIBUTE: Remove detailed explanation about testing; this
17106         is now in test/README.
17108         * test/README: Don't mention automated/ subdirectory.
17110 2016-02-15  Glenn Morris  <rgm@gnu.org>
17112         Provide 'term/name in lisp/term files.
17114         * lisp/term/AT386.el, lisp/term/bobcat.el, lisp/term/cygwin.el:
17115         * lisp/term/internal.el, lisp/term/iris-ansi.el, lisp/term/linux.el:
17116         * lisp/term/lk201.el, lisp/term/news.el, lisp/term/ns-win.el:
17117         * lisp/term/pc-win.el, lisp/term/rxvt.el, lisp/term/screen.el:
17118         * lisp/term/sun.el, lisp/term/tty-colors.el, lisp/term/tvi970.el:
17119         * lisp/term/vt100.el, lisp/term/vt200.el, lisp/term/w32-win.el:
17120         * lisp/term/w32console.el, lisp/term/wyse50.el, lisp/term/x-win.el:
17121         For consistency, provide 'term/name in all files that don't already.
17123 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17125         Deactivate the correct process
17127         * src/process.c (wait_reading_process_output): Deactivate the
17128         correct process on failure.
17130 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17132         Implement asynch TLS negotiation
17134         * src/gnutls.c (gnutls_try_handshake): Factor out into its own
17135         function.
17136         (emacs_gnutls_handshake): Use it.
17137         (emacs_gnutls_read): Just return instead of retrying the handshake.
17139         * src/process.c (finish_after_tls_connection): Factor out
17140         into its own function.
17141         (connect_network_socket): Use it.
17142         (wait_reading_process_output): Retry TLS handshakes.
17143         (wait_reading_process_output): Defer sentinel until TLS completes.
17145 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17147         Simplify the DNS resolution loop a bit
17149         * src/process.c (wait_reading_process_output): Simplify the
17150         DNS resolution loop a bit.
17152 2016-02-15  Alain Schneble  <a.s@realize.ch>
17154         Loop over the process list instead of maintaining a separate list
17156         * src/process.c: Remove declaration/definition of dns_processes list.
17157         * src/process.c (wait_reading_process_output): Loop over all processes in
17158         Vprocess_alist instead of dns_processes, to check for completed DNS
17159         requests.
17161 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17163         Allow setting the filter masks later
17165         * src/process.c (Fset_process_filter): Don't set the socket
17166         masks here, because we may not have a socket yet.
17167         (set_process_filter_masks): New function.
17168         (connect_network_socket): Set the filter masks here.
17170 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17172         Remove debugging
17174 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17176         Ensure we always free DNS resources when deleting a process
17178         * src/process.c (free_dns_request): Factor out into own function.
17179         (Fdelete_process): When deleting a process, free any DNS
17180         structures associated with it.
17181         (check_for_dns): Always free all DNS resources.
17183 2016-02-15  Alain Schneble  <a.s@realize.ch>
17185         Don't block in set-process-window-size
17187         * src/process.c (set-process-window-size): Explicitly return Qnil when
17188         called with network processes as set_window_size won't work anyway on
17189         socket fds.  As a welcome side effect, this makes the blocking
17190         wait_for_socket_fds call obsolete.
17192 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17194         Do most of the coding system setup earlier
17196         * src/process.c (Fmake_network_process): Set the read/write
17197         coding systems here, so that special bindings work.
17198         (Fmake_network_process): Complete the coding system setup here.
17200 2016-02-15  John Wiegley  <johnw@newartisans.com>
17202         Merge from origin/emacs-25
17204         d4b93e1 Minor fixes in global-auto-composition-mode
17205         02b037b Allow arithmetic operators inside C++ template constructs.
17206         44b16f6 Avoid crashes in semi-malformed 'condition-case'
17207         652e5b4 Allow arithmetic operators inside C++ template constructs.
17208         d9ea795 Fix regression with 'recent-keys' and keyboard macros
17209         903603f Fix wording in a doc-view.el comment
17210         cf79616 ; Spelling fixes
17211         f8bf1b3 CONTRIBUTE cleanups and updates
17212         f3aaca3 Port USE_STACK_LISP_OBJECTS fix to Clang
17213         1834ac7 Port to x86 GCC 4.3.1 and earlier
17214         8482949 Fix point movement under 'scroll-conservatively'
17215         c1313b5 Replace colon in file name (not legal on Windows)
17216         f7af26c Fix a typo in edt.texi
17217         8badf95 Make 'mmap_realloc' on MS-Windows more reliable
17218         856cd94 Grep alias `all' shall not match parent directory
17220 2016-02-15  John Wiegley  <johnw@newartisans.com>
17222         Merge from origin/emacs-25
17224         dacde7e * etc/AUTHORS: Update the AUTHORS file
17225         478ca5d ; fix changelog entries
17226         2b7d006 ; make change-history-commit
17227         851decb * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
17228         47896c8 ; Improve commentary in insdel.c
17229         53ca1e1 Index tilde characters in names of backup files
17230         d97f522 Document deprecation of hi-lock-mode's 'C-x w' bindings
17231         b55f06d ; * etc/NEWS: Use double spaces to end a sentence.
17232         28bb214 Announce that the `C-x w' bindings are deprecated
17233         1c98f98 Suppress GNUstep hardening
17234         d82f24b Fix redisplay after a large insertion
17235         85a2753 Revert "Fix gnus-group-get-new-news-this-group on group with
17236                 closed server"
17237         e8e3db0 ; Improve merge documentation in CONTRIBUTE
17238         5be9989 * lib-src/make-docfile.c: Include stdarg.h.
17239         c95ebbf Extend gpm-mouse-mode's doc string and doc to point out
17240                 limitations.
17242 2016-02-15  John Wiegley  <johnw@newartisans.com>
17244         Merge from origin/emacs-25
17246         f5d6b9b Revert "Support integer image rotation and respect EXIF rotations"
17247         afe7d1f Revert "Document EXIF image rotation"
17248         c6f377c Document OS X LANG default
17249         eb4a18c Set locale when run from OS X GUI
17250         456c0a3 make-docfile cleanup for I/O, etc.
17251         25ec995 Memory-management cleanup in make-docfile
17252         02d925e Kevin Gallagher has new email address
17253         4ef153b Improve doc strings of 'forward/backward-word-strictly'
17254         3ad05a0 Describe Makefile test targets in test/README
17256 2016-02-15  John Wiegley  <johnw@newartisans.com>
17258         Merge from origin/emacs-25
17260         10b8ed2 Document EXIF image rotation
17261         0f60049 Support integer image rotation and respect EXIF rotations
17262         7dd45b6 Quote table names for postgres listings (sql-mode)
17263         6bac035 * lisp/replace.el (replace-match-maybe-edit): Make arg
17264                 `backward' optional.
17265         ee909aa * lisp/simple.el (next-line-or-history-element): Reset
17266                 temporary-goal-column.
17267         0a289d3 Suppress ACL ops if configured with --disable-acl
17268         1a9dbf5 Mention web bugs
17269         fa55da2 Make mm-html-blocked-images default to "" again
17271 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17273         Protect against initial handshake failures
17275         * src/process.c (connect_network_socket): Mark the connection
17276         as failed if the handshake didn't succeed yet.  This should be
17277         reworked later.
17279 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17281         Call the network security manager after doing TLS negotiation
17283         * lisp/net/network-stream.el (network-stream-open-tls):
17284         Postpone NSM verification when running async.
17286         * src/process.c (Fset_process_filter): This function doesn't
17287         need to wait.
17288         (connect_network_socket): Set the process status to "run" only
17289         after TLS negotiation.
17290         (wait_for_socket_fds): Take a name parameter for more debugging.
17291         (wait_reading_process_output): Don't change status to "run"
17292         unless TLS negotiation has finished.
17293         (send_process): Wait for the process here instead of
17294         send_process_string.
17295         (connect_network_socket): Call the network security manager.
17297 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17299         Remove some #ifdefs and update documentation
17301         * doc/lispref/processes.texi (Network Processes): Remove
17302         mention of `dns'.
17304         * lisp/net/network-stream.el (open-network-stream): Remove
17305         mention of `dns'.
17307         * src/process.c (Fset_process_filter)
17308         (Fset_process_window_size, Fprocess_contact)
17309         (Fprocess_datagram_address, Fset_process_datagram_address)
17310         (Fset_network_process_option, Fprocess_send_region)
17311         (Fprocess_send_string, Fset_process_coding_system)
17312         (Fset_process_filter_multibyte): Remove the #ifdef
17313         HAVE_GETADDRINFO_A checks.
17314         (Fprocess_send_string): Wait for TLS negotiation.
17315         (wait_for_tls_negotiation): New function.
17316         (send_process): Remove the TLS boot check.
17318         * src/process.c (Fmake_network_process): Ditto.
17320 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17322         Use :nowait t in url-gw
17324         * lisp/url/url-gw.el (url-open-stream): Just use :nowait t,
17325         since we're not differentiating.
17327 2016-02-14  Alain Schneble  <a.s@realize.ch>
17329         Add blockers to process functions
17331         * src/process.c (set-process-filter, set-process-window-size,
17332         process-contact, process-datagram-address, set-process-datagram-address,
17333         set-network-process-option): Make functions wait (block) on network
17334         process until pending DNS requests have been processed and associated
17335         socket initialized.
17337         * src/process.c (process-send-region, process-send-string,
17338         process-send-eof): Make functions wait (block) while network process is
17339         in connect state.
17341 2016-02-14  Simen Heggestøyl  <simenheg@gmail.com>
17343         Add fragmentation module to CSS property list
17345         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
17346         CSS Fragmentation Module Level 3.
17348 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
17350         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
17352 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
17354         New function seq-map-indexed
17356         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
17357         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
17359 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17361         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
17363 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17365         Fix problem with wrong encoding of non-ASCII message bodies
17367         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
17368         multibyteness before encoding the data.
17370 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17372         Remove codepage setup code from mm-util
17374         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
17375         (mm-codepage-iso-8859-list): Remove.
17376         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
17377         (mm-setup-codepage-ibm): Remove.
17378         (mm-charset-eval-alist): Remove the code pages from the
17379         default value.
17381 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17383         Remove compat code for older Emacsen
17385         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
17386         XEmacs compat code.
17388         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
17389         unused compat function.
17390         (gnus-sync-json-plist-p): Ditto.
17392         * lisp/gnus/message.el (message-default-charset): Make obsolete.
17393         (message-info): Remove compat code.
17394         (message-setup-fill-variables): Remove kludge needed earlier
17395         to not overwrite `normal-auto-fill-function'.
17396         (message-split-line): Remove compat code.
17398         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
17399         compat code.
17401 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17403         Remove some compat functions from gmm-utils.el
17405         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
17406         compat code.
17407         (gmm-image-search-load-path): Remove.
17408         (gmm-image-load-path-for-library): Remove.
17410 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17412         Remove the gmm-lazy and nnmail-lazy compat widgets
17414         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
17416         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
17418 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17420         Clean up nnimap-request-move-article slightly
17422         * lisp/gnus/nnheader.el (subr-x): Require.
17424         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
17425         the code slightly.
17427 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17429         Use open-network-stream instead of open-protocol-stream
17431         * lisp/gnus/nnimap.el: Use open-network-stream instead of
17432         open-protocol-stream.
17434         * lisp/gnus/nntp.el: Ditto.
17436         * lisp/gnus/pop3.el: Ditto.
17438         * lisp/gnus/sieve-manage.el: Ditto.
17440         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
17442 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17444         Remove compat code that relies on (featurep 'mule)
17446         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
17447         compat code.
17449         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
17450         Remove compat code.
17452         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
17453         Remove compat code.
17455         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
17456         Remove compat code.
17457         (mm-w3m-standalone-supports-m17n-p): Ditto.
17459 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17461         Remove compat functions from starttls.el
17463         * lisp/gnus/starttls.el
17464         (starttls-set-process-query-on-exit-flag): Remove.
17466 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17468         Remove compat functions from smime.el
17470         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
17471         (smime-make-temp-file): Remove.
17473 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17475         Remove compat code from smiley
17477         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
17479 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17481         Remove compat code from rfc2047
17483         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
17484         compat code.
17485         (rfc2047-decode-string): Ditto.
17487 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17489         Remove compat function from pop3
17491         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
17493 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17495         Remove compat code in Gnus backends
17497         * lisp/gnus/nndiary.el (nndiary-error): Remove.
17499         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
17501         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
17503         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
17505         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
17507 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17509         Remove compat code from some mml files
17511         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
17512         Remove compat code.
17514         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
17515         Always use `mail-extract-address-components', since this isn't
17516         time critical.
17517         (mml-smime-get-dns-cert): Ditto.
17519         * lisp/gnus/mml.el (mml-preview): Remove compat code.
17521 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17523         Remove compat code and compat functions from mm-util.el
17525         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
17526         compat code.
17527         (mm-coding-system-priorities)
17528         (mm-mule-charset-to-mime-charset, mm-charset-after)
17529         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
17530         (mm-detect-coding-region): Define unconditionally.
17531         (mm-detect-mime-charset-region): Ditto.
17532         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
17533         (coding-system-name)
17534         (find-file-coding-system-for-read-from-filename)
17535         (find-operation-coding-system): Remove aliases.
17537 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17539         Remove some compat code from mm-*.el
17541         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
17543         * lisp/gnus/mm-decode.el (mm-tmp-directory)
17544         (mm-valid-image-format-p): Remove compat code.
17546         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
17547         "Connection" "Close" workaround for older Emacsen.
17549 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17551         Remove compat code and functions from message.el
17553         * lisp/gnus/message.el (message-send-mail-function): Remove
17554         compat code.
17555         (message-dont-reply-to-names, message-mode)
17556         (message-setup-fill-variables, message-fill-paragraph)
17557         (message-remove-blank-cited-lines, message-make-from)
17558         (message-forward-rmail-make-body, message-tool-bar-gnome)
17559         (message-tab): Remove compat code.
17560         (message-completion-in-region): Remove.
17561         (message-read-from-minibuffer): Remove compat code.
17563 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17565         Declare rfc1843 instead of autoloading
17567         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
17568         instead of autoload.
17570 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
17572         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
17574         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
17575         autoloaded correctly.  (Bug#22613)
17577 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
17579         Fix network-stream-tests.el for MS-Windows
17581         * test/lisp/net/network-stream-tests.el
17582         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
17583         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
17585 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17587         Remove some Message compat functions
17589         * lisp/gnus/message.el (message-kill-all-overlays): Define
17590         unconditionally.
17591         (message-window-inside-pixel-edges): Remove.
17592         (mail-dont-reply-to): Remove.
17594 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17596         Remove some Gnus compat code
17598         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
17599         (gnus-mm-display-part): Ditto.
17601         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
17602         compat code.
17604 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17606         Sort groups before inserting them into the group buffer
17608         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
17609         Sort groups before inserting them.
17611 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17613         Make "unseen" tracking work again in Gnus
17615         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
17616         tracking work again.
17618 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17620         Remove Gnus compat functions defined in gnus.el
17622         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
17623         (gnus-extent-start-open, gnus-character-to-event)
17624         (gnus-assq-delete-all, gnus-add-text-properties)
17625         (gnus-put-text-property, gnus-key-press-event-p):
17627 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17629         Remove compat code from gnus-uu and win
17631         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
17632         compat code.
17634         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
17636         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
17638 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17640         Remove several gnus-util compat functions
17642         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
17643         (gnus-read-shell-command): Remove.
17644         (gnus-match-substitute-replacement): Remove.
17645         (gnus-string-match-p): Remove.
17646         (gnus-string-prefix-p): Remove.
17648 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17650         Remove the gnus-merge alias
17652         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
17654 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17656         Remove the gnus-union alias
17658         * lisp/gnus/gnus-util.el (gnus-union): Remove.
17660 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17662         Remove the gnus-delete-alist alias
17664         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
17665         (gnus-delete-alist): Remove.
17667 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17669         Remove the gnus-float-time alias
17671         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
17672         compat code.
17673         (gnus-float-time): Remove.
17675 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17677         Remove compat code from gnus-srvr, start and sum
17679         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
17680         compat code.
17682         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
17683         Remove compat code.
17685         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
17686         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
17687         (gnus-recenter)
17688         (gnus-summary-limit-strange-charsets-predicate)
17689         (gnus-summary-show-thread): Remove compat code.
17691 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17693         Remove compat code from gnus-spec.el
17695         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
17696         (gnus-balloon-face-function): Remove compat code.
17698 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17700         Fix compat change in last check-in
17702         * lisp/gnus/gnus-group.el
17703         (gnus-group-name-charset-group-alist): `find-coding-system'
17704         doesn't exist in Emacs.
17706 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17708         Always use url-queue
17710         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
17711         Always use url-queue.
17713 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17715         Remove compat functions from gnus-html.el
17717         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
17719 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17721         Remove compat code from gnus-group.el
17723         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
17724         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
17726 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17728         Define gnus-diary-kill-entire-line unconditionally
17730         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
17731         Define unconditionally.
17733 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17735         Remove compat code from gnus-cache and gnus-bookmark
17737         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
17739         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
17740         Remove compat code.
17742 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17744         Remove compat code from gnus-art.el
17746         * lisp/gnus/gnus-art.el (gnus-article-prepare)
17747         (gnus-mime-copy-part, gnus-output-to-file)
17748         (gnus-article-reply-with-original)
17749         (gnus-button-handle-apropos-variable)
17750         (gnus-button-handle-apropos-documentation):
17752 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17754         Remove compat code from gnus-agent.el
17756         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
17757         Remove compat code.
17759 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17761         Rewrite gmm-labels usage to use cl-labels
17763         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
17764         (gmm-labels): Remove.
17766 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17768         Remove compat code from canlock.el
17770         * lisp/gnus/canlock.el (defmacro): Remove
17772 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17774         Remove compat code from auth-source
17776         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
17777         Remove compat code.
17779 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17781         Fix gnus-group.el compilation warnings about unprefixed variables
17783         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
17784         compilation warnings by passing in the dynamic variables as
17785         explicit lexical parameters to `eval'.
17787 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17789         Fix the :tracker slot name
17791         * lisp/gnus/registry.el (registry-lookup-secondary): The
17792         `tracker' slot is called `tracker', not `:tracker'.
17794 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17796         Fix compilation warnings in gnus-art.el
17798         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
17799         (gnus-article-hide): Avoid compilation warnings.
17801 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17803         Fix compilation warning in gnus-score.el
17805         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
17806         compiler.
17808 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
17810         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
17812         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
17814         This makes nnimap groups not be activated.
17816 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17818         Fix encoding problem introduced by previous patch series
17820         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
17822         * lisp/gnus/rfc2231.el: Fix problem created by the
17823         mm-replace-in-string conversion.
17825 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17827         Revert "Avoid defvarring prefix-less variables"
17829         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
17831         The defvars are needed if we're doing lexical-binding
17833 2016-02-12  Glenn Morris  <rgm@gnu.org>
17835         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
17836         Make it pass.
17838         * test/lisp/url/url-auth-tests.el
17839         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
17841 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17843         Finish up cl-defmethoding registry,el
17845         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
17847 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17849         Revert the gnus-replace-in-string change, fix arguments, reapply
17851 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17853         Silence more message.el compilation warnings
17855         * lisp/gnus/message.el (message-generate-headers): Don't use
17856         variable values directly to get the header values, because
17857         that breaks with lexical binding (without unprefixed defvars).
17859 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17861         Fix various compilation warnings in message.el
17863         * lisp/gnus/message.el (message-fix-before-sending): Use
17864         read-multiple-choice instead of gnus-multiple-choice.
17865         (mm-util): Require.
17866         (rfc2047): Require.
17867         (message-remove-blank-cited-lines): Use message instead of
17868         gnus-message.
17869         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
17871 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17873         Silence compilation warning in mm-view
17875         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
17876         compilation warning.
17878 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17880         Fix epg-related compilation warnings in mml-sec
17882         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
17883         library.
17885 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17887         rmail-dont-reply-to-names is obsolete
17889         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
17890         the obsolete `rmail-dont-reply-to-names' variable.
17892 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17894         Partially revert the defmethod->cl-defmethod change in registry.el
17896         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
17897         since cl-defmethod doesn't work with :after.
17898         (initialize-instance): Ditto, but with :before.
17900 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17902         Avoid obsolete function in plstore
17904         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
17905         instead of the obsolete epg-context-set-armor.
17907 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17909         Use cl-defmethod in registry.el
17911         * lisp/gnus/registry.el: Use cl-defmethod instead of the
17912         obsolete defmethod.
17914 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17916         Make sieve-manage require sasl
17918         * lisp/gnus/sieve-manage.el: Fix compilation warning by
17919         requiring sasl.
17921 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17923         Avoid defvarring prefix-less variable
17925         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
17927 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17929         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
17931 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17933         Don't use the obsolete char-valid-p function
17935         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
17936         obsolete char-valid-p function.
17938 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17940         Fix missed translation in a previous commit
17942         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
17943         translation of mailcap-delete-duplicates.
17945 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17947         Avoid using mm-make-temp-file
17949         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
17951         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
17953         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
17955 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17957         Fix compilation warning in gnus-start
17959         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
17960         mm-make-temp-file.
17962 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17964         Avoid the obsoleted defmethod
17966         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
17967         defmethod.
17969 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17971         Avoid defvarring prefix-less variables
17973         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
17974         don't need to `defvar' the short variables to allow `eval' to
17975         use them.
17977 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17979         nnweb doesn't need unibyte buffers
17981         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
17982         (nnweb-read-overview, nnweb-request-article)
17983         (nnweb-google-reference): Unibyte buffers are not needed here.
17985 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17987         Encode before sending from nnspool
17989         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
17990         before sending it to the news server.
17992 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17994         nnrss buffers don't have to be unibyte
17996         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
17997         to be unibyte just to receive data, I think.
17999 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18001         Don't use mm-with-unibyte-current-buffer in mml2015
18003         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
18004         mm-with-unibyte-current-buffer.
18006 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18008         Don't use mm-with-unibyte-current in mml1991
18010         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
18011         mm-with-unibyte-current.
18013 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18015         Don't use mm-with-unibyte-current in mml1991
18017         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
18018         mm-with-unibyte-current.
18020 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18022         Don't use mm-with-unibyte-buffer in utf7
18024         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
18025         mm-with-unibyte-buffer.
18027 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18029         Remove XEmacs compat code from Gnus helper libraries
18031         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
18033         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
18035         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
18037         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
18039 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18041         Remove XEmacs compat code from Gnus backends
18043         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
18044         (mm-inline-image): Rename from mm-inline-image-emacs.
18046         * lisp/gnus/mml.el: Remove XEmacs compat code.
18048         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
18050         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
18051         XEmacs compat code.
18053         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
18055         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
18056         XEmacs compat code.
18058         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
18060         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
18062         * lisp/gnus/nntp.el: Remove XEmacs compat code.
18064 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18066         Remove XEmacs compat functions from mm-util.el
18068         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
18069         (mm-decode-coding-string, mm-encode-coding-string)
18070         (mm-decode-coding-region, mm-encode-coding-region): Remove.
18071         (mm-string-to-multibyte): Remove.
18072         (mm-char-or-char-int-p): Remove.
18073         (mm-ucs-to-char): Remove compat versions of the function.
18074         (mm-read-coding-system): Remove.
18075         (mm-coding-system-p): Remove compat code.
18076         (mm-enrich-utf-8-by-mule-ucs): Remove.
18077         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
18078         (mm-delete-duplicates): Remove.
18079         (mm-multibyte-p): Remove compat versions.
18080         (mm-xemacs-find-mime-charset-1): Remove.
18081         (mm-xemacs-find-mime-charset): Remove.
18082         (mm-make-temp-file): Made obsolete.
18083         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
18085 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18087         Remove Message and mm-decode XEmacs compat code
18089         * lisp/gnus/message.el: Remove XEmacs compat code.
18091         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
18093         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
18095 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18097         Remove som XEmacs compat code from message.el
18099         * lisp/gnus/message.el: Remove some XEmacs compat code.
18101 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18103         Remove XEmacs compat code from ietf-drums.el
18105         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
18106         XEmacs compat.
18108 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18110         Remove XEmacs compat code from gravatar.el
18112         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
18113         gravatar.el.
18115 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18117         Remove more XEmacs compat code from Gnus
18119         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
18120         (gnus-timer--function): Remove.
18122         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
18123         19.2 compat.
18125         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
18127 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18129         Remove more XEmacs compat functions from gnus-util.el
18131         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
18132         (gnus-get-display-table): Remove.
18133         (gnus-format-message): Remove.
18135 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18137         Remove more XEmacs compat functions from Gnus
18139         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
18140         (gnus-previous-char-property-change): Remove.
18141         (gnus-graphic-display-p): Remove.
18142         (gnus-select-frame-set-input-focus): Remove.
18144 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18146         Remove more XEmacs compat code from gnus-util
18148         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
18149         all its usages).
18150         (gnus-invisible-p): Remove.
18152 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18154         Remove gnus-make-local-hook
18156         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
18157         all its usages).
18159 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18161         gnus-replace-in-string -> replace-regexp-in-string
18163         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
18164         obsolete.  Transform all usages of it into
18165         replace-regexp-in-string.
18167         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
18169 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18171         Remove Gnus XEmacs compat
18173         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
18174         about code that doesn't work in XEmacs.
18176         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
18178         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
18180 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18182         Remove compat functions in gnus-spec.el
18184         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
18185         (gnus-substring-function): Remove.
18186         (gnus-use-correct-string-widths): Remove.
18187         (gnus-make-format-preserve-properties): Remove.
18188         (gnus-xmas-format): Remove.
18190         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
18192 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18194         Remove Gnus XEmacs compat functions
18196         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
18198         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
18200         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
18202 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18204         Remove Gnus XEmacs compatibility
18206         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
18207         XEmacs compat.
18209         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
18211         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
18213         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
18214         XEmacs compat.
18216         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
18218         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
18220         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
18222         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
18224 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18226         Don't use image-map if it isn't defined
18228         * lisp/net/shr.el (shr-image-map): Only use image-map as a
18229         parent if it's defined (bug#22614).
18231 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18233         Check for MagickAutoOrientImage
18235         * configure.ac: Check for MagickAutoOrientImage.
18237         * src/image.c (imagemagick_load_image): Don't use
18238         MagickAutoOrientImage unless it's available.
18240 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18242         Document EXIF image rotation
18244         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
18246 2016-02-10  Dima Kogan  <dima@secretsauce.net>
18248         Support integer image rotation and respect EXIF rotations
18250         * src/image.c (imagemagick_load_image): Allow integer rotations in
18251         addition to floating point rotations (bug#22591).
18252         * src/image.c (imagemagick_load_image): Images that have an
18253         orientation given in EXIF and have no explicit :rotation tag are now
18254         pre-rotated.  All information such as width/height is reported for the
18255         rotated image.
18257 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
18259         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
18261 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18263         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
18265 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18267         Remove compat code from gnus-bookmark.el
18269         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
18270         (gnus-bookmark-remove-properties): Remove.
18272 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18274         Remove XEmacs compat code from gnus-a*.el
18276         * lisp/gnus/gnus-agent.el: Remove compat code.
18278         * lisp/gnus/gnus-art.el: Remove compat code.
18280         * lisp/gnus/gnus-async.el: Remove compat code.
18282 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18284         Remove gmm compat functions
18286         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
18287         (gmm-write-region): Remove.
18288         (gmm-called-interactively-p): Remove.
18290 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18292         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
18294 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18296         Remove compat code from compface.el
18298         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
18300 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18302         Remove the now empty gnus-ems.el and references to it
18304 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18306         Remove Gnus compat names for mouse bindings
18308         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
18309         (gnus-down-mouse-2): Remove.
18310         (gnus-down-mouse-3): Remove.
18312 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18314         Drop Gnus compat functions
18316         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
18318         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
18320         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
18322 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18324         Get rid of gnus-ems-redefine
18326         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
18328 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18330         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
18332 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18334         Remove Gnus compat code
18336         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
18337         transitional code from ten years ago.
18339 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18341         Allow interactively scaling past :max-width etc
18343         * lisp/image.el (image--current-scaling)
18344         (image--image-without-parameters): New functions.
18345         (image--change-size): Use them to allow changing the size of a
18346         image even if it has :width/:max-width (etc.) already set.
18348 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18350         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
18352 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18354         Allow accessing the image commands via shr
18356         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
18357         accessing the image commands.
18359         * lisp/net/shr.el (shr-image-map): New map used for images.
18360         (shr-urlify): Don't overwrite image maps when applying URL maps.
18362 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18364         Use a sparse image keymap
18366         * lisp/image.el (image-map): Use a sparse keymap.
18368 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18370         Put a keymap on images created with insert-image and friends
18372         * lisp/image.el (image-save): New command.
18373         (image-rotate): Ditto.
18374         (image-map): New keymap.
18375         (insert-image): Put the image-map on all images.
18376         (insert-sliced-image): Ditto.
18377         * doc/lispref/display.texi (Showing Images): Document the
18378         image map.
18380 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18382         Fix some folding issues in read-multiple-choice
18384         * lisp/subr.el (read-multiple-choice): Fix folding when you
18385         have many items.
18387 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18389         Fix typo in last checkin
18391 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18393         Remove Gnus compat functions
18395         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
18396         (gnus-region-active-p, gnus-select-lowest-window)
18397         (gnus-summary-display-table, gnus-max-width-function): Remove
18398         compat functions.
18400 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18402         Move non-compat Gnus functions to gnus-util.el
18404         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
18405         (gnus-create-image, gnus-image-type-available-p): Move here
18406         from gnus-ems.el, since these aren't compat functions.
18408 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18410         Omit valloc decl if redundant
18412         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
18413         to pacify --enable-gcc-warnings.
18415 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
18417         Restore the calloc family.
18419         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
18420         They were lost in a4817d8 but calloc is still (marginally) used in
18421         code statically liked with emacs, so hybrid_calloc is needed.
18422         Also, in the non-hybrid case, we can't get rid of calloc anyway as
18423         other libraries liked with emacs may need it.
18424         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
18426 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18428         Remove some Gnus compat functions
18430         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
18431         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
18432         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
18434 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18436         -
18438         -
18440 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18442         Merge from origin/emacs-25
18444         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
18445         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
18446         51c77a2 Display non-ASCII group names better in prompts
18447         f93d669 Default to gpg2 instead of gpg
18449 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18451         Merge from origin/emacs-25
18453         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
18454         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
18455         3db6adb * lisp/isearch.el (search-default-mode)
18456         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
18457         c77ffc8 Use monitor's resolution for positioning tooltips
18458         49e5749 Fix file-notify-test on MS-Windows
18459         be1d874 Fix issues found by auditing w32notify code
18460         87ae218 Extend etags Ruby support for accessors
18461         aa35257 Update publicsuffix.txt.
18462         6816bff Ensure that Gnus dribble handling allows removing entries
18463         691feae Be consistent when using encoded strings in nnimap data
18464         3ed423b Display the decoded Gnus group name
18465         5428b5b Use completion-ignore-case instead of defining command
18467 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18469         Merge from origin/emacs-25
18471         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18472         d333716 ; * etc/NEWS: Expand news entry for scss-mode
18473         c32c16f ; Better document changes in ls-lisp default behavior
18474         dc6eed2 Fix doc string of tls-program
18476 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18478         Merge from origin/emacs-25
18480         2c117fc * etc/NEWS: Document new mpc.el features
18481         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
18482         9dfece1 Correctly fontify C++ initializations which "look like" functions.
18483         4485222 Improve newsticker-treeview-selection-face
18484         4236944 Minor fix in tagging Ruby accessors by etags
18485         35fc77d Spelling fixes
18486         3dda110 Remove 'def X' from the example
18488 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
18490         Fix network-stream-tests on MS-Windows
18492         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
18493         Skip if local sockets are not supported.
18495 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
18497         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
18499 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
18501         Disable 'timer-list'
18503         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
18504         command.
18506 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18508         Avoid aligned_alloc static/extern collision
18510         * src/alloc.c (aligned_alloc): Define to private name when a
18511         static function, to avoid collision with lisp.h extern decl.
18512         Reported by John Yates in:
18513         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
18515 2016-02-08  David Edmondson  <dme@dme.org>
18517         src/process.c Correctly convert AF_INET6 addresses
18519         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
18520         converted to a list of 16 bit quantities by
18521         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
18522         same scheme rather than expecting a (longer) list of 8 bit
18523         quantities.
18525 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
18527         Make `message-beginning-of-line' aware of folded headers
18529         * lisp/gnus/message.pl (message-beginning-of-header): New function which
18530         moves point to the beginning of a mail header.  The function is aware of
18531         folded headers and with non-nil argument looks for the true beginning of
18532         a header while with nil argument moves to the indented text of header's
18533         value.
18534         (message-beginning-of-line): Function is now aware of folded headers and
18535         either moves point to the indention of a header or, in visual-line-mode,
18536         searches for the beginning of the header.
18538 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
18540         Optimise ‘point in message header’ check
18542         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
18543         regular expression matches with a single bound string match thus
18544         reducing amount of work the function is doing.
18546 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18548         Make the `R' command get the correct relative <img>s
18550         * lisp/net/eww.el (eww-readable): Preserve the base URL so
18551         that image expansions are fetched from the right place (bug#22605).
18553 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18555         Add a mode to list and cancel timers
18557         * doc/lispref/os.texi (Timers): Menton `timer-list'.
18559         * lisp/emacs-lisp/timer-list.el: New file.
18561 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18563         Add new commands to allow changing the size of images
18565         * lisp/image.el (image-increase-size, image-decrease-size):
18566         New commands.
18567         (image-change-size): New function.
18569 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18571         Allow the image scale to be a floating point number
18573         * src/image.c (compute_image_size): The scale can be a
18574         floating point number.
18576 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18578         Add an IPv6 test
18580         * test/lisp/net/network-stream-tests.el
18581         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
18583 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18585         Use gnutls-serv instead of openssh
18587         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
18588         gnutls-serv instead of openssh.
18590 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18592         Skip TLS tests if we don't have openssl
18594         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
18595         TLS tests if we don't have openssl and GnuTLS.
18597 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18599         Add an IPv6 test
18601         * test/lisp/net/network-stream-tests.el
18602         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
18604 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18606         Use gnutls-serv instead of openssh
18608         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
18609         gnutls-serv instead of openssh.
18611 2016-02-08  Daniel Colascione  <dancol@dancol.org>
18613         Performance improvements for vc-hg
18615         Teach vc-hg how to read some Mercurial internal data structures,
18616         allowing us to avoid the need to run hg status -A, which is very slow
18617         for large repositories.  Fall back to running hg if anything looks
18618         funny.  vc-hg now puts the _working directory_ revision in the
18619         modeline instead of the file revision, which greatly improves
18620         performance and which allows us to again skip running hg in the case
18621         that we have an active bookmark.
18623         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
18624         (vc-hg-symbolic-revision-styles)
18625         (vc-hg-use-file-version-for-mode-line-version)
18626         (vc-hg-parse-hg-data-structures): New user preferences
18627         (vc-hg--active-bookmark-internal, vc-hg--run-log)
18628         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
18629         (vc-hg--read-u8, vc-hg--read-u32-be)
18630         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
18631         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
18632         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
18633         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
18634         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
18635         (vc-hg--ignore-patterns-valid-p)
18636         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
18637         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
18638         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
18639         (vc-hg-state-fast): New functions.
18640         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
18641         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
18642         (vc-hg--dirstate-scan-cache): New internal variables.
18643         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
18644         before updating modeline.
18646 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18648         Skip TLS tests if we don't have openssl
18650         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
18651         TLS tests if we don't have openssl and GnuTLS.
18653 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18655         Automatically scale images up on high-density screens
18657         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
18658         (Defining Images): Mention image-scaling-factor.
18660         * lisp/image.el (image-compute-scaling-factor): New function
18661         (bug#22172).
18662         (create-image): Use it.
18663         (image-scaling-factor): New variable.
18665         * src/image.c (compute_image_size): Take :scale into account.
18667 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18669         Ensure progress when fetching from the queue
18671         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
18672         that we have progress when fetching queued requests (bug#22576).
18674 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18676         Make mail-extract-address-components return the user name more
18678         * lisp/mail/mail-extr.el (mail-extract-address-components):
18679         Return the name even if it's the same as the mailbox name (if
18680         `mail-extr-ignore-single-names' isn't set) (bug#22594).
18682 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18684         Message no longer warns about unknown top level domains
18686 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
18688         Add tests for url-auth
18690         * test/lisp/url/url-auth-tests.el: New file.
18692 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18694         Add a TLS connection test
18696         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
18697         a TLS connection test.
18699 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18701         Add more network tests
18703         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
18704         New test.
18706 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18708         Add network tests
18710         * test/lisp/net/network-stream-tests.el: New suite of network tests.
18712 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18714         Add a TLS connection test
18716         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
18717         a TLS connection test.
18719 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18721         Add more network tests
18723         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
18724         New test.
18726 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18728         Add network tests
18730         * test/lisp/net/network-stream-tests.el: New suite of network tests.
18732 2016-02-07  Rasmus Pank Roulund  <rasmus@gmx.us>
18734         Allow various Gnus and Message address variables to be functions
18736         * doc/misc/gnus.texi (To From Newsgroups):
18737         gnus-ignored-from-addresses can be a function.
18739         * doc/misc/message.texi (Wide Reply):
18740         message-dont-reply-to-names can be a function.
18742         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
18743         message-alternative-emails can be a function.
18745         * lisp/gnus/gnus-notifications.el (gnus-notifications):
18746         message-alternative-emails can be a function (bug#22315).
18748         * lisp/gnus/gnus-sum.el
18749         (gnus-summary-from-or-to-or-newsgroups):
18750         gnus-ignored-from-addresses can be a function (bug#22315).
18752 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18754         Fix typo in Gnus regexp
18756         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
18757         typo in last change to this regexp (bug#22592).
18759 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18761         Port to FreeBSD x86
18763         Reported by Herbert J. Skuhra in:
18764         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
18765         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
18766         since malloc always returns a multiple of 8 in FreeBSD.
18768 2016-02-07  Alan Mackenzie  <acm@muc.de>
18770         On leaving CC Mode, clean up by removing character properties.
18772         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
18773         all instances of the text properties/extents category, syntax-table,
18774         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
18776 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
18778         message-valid-fqdn-regexp no longer exists
18780         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
18781         the no-longer-existing message-valid-fqdn-regexp variable.
18783 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
18785         Remove message-valid-fqdn-regexp, since it changes too much now
18787         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
18788         (message-bogus-recipient-p): Don't use it any more.
18789         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
18791 2016-02-06  Paul van der Walt  <paul@denknerd.org>
18793         Match "Re :" as a "Re:" prefix
18795         * lisp/gnus/message.el (message-subject-re-regexp): Also match
18796         "Re :" as a "Re:" prefix (commonly used in France).
18798 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
18800         lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
18802         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
18804 2016-02-06  David Edmondson  <dme@dme.org>
18806         src/process.c Correctly convert AF_INET6 addresses
18808         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
18809         converted to a list of 16 bit quantities by
18810         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
18811         same scheme rather than expecting a (longer) list of 8 bit
18812         quantities.
18814 2016-02-05  Martin Jesper Low Madsen  <martin@martinjlowm.dk>
18816         Search for host/port combinations in auth-source on OS X
18818         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
18819         Search for all host/port (or protocol) combinations for a match in
18820         the OS X keychain.
18822 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18824         Remove nonsensical setting of gnus-newsgroup-unseen
18826         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
18827         setting of gnus-newsgroup-unseen.
18829 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18831         Use underline on all terminals that support it
18833         * lisp/subr.el (read-multiple-choice): Use
18834         display-supports-face-attributes-p instead of
18835         display-graphic-p to determine whether we can use underlining.
18837 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18839         Make the nsm query say what it did after the user interaction
18841         * lisp/net/nsm.el (nsm-query): Issue a message about
18842         aborting/accepting messages (suggested by N. Jackson)
18843         (bug#22531).
18845 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18847         Omit XLI (init) == 0 optimization in make-vector
18849         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
18850         == 0) case, as this optimization is probably not worth the hassle.
18851         Just for the record, the test for that case could have been
18852         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
18853         assuming the typical platform with no padding bits and where
18854         conversion to int omits the most significant bits.
18856 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18858         * autogen.sh: Port to dash (Bug#22556).
18860 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
18862         Minor cleanup for Tramp "doas".
18864         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
18866         * etc/NEWS: Add Tramp connection method "doas".
18868         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
18869         Add `tramp-remote-shell-args'.
18871 2016-02-05  Xi Lu  <lx@shellcodes.org>
18873         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
18875         (tramp-default-user-alist): Add rule for "doas".
18876         (top): Completion function for "doas" is
18877         `tramp-completion-function-alist-su'.
18879 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18881         Restore the window configuration
18883         * lisp/net/nsm.el (nsm-query-user): Restore the window
18884         configuration (bug#22532).
18886 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18888         Use an X popup in read-multiple-choice if running from a mouse command
18890         * lisp/subr.el (read-multiple-choice): Use an X popup if
18891         called from a mouse action (bug#19368).
18893 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18895         Display cursor in echo area when prompting
18897         * lisp/subr.el (read-multiple-choice): Display the cursor in
18898         the echo area when prompting (bug#19368).
18900 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18902         Make NSM prompting clearer
18904         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
18905         to prompt in a nicer way (bug#19368).
18907 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18909         Underline read-multiple-choice-face
18911         * lisp/faces.el (read-multiple-choice-face): Also underline
18912         the choice.
18914 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18916         Make url.el use async DNS
18918         * lisp/url/url-gw.el (url-open-stream): Use non-blocking DNS.
18920         * src/process.c (syms_of_process): Add a `dns' subfeature for
18921         make-network-process.
18923 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18925         Only do async DNS if requested with :nowait 'dns
18927         * doc/lispref/processes.texi (Network Processes): Mention the
18928         dns value of :nowait.
18930         * src/process.c (Fmake_network_process): Only do async DNS if
18931         :nowait is `dns'.
18933 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18935         Add sanity check for checking async DNS
18937         * src/process.c (check_for_dns): Disregard processes that have
18938         already been killed.
18940 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18942         Make the read-multiple-choice prompt a bit prettier
18944         * doc/lispref/commands.texi (Reading One Event): Mention
18945         read-multiple-choice-face.
18947         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
18948         prettier.
18950 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18952         Prefer memcpy and memset to doing it by hand
18954         * src/alloc.c (Fmake_vector):
18955         * src/ccl.c (setup_ccl_program):
18956         Use memset to clear array.
18957         * src/alloc.c (Fvector, Fmake_byte_code):
18958         * src/charset.c (Fdefine_charset_internal):
18959         Use memcpy to copy array.
18961 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
18963         Do not ignore redirections of 301, 302 and 307 status codes
18965         The current version of HTTP/1.1 (RFC 7231) no longer requires
18966         confirmation on 301, 302 or 307 status codes, therefore we do not have
18967         to ignore redirects for other requests than GET and HEAD.
18969         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
18970         and 307 redirects for other requests than GET and HEAD.
18972 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
18974         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
18976 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18978         Simplify USE_ALIGNED_ALLOC
18980         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
18981         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
18983 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
18985         Honor docstring of gnus-group-get-new-news
18987         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
18988         is t, but non-numeric, unconditionally consider all groups to need
18989         updating.
18991 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18993         New function read-multiple-choice
18995         * doc/lispref/commands.texi (Reading One Event): Document
18996         read-multiple-choice.
18998         * lisp/faces.el (read-multiple-choice-face): New face.
19000         * lisp/subr.el (read-multiple-choice): New function.
19002 2016-02-03  John Wiegley  <johnw@newartisans.com>
19004         Merge from origin/emacs-25
19006         ee73997 Make erc work better when encountering unknown prefix chars
19007         b99141d Make erc completion case-insensitive again
19008         66c4620 Make complection in erc use consistent casing
19009         8c562b2 Make /QUIT in erc more robust
19010         d93d2c5 Make tracking faces in Emacs work more reliably
19011         af6ab7e Make shr not bug out on images on non-graphical displays
19012         3311f40 Fix bookmark display widths
19013         d90ab1e Fix typo in eww-make-unique-file-name
19014         7f81825 Make it possible to TAB to input fields
19015         a43a1dc Insert complete alt texts when images are disabled
19016         56ed4e1 Allow eww text fields to grow
19017         66b315c Make erc work when subword-mode is switched on
19018         255b68f Fix IMAP doc example
19019         91557f5 Quoting fixes in doc strings and diagnostics
19020         2c0dc9f Fix warning message in hack-local-variables
19021         504696d Etags: yet another improvement in Ruby tags
19022         8784ebf Fix x-popup-menu on TTYs without a mouse
19023         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
19024                 pcase macro
19025         6191003 Use pop-to-buffer-same-window in eww
19026         fe321fd * autogen.sh: Revert all recent changes.
19027         74ebd4a * make-dist: Updates related to nt/.
19028         737193a * make-dist: Add modules/.
19029         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
19030         a4278e2 Fix failure to compile ns-win.el in parallel builds
19031         860da4d Fix names of tags generated for Ruby accessors
19032         f6213ce Fix file-name recognition in 'etags'
19033         e42e662 Change Ruby file names and extensions recognized by 'etags'
19034         58bfb6a More improvements for Ruby support in 'etags'
19035         c04e911 Add --git-config option to autogen.sh
19036         5713466 Fix editing undo changes in eww fields
19037         51362d6 Allow the user more control of popping up the eww window
19038         ee0fbd8 Make eww-browse-url with new-window parameter work again
19039         9c3142d Clean up eww code slightly
19040         cb035f3 Don't insert nil faces in shr
19041         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
19042         93f2153 Improve the custom type of some user options.
19043         9f60d7e Mark some risky calendar variables.
19044         1d07dcd Highlight two additional SCSS keywords
19045         ee8b466 Recommend enabling integrity-checking in git
19046         e639e10 Some corrections in Elisp manual
19047         d766ca8 Chatter when autogen.sh changes Git configuration
19048         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
19049         43cb9f8 Omit unnecessary history from Lisp intro
19050         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
19051         c90e1b4 Improve elisp “Security Considerations” doc
19052         cedd7ca autogen.sh now arranges for git to check hashes
19053         86ce76b ; Fix ChangeLog.2 commit ID.
19054         7b1d2b1 Fix (c & 040) typo in emergency escapes
19055         a8273da Fix display of overlay strings with 'display' and 'box' property
19056         fc48106 Fix imap-starttls-open
19057         cdecbed Fix return value of imap-starttls-open
19058         20c7e34 ; * etc/NEWS: Fix renamed command name
19059         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
19060         b250d29 Spelling fix
19061         b920a0e Spelling fixes
19062         93b144b Pacify GCC on C library without glibc API
19064 2016-02-03  John Wiegley  <johnw@newartisans.com>
19066         Merge from origin/emacs-25
19068         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
19069                 priority of non-free Chrome.
19070         0fac75f Improve the custom type of some user options.
19071         2df0e04 Highlight CSS variables with variable name face
19072         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
19073                 user-serviceable.
19074         2a5233c Mark some user options that can get evalled as risky.
19075         39b166f Disable DebPrint in sys_read on MS-Windows
19076         9fd0189 ;Fix ChangeLog entry
19077         4bb7233 Fix typos in Introduction to Emacs Lisp manual
19079 2016-02-03  Mark Oteiza  <mvoteiza@udel.edu>
19081         Add a new command to switch between erc buffers
19083         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
19084         * etc/NEWS: Mention new command
19085         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
19086         (eww-mode-map): Add menu item
19087         (eww-switch-to-buffer): New command
19089 2016-02-03  David Edmondson  <dme@dme.org>
19091         Make erc work better when encountering unknown prefix chars
19093         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
19094         instead of erroring out on unknown prefix chars (bug#22380).
19096 2016-02-03  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
19098         Allow sending empty hidden values in eww
19100         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
19101         values (bug#22388).
19103 2016-02-03  Andrew Hyatt  <ahyatt@gmail.com>
19105         Remove packages obsoleted before Emacs 24.
19107         In accordance with the policy discussed in the emacs-devel list,
19108         packages that have been obsoleted for a full major release cycle are up
19109         for deletion.
19111         This removes almost all packages that are now eligible for deletion,
19112         with the exception of "cl-compat", which seems it is likely to still be
19113         used, and "optional", which offers some functionality that doesn't have
19114         a replacement yet.
19116 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
19118         Mention context when resume from emergency escape
19120         That way, if the user has been doing something else for a while,
19121         they are reminded of the situation when restarting Emacs,
19122         and are more likely to understand the two questions.
19123         * doc/emacs/trouble.texi (Emergency Escape): Document this.
19124         * src/keyboard.c (handle_interrupt): Implement this.
19126 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
19128         Port aligned_alloc decl to Cygwin.
19130         Problem reported by Ken Brown (Bug#22522#38).
19131         * configure.ac (aligned_alloc): Check for decl too.
19132         * src/lisp.h (aligned_alloc): Declare if not already declared.
19134 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19136         autogen.sh now configures git only on request
19138         * autogen.sh (do_autoconf, do_git): New vars.
19139         Support new arguments --help, all, autoconf, git.
19140         By default, just do autoconf-related configuration, not git.
19141         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
19142         If GNU cp is available, use it to backup .git/config before
19143         changing it.  When configuring git, chatter about what is being
19144         done, and configure git to check hashes.  Avoid some duplicate
19145         file name specification when creating git hooks.
19147         * GNUmakefile (ALL_IF_GIT): New macro.
19148         (configure): Use it.
19149         * INSTALL.REPO: Suggest './autogen.sh all'.
19151 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
19153         Doc fixes and refactorings based on comments from Eli Zaretskii
19155         * doc/lispref/processes.texi (Network Processes): Clarify the
19156         meaning of :tls-parameters.
19158         * lisp/net/gnutls.el (open-gnutls-stream): Clarify :nowait.
19160         * lisp/net/gnutls.el (gnutls-boot-parameters): Factor out into
19161         own function.
19162         (gnutls-negotiate): Use it.
19163         (open-gnutls-stream): Ditto.
19165         * src/eval.c (vformat_string): Refactor out the printing bits
19166         from verror.
19167         (verror): Use it.
19169         * src/gnutls.c (boot_error): Mark failed processes with the
19170         real error message.
19172         * src/lisp.h: Declare vformat_string.
19174 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19176         Build with C11 if available
19178         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
19179         * m4/std-gnu11.m4: New file, from gnulib.
19180         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19182 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19184         Update gnulib copy
19186         * doc/misc/texinfo.tex: Copy from gnulib.
19188 2016-02-02  Glenn Morris  <rgm@gnu.org>
19190         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
19191         Doc tweaks.
19193 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19195         Port better to platforms lacking aligned_alloc
19197         Problem reported by Ken Brown (Bug#22522).
19198         * src/lisp.h (hybrid_aligned_alloc)
19199         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
19201 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19203         Port malloc.h hygiene fix to LTO
19205         * src/alloc.c (__malloc_initialize_hook):
19206         Make it externally visible (Bug#22522).
19208 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
19210         Build fix for --enable-check-lisp-object-type
19212         * process.c (check_for_dns): Type fix reported by YAMAMOTO
19213         Mitsuharu.
19215 2016-02-01  Glenn Morris  <rgm@gnu.org>
19217         Make find-change-log prefer a VCS root, if no ChangeLog exists.
19219         * lisp/vc/add-log.el (change-log-directory-files): New option.
19220         (find-change-log): Respect change-log-directory-files.
19221         * doc/emacs/maintaining.texi (Change Log Commands):
19222         Mention change-log-directory-files.
19224 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
19226         Boot parameter check fix
19228         * process.c (send_process): Fix test for boot parameters noted
19229         by Andy Moreton.
19231 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
19233         Double static heap size.
19235         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
19236         small on FreeBSD (Bug#22086).
19238 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
19240         Fix Bug#20821
19242         * lisp/net/tramp.el (tramp-file-name-handler):
19243         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
19244         Use `tramp-drop-volume-letter'.  (Bug#20821)
19246 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19248         Style fix
19250 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19252         Return the correct server port number
19254         * process.c (connect_network_socket): Return the correct
19255         server port number.
19257 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19259         Fix autoconf test for getaddrinfo_a
19261         * configure.ac: Make the test for getaddrinfo_a work.
19263 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19265         Better async error reporting
19267         * process.c (connect_network_socket): Mark failed processes
19268         with a better error message.
19269         (check_for_dns): Ditto.
19271 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19273         Clarify :tls-parameters.
19275 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19277         Always boot TLS if given parameters
19279         * src/process.c (connect_network_socket): If we have the TLS
19280         parameters, then boot the socket.
19282 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19284         Add documentation for :tls-parameters
19286         * doc/lispref/processes.texi (Network Processes): Mention
19287         :tls-parameters.
19289         * src/process.c (Fmake_network_process): Document the
19290         :tls-parameters parameter.
19292 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19294         Build fix for glibc systems.
19296 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19298         Make network connections work again on non-glibc systems
19300         * lisp/net/gnutls.el (open-gnutls-stream): Pass the TLS
19301         keywords in directly so that they can be used when doing
19302         synchronous DNS on non-synchronous connections.
19304         * lisp/net/network-stream.el (open-network-stream): Allow
19305         passing in the TLS parameters directly.
19307         * src/process.c (conv_numerical_to_lisp): New function to convert
19308         numerical addresses to Lisp.
19309         (Fmake_network_process): Rework the non-HAVE_ADDRINFO code
19310         paths so that they work again.
19311         (syms_of_process): Build fix for non-glibc systems.
19313 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19315         Windows build fix
19317         * process.c (Fmake_network_process): Build fix for systems
19318         without local sockets.
19320 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19322         Use XCAR/XCDR instead of Fcar etc
19324 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19326         Fix GC problem in async TLS connection
19328         * process.h: All Lisp_Object slots have to come first,
19329         otherwise they won't be protected from gc.
19331 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19333         Further TLS async work
19335         * gnutls.c (boot_error): New function to either signal an
19336         error or return an error code.
19337         (Fgnutls_boot): Don't signal errors when running asynchronously.
19339         * process.h (pset_status): Move here from process.c to be
19340         able to use from gnutls.c.
19342         * process.c (connect_network_socket): Do the TLS boot here
19343         when running asynchronously.
19344         (wait_reading_process_output): Rework the dns_processes
19345         handling for more safety.
19347 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19349         Clean up dead code
19351         * lisp/net/gnutls.el (gnutls-async-sentinel): Remove.
19353 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
19355         Add ability to give rcirc servers an alias name
19357         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
19358         customization option.
19359         (rcirc, rcirc-connect): Take server alias into account.
19361 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
19363         Port new hybrid malloc to FreeBSD
19365         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
19366         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
19367         (__morecore) [HYBRID_MALLOC]: Define in this case too.
19369 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
19371         * configure.ac: Stop using mmap for buffers for FreeBSD.
19373 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
19375         Merge changes from Tramp repository
19377         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
19378         No EXTRA_OPTS needed.
19380         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
19381         branch, especially for @trampfn{}.
19382         (Top): Move @ifnottex down.
19383         (History): XEmacs support has been removed.
19384         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
19385         (Auto-save and Backup): Use both syntax versions.
19386         (File name Syntax): Remark on IPv6 adresses is valid for
19387         unified syntax only.
19389         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
19391 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19393         Spelling fixes
19395 2016-01-30  Glenn Morris  <rgm@gnu.org>
19397         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
19399 2016-01-30  Matthew Carter  <m@ahungry.com>
19401         Quote table names for postgres listings (sql-mode)
19403         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
19404           unquoted table names to the completion list.
19406 2016-01-30  Glenn Morris  <rgm@gnu.org>
19408         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
19410         * lisp/vc/smerge-mode.el (smerge-diff-switches)
19411         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
19412         (smerge-upper, smerge-upper-face, smerge-keep-upper)
19413         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
19414         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
19415         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
19416         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
19417         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
19418         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
19419         Update all uses.
19420         (smerge-basic-map): Add "l" and "u" bindings.
19421         (smerge-mode-menu): Update menu bindings for renaming.
19422         (smerge-font-lock-keywords): Update face names.
19423         (smerge-match-names): Update names.
19424         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
19425         (smerge-match-conflict, smerge-ediff): Rename local variables.
19426         (smerge-makeup-conflict): Relabel markers.
19427         (smerge-parsep-re): Use renamed variables.
19429 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19431         Port recent my_edata change to MS-Windows
19433         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
19435 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19437         Rework the mechanisms for async GnuTLS connections
19439         * lisp/net/gnutls.el (open-gnutls-stream): Compute the
19440         gnutls-boot parameters and pass them to the process object.
19441         (gnutls-negotiate): New parameter :return-keywords that won't
19442         connect to anything, just compute the keywords.
19444         * lisp/url/url-http.el (url-http): Revert async TLS sentinel
19445         hack, which is no longer necessary.
19447         * src/gnutls.c (Fgnutls_asynchronous_parameters): Rename from
19448         gnutls-mark-process.
19450         * src/process.c (connect_network_socket): If we're connecting to
19451         an asynchronous TLS socket, complete the GnuTLS boot sequence here.
19453         * src/process.h: New parameter gnutls_async_parameters.
19455 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19457         Fix segfault from double free
19459         * process.c (check_for_dns): Protect against double free
19460         issues.
19462 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19464         Remove debugging
19466 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19468         Implement asynchronous GnuTLS connections
19470         * doc/misc/emacs-gnutls.texi (Help For Developers): Mention
19471         the nowait parameter.
19473         * lisp/net/gnutls.el (open-gnutls-stream): Allow asynchronous
19474         connections with the new nowait parameter.
19476         * lisp/net/network-stream.el (network-stream-open-tls): Pass
19477         on :nowait to open-gnutls-stream.
19479         * lisp/url/url-http.el (url-http): Don't overwrite the
19480         sentinel created by open-gnutls-stream.
19482         * src/gnutls.c (Fgnutls_mark_process): New function.
19484         * src/process.c (send_process): Don't write to GnuTLS sockets that
19485         haven't been initialised yed.
19487         * src/process.h: New slot gnutls_wait_p.
19489 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19491         Tell Automake the new lib/Makefile.am is OK
19493         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
19495 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19497         Make it easy to override preferred-branch test
19499         * Makefile.in (preferred-branch-is-current):
19500         Rename from emacs-25-branch-is-current.  All uses changed.
19501         (PREFERRED_BRANCH): New macro.
19503 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19505         Shrink static heap a bit
19507         * src/sheap.h: Include lisp.h, for Lisp_Object.
19508         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
19509         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
19510         conservative than the old value.
19511         (Bug#22086)
19513 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19515         Fix extern symbols defined and not used
19517         * src/alloc.c: Always include <signal.h>.
19518         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
19519         Do not define; unused.
19520         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
19521         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
19522         to avoid collision with glibc.  Now static.  All uses changed.
19523         * src/lastfile.c (my_edata): Define only if
19524         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
19525         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
19526         (Bug#22086)
19528 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19530         Build lib/e-*.o only on platforms that need it
19532         * configure.ac (hybrid malloc): Simplify configuration.
19533         (SHEAP_OBJ): Remove; no longer needed.
19534         (HYBRID_MALLOC): New var. Subst it.
19535         (HYBRID_MALLOC_LIB): New Automake conditional.
19536         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
19537         HYBRID_MALLOC_LIB.
19538         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
19539         (MOSTLYCLEANFILES): Add libegnu.a.
19540         * src/Makefile.in (SHEAP_OBJ): Remove.
19541         (HYBRID_MALLOC): New macro.
19542         (base_obj): Use it to conditionally add sheap.o.
19543         (LIBEGNU_ARCHIVE): New macro.
19544         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
19545         All uses of the latter replaced by the former.
19546         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
19547         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
19548         * src/gmalloc.c: Update comment.
19549         * src/lisp.h (aligned_alloc)
19550         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
19551         New decl.
19552         (Bug#22086)
19554 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19556         Include <malloc.h> when advisable
19558         This should help insulate us better from future glibc changes.
19559         It is good hygiene to include .h files for APIs that Emacs uses.
19560         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
19561         * configure.ac: Check for malloc.h.
19562         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
19563         not on DOUG_LEA_MALLOC.
19564         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
19565         Remove decl (now in lisp.h).
19566         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
19567         [emacs]: Include lisp.h.
19568         [HAVE_MALLOC_H]: Include <malloc.h>.
19569         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
19570         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
19571         (__default_morecore):
19572         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
19573         (calloc): Make it clear that the macro should not be used.
19574         Remove unused decl.
19575         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
19576         (__morecore, __default_morecore, __after_morecore_hook)
19577         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
19578         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
19579         Remove later decls.
19580         (gmalloc_hook, gfree_hook, grealloc_hook):
19581         Rename from __malloc_hook, __free_hook, __realloc_hook to
19582         avoid type collision with glibc <malloc.h>.  All uses changed.
19583         (gmalloc_hook):
19584         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
19585         Now static.
19586         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
19587         (__malloc_initialize_hook, __after_morecore_hook):
19588         Declare with types compatible with glibc.
19589         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
19590         Remove.  All uses removed.
19591         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
19592         * src/ralloc.c, src/vm-limit.c:
19593         Simplify includes and include <malloc.h> if available.
19595 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19597         * src/alloc.c: Include "sheap.h".
19599         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
19600         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
19601         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
19602         Declare unconditionally.
19603         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
19604         (unexec): Don’t set or clear bss_sbrk_did_unexec;
19605         the caller now does this.
19606         (Bug#22086)
19608 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19610         Pacify --enable-gcc-warnings when HYBRID_MALLOC
19612         * src/buffer.c (init_buffer):
19613         * src/emacs.c (main):
19614         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
19615         Use emacs_get_current_dir_name, not get_current_dir_name.
19616         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
19617         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
19618         * src/emacs.c: Include "sheap.h".
19619         (report_sheap_usage): Remove decl.
19620         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
19621         Don't assume ptrdiff_t can be printed as int.
19622         * src/gmalloc.c [HYBRID_MALLOC]:
19623         Include "sheap.h" rather than declaring its contents by hand.
19624         (get_current_dir_name, gget_current_dir_name)
19625         (hybrid_get_current_dir_name): Remove.
19626         (emacs_abort): Remove duplicate decl.
19627         (aligned_alloc): Undef, like malloc etc.
19628         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
19629         Make it a bit more efficient.
19630         (malloc_find_object_address): Remove unused decl.
19631         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
19632         (mstats, memory_warnings): Declare only if GC_MCHECK.
19633         * src/lisp.h (emacs_get_current_dir_name):
19634         New decl, replacing get_current_dir_name.
19635         * src/sheap.c: Include sheap.h first.
19636         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
19637         (debug_sheap): Now static.
19638         (bss_sbrk_buffer_end): Remove; no longer used.
19639         (bss_sbrk_ptr): Now static and private.
19640         (bss_sbrk_did_unexec): Now bool.
19641         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
19642         (bss_sbrk): Don't treat request_size 0 as special, since the code
19643         works without this being a special case.
19644         Avoid overflow if request size exceeds INT_MAX.
19645         (report_sheap_usage): Remove; now done in emacs.c.
19646         * src/sheap.h: New file.
19647         * src/sysdep.c (get_current_dir_name): Remove macro.
19648         Include "sheap.h".
19649         (emacs_get_current_dir_name): Rename function from
19650         get_current_dir_name.  Handle HYBRID_MALLOC here;
19651         this is simpler.
19652         (Bug#22086)
19654 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19656         Report static heap usage on non-Cygwin, too
19658         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
19659         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
19660         on platforms other than Cygwin (Bug#22086).
19662 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19664         Pacify GCC on extern decls
19666         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
19667         to pacify recent GCC (Bug#22086).
19669 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19671         Add musl patch to support HYBRID_MALLOC on elf systems
19673         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
19674         (__default_morecore): Here, in particular.
19675         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
19676         New variable SHEAP_OBJ.
19677         * src/Makefile.in: Use it.
19678         (Bug#22086)
19680 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
19682         unexelf.c hook to support HYBRID_MALLOC on ELF
19684         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
19685         Define bss_sbrk_did_unexec (Bug#22086).
19687 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19689         Link temacs with gnulib compiled with -Demacs
19691         This is done to support HYBRID_MALLOC, since some static variables
19692         (e.g., last_environ in putenv.c) hold pointers to memory malloced
19693         before dumping (Bug#22086).
19694         * lib/Makefile.am: Add incantation to install libegnu.a.
19695         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
19696         (temacs$(EXEEXT)): Use it.
19698 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19700         Internal linkage for gmalloc etc. if HYBRID_MALLOC
19702         This avoids clashes with symbols if the after-dump malloc is
19703         derived from Doug Lea's implementation (Bug#22086).
19705         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
19706         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
19707         declarations below to `static' ones.
19708         (aligned_alloc): Declare for !MSDOS as well.
19709         (heapsize, _fraghead): Move resp. copy declaration downwards.
19710         For HYBRID_MALLOC, conditionalize out the other definitions,
19711         since the previous `static' declarations double as tentative
19712         definitions, anyway.
19713         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
19714         (__realloc_hook, __memalign_hook): Conditionalize out.
19715         (cfree, memalign, valloc): Ditto.
19717 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19719         -
19721         -
19723         -
19725 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19727         Merge from origin/emacs-25
19729         3f481ad Rename xref-query-replace to xref-query-replace-in-results
19730         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
19731         2111e0e Comment out next-error-function integration in xref
19732         4e11ad3 Correct a use of "which" in intro.texi
19733         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
19734         76045f7 Don't operate on menu bar of nonexistent frame
19735         c32f3bc Unbreak the GNUstep build.
19737 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19739         -
19741         -
19743 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
19745         Re-enable checks in member, memql, delete to complain about non-lists
19747                 * fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
19749 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19751         Clean up compilation warnings
19753 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19755         Make async resolution more efficient
19757         * process.c (wait_reading_process_output): Use a list of
19758         process objects instead of looping through an array to check
19759         for name resolution.  This should be much faster.
19761 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19763         More async memory leaks
19765         * src/process.c (check_for_dns): Free even more allocated async stuff.
19767 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19769         Compilation for for systems with getaddrinfo_a
19771         * process.c (Fmake_network_process): Make stuff work again on
19772         systems with getaddrinfo_a.
19774 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19776         Save correct server data
19778         * process.c (connect_network_socket): Save the correct contact
19779         info for servers.
19781 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19783         Compilation for for non-GNU systems
19785         * process.c (Fmake_network_process): Make compilation work
19786         again on hosts that don't have getaddrinfo_a.
19788 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19790         Avoid memory leaks in async DNS
19792         * process.c (check_for_dns): Free async DNS resources after
19793         they've been used.
19795 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19797         * process.c (check_for_dns): Free the result data.
19799 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19801         Fix server connections
19803         * process.c (Fmake_network_process): Make creating server
19804         listening ports work again.
19806 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19808         Further make_network_process clean up
19810         * process.c (Fmake_network_process): Remove setting of unused
19811         family variable.
19813 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19815         Clean up GETADDRINFO usage in make-network-process
19817         * process.c (Fmake_network_process): Clean up the GETADDRINFO
19818         handling.
19820 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19822         Implement asynchronous name resolution
19824         * process.c (Fmake_network_process): Do asynchronous DNS
19825         lookups if we have getaddrinfo_a and the user requests :nowait.
19826         (check_for_dns): New function.
19827         (wait_reading_process_output): Check for pending name
19828         resolution in the idle loop.
19830         * process.h: Add structure for async DNS.
19832 2016-01-28  Glenn Morris  <rgm@gnu.org>
19834         Remove some useless-use-of eval.
19836         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
19837         * lisp/gnus/nnrss.el (xml): Simply require it.
19838         (xml-rpc-method-call): Use declare-function.
19840 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19842         Fix memory leak
19844         * process.c (connect_network_socket): Free previous sockaddr
19845         before allocating a new one.
19847 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19849         Return IP addresses in the correct order
19851         * src/process.c (Fmake_network_process): Return the IP addresses
19852         in the same order as getaddrinfo does.
19853         (set_network_socket_coding_system): Clean up the code slightly.
19855 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19857         Add checks for getaddrinfo_a
19859         * configure.ac: Detect getaddrinfo_a.
19861 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19863         Refactor make_network_process
19865         * src/process.c (set_network_socket_coding_system)
19866         (connect_network_socket): Refactor out of
19867         make_network_process to allow calling connect_network_socket
19868         asynchronously.
19869         (Fmake_network_process): Do nothing but parsing the parameters
19870         and name resolution, leaving the connection to
19871         connect_network_socket.
19873 2016-01-28  Glenn Morris  <rgm@gnu.org>
19875         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
19876         Warn if defcustom has no type.  (Bug#16276)
19878 2016-01-27  Glenn Morris  <rgm@gnu.org>
19880         * test/lisp/vc/vc-hg.el: Move from test/automated/.
19882 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19884         (rng-c-fix-escaped-newlines): Use subst-char-in-string
19886         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
19887         Use subst-char-in-string.
19889 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19891         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
19893         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
19894         (sgml-calculate-indent): Use it.
19896 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19898         * lisp/org: Fix some compiler warnings
19900         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
19901         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
19902         (*this*): Declare as dyn-bound.
19903         (org-babel-expand-src-block, org-babel-load-in-session)
19904         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
19905         Mark unused args.
19906         (org-babel-combine-header-arg-lists): Remove unused var `args'.
19907         (org-babel-find-named-block): Remove unused var `msg'.
19909         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
19910         Declare as dyn-bound.
19911         (org-edit-src-code): Remove unused var `lfmt'.
19912         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
19914 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19916         * lisp/font-lock.el: Use #' to quote function symbols
19918 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
19920         Improve user name completion in Tramp
19922         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
19923         Call also "getent passwd" or "getent group", if possible.
19924         (tramp-parse-putty): Cache the result.
19926 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
19928         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
19930 2016-01-20  Glenn Morris  <rgm@gnu.org>
19932         Remove handling of non-string time-stamp formats, obsolete for 20 years.
19934         * lisp/time-stamp.el (time-stamp-format): Doc fix.
19935         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
19936         (time-stamp-string): Ignore non-string formats.
19938 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
19940         Anoter fix for problematic merge from emacs-25
19942         * src/w32fns.c (globals_of_w32fns): Move initialization of
19943         resetstkoflw to a non-Cygwin part.
19945 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
19947         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
19949 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
19951         Fix MS-Windows build broken by a botched merge from emacs-25
19953         * src/w32.c (w32_crypto_hprov): New static variable.
19954         (globals_of_w32): Initialize w32_crypto_hprov.
19955         (w32_init_crypt_random, w32_init_random): New functions.
19956         Include wincrypt.h.
19957         * src/w32.h (w32_init_random): Add prototype.
19959 2016-01-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
19961         Correct a whole bunch of bugs coming with renamed cell relocation.
19963         * lisp/ses.el (ses-localvars): rename variable
19964         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
19965         and adjust the comment about it.
19966         (ses-plist-delq): new defun.
19967         (ses--ses-buffer-list): new defvar.
19968         (ses--unbind-cell-name): new defun.
19969         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
19970         (ses-relocate-formula): Undo change of
19971         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
19972         preventing relocation for named cell --- now doing this is delegated
19973         to function `ses-relocate-symbol'.
19974         (ses-relocate-range): In docstring, undo change of
19975         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
19976         lower case as it is not a variable.
19977         (ses-relocate-all): Cell name relocation : 1) check that cell is a
19978         renamed cell by testing `ses-cell' property to :ses-named, rather than
19979         comparing name to corresponding standard name. Set rowcol of renamed
19980         cell into the hashmap --- `ses-cell' property must not be used for
19981         that as the same name can be used for different locations in different
19982         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
19983         `local-variable-p' to check if cell name is already in use in this
19984         sheet or needs initialisation.
19985         (ses-relocate-all): Cell value relocation : 1) like for name
19986         relocation use the `ses-cell' property rather than comparing actual
19987         name to corresponding standard name. 2) Correct bug introduced in
19988         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
19989         made the other way round than the intention --- ie value relocation
19990         was disabled for standard cell, not for renamed cell as was the
19991         intention.
19992         (ses-relocate-all): Add loop for unbinding deleted renamed cells
19993         names.
19994         (ses-killbuffer-hook): new defun.
19995         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
19996         kill buffer hook, plus pushing current buffer if new in list.
19997         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
19998         into `ses--in-killing-named-cell-list'.
19999         (ses-rename-cell): Remove update of variable
20000         `ses--renamed-cell-symb-list', this variable is renamed to
20001         `ses--in-killing-named-cell-list', and its setting is done in
20002         functions `ses-delete-row' and , `ses-delete-column' now.
20003         (ses-rename-cell): Change correction of
20004         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
20005         computation of the range over which `cursor-intangible' property was
20006         to be updated. This correction was ok for non spilling cells, but not
20007         for cells spilling over following blank cells. Simply use
20008         `next-single-property-change' rather than computing the end column
20009         from column widths.
20011 2016-01-18  John Wiegley  <johnw@newartisans.com>
20013         -
20015 2016-01-18  John Wiegley  <johnw@newartisans.com>
20017         Merge from origin/emacs-25
20019         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
20020         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
20021         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
20022         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
20023         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
20024         86e4513 Fix incompatbilities with MS-Windows 2000 and older
20025         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
20026         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
20027         39afa42 Fix tests for active region in hideif.el
20028         05df666 Fix interactive specs in some hideif.el commands
20030 2016-01-18  John Wiegley  <johnw@newartisans.com>
20032         -
20034 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
20036         Avoid stdio in SIGINT handler
20038         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
20039         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20040         * lib/ignore-value.h: New file, from gnulib.
20041         * src/keyboard.c: Include it.
20042         (write_stdout, read_stdin): New functions.
20043         (handle_interrupt): Use them instead of printf and getchar,
20044         and avoid fflush when handling signals.
20046 2016-01-18  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
20048         Refactor mml-smime.el, mml1991.el, mml2015.el
20050         (Maybe this is the last merge from Gnus git to Emacs git)
20052         Cf. discussion on ding mailing list, messages in
20053         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
20054         Common code from the three files mml-smime.el, mml1991.el, and
20055         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
20056         to gnus-util.el.
20058         The code is supported by test cases with necessary test keys.
20060         Documentation in message.texi is updated.
20062         * doc/misc/message.texi (Security, Using S/MIME):
20063         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
20064         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
20065         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
20067         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
20068         New functions.
20070         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
20071         (epa--select-keys): Autoload.
20072         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
20073         (mml-secure-openpgp-signers): New user option;
20074         make mml1991-signers and mml2015-signers obsolete aliases to it.
20075         (mml-secure-smime-signers): New user option;
20076         make mml-smime-signers an obsolete alias to it.
20077         (mml-secure-openpgp-encrypt-to-self): New user option;
20078         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
20079         aliases to it.
20080         (mml-secure-smime-encrypt-to-self): New user option;
20081         make mml-smime-encrypt-to-self an obsolete alias to it.
20082         (mml-secure-openpgp-sign-with-sender): New user option;
20083         make mml2015-sign-with-sender an obsolete alias to it.
20084         (mml-secure-smime-sign-with-sender): New user option;
20085         make mml-smime-sign-with-sender an obsolete alias to it.
20086         (mml-secure-openpgp-always-trust): New user option;
20087         make mml2015-always-trust an obsolete alias to it.
20088         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
20089         New user options.
20090         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
20091         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
20092         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
20093         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
20094         (mml-secure-passphrase-callback, mml-secure-check-user-id)
20095         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
20096         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
20097         (mml-secure-fingerprint, mml-secure-filter-keys)
20098         (mml-secure-normalize-cust-name, mml-secure-select-keys)
20099         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
20100         (mml-secure-self-recipients, mml-secure-recipients)
20101         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
20103         * lisp/gnus/mml-smime.el: Require epg;
20104         refactor declaration and autoloading of epg functions.
20105         (mml-smime-use): Doc fix.
20106         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
20107         Obsolete.
20108         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
20109         Use format instead of gnus-format-message.
20110         (mml-smime-epg-secret-key-id-list): Remove variable.
20111         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
20112         (mml-smime-epg-find-usable-secret-key): Remove functions.
20113         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
20115         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
20116         (mml1991-passphrase-cache-expiry): Obsolete.
20117         (mml1991-epg-secret-key-id-list): Remove variable.
20118         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
20119         (mml1991-epg-find-usable-secret-key): Remove functions.
20120         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
20122         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
20123         (mml2015-passphrase-cache-expiry): Obsolete.
20124         (mml2015-epg-secret-key-id-list): Remove variable.
20125         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
20126         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
20127         (mml2015-epg-find-usable-secret-key): Remove functions.
20128         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
20129         (mml2015-epg-encrypt): Refactor.
20131 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
20133         Merge from gnulib
20135         This mostly just updates copyright dates of gnulib files.
20136         It also updates to the latest version of texinfo.tex.
20138 2016-01-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20140         Move variables to inner loop, preparing for Mac port merge
20142         * src/keyboard.c (command_loop_1): Move variables `cmd',
20143         `keybuf', and `i' to inner loop.
20145 2016-01-17  Bill Wohler  <wohler@newt.com>
20147         * mh-e.el (mh-version): Add +git to version.
20149 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20151         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
20153         (syntax-ppss):
20154         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
20156 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20158         lisp/nxml: Use syntax-tables for comments
20160         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
20161         (nxml-mode): Set syntax-ppss-table.
20162         Use sgml-syntax-propertize-function for syntax-propertize-function.
20163         Let font-lock highlight strings and comments.
20164         (nxml-degrade): Don't touch "nxml-inside" property any more.
20165         (nxml-after-change, nxml-after-change1): Remove functions.
20166         (comment): Don't set fontify rule any more.
20167         (nxml-fontify-attribute): Don't highlight the value any more.
20168         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
20169         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
20171         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
20172         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
20173         (nxml-clear-inside, nxml-set-inside): Remove.
20174         (nxml-scan-after-change): Remove function.
20175         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
20176         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
20177         (nxml-move-outside-backwards):
20178         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
20179         nxml-inside-start behavior.
20181         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
20182         (nxml-debug-clear-inside): Remove macros.
20184         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
20185         (xmltok-scan-after-comment-open): Simplify.
20187 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20189         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
20191 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20193         * lisp/nxml: Use standard completion; it also works for company-mode
20195         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
20196         (nxml-completion-at-point-function): Remove.
20197         (nxml-mode): Don't set completion-at-point-functions.
20198         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
20199         (rng-completion-at-point): Rename from rng-complete and mark it
20200         non-interactive.  It is now to be used as completion-at-point-function.
20201         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
20202         (rng-complete-attribute-value): Don't perform completion, but return
20203         completion data instead.
20204         (rng-complete-qname-function, rng-generate-qname-list): Add a few
20205         arguments, previously passed via dynamic coping.
20206         (rng-strings-to-completion-table): Rename from
20207         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
20208         sorting and uniquifying.
20210         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
20211         (rng-completion-exact-p, rng-quote-string): Delete functions.
20213         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
20214         (rng-missing-attributes-message, rng-missing-element-message)
20215         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
20216         calling rng-quote-string everywhere.
20218 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20220         Use sgml-electric-tag-pair-mode also in nxml-mode
20222         * lisp/nxml/rng-nxml.el: Require sgml-mode.
20223         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
20224         (rng-complete-qname-function): Use complete-with-action.
20226         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
20227         Let-bind forward-sexp-function, since nxml-mode binds it to
20228         something incompatible.
20230         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
20232 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20234         * xmltok.el: Mark the "sole --" rather than the comment opener
20236         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
20237         marker on the "sole --" rather than on the comment opener.
20239 2016-01-15  Sam Steingold  <sds@gnu.org>
20241         replace `tramp-compat-split-string' (removed) with `split-string'
20243         (python-shell-tramp-refresh-process-environment)
20244         (python-shell-calculate-pythonpath): use `split-string'
20245         instead of defunct `tramp-compat-split-string'
20247 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20249         Update nXML to use Emacs's Unicode support, and lexical-binding
20251         * etc/nxml/*.el: Remove obsolete char-name files.
20252         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
20253         var `next'.
20254         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
20255         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
20256         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
20257         (nxml-target-section-pos, nxml-depth-in-target-section)
20258         (nxml-outline-state-transform-alist)
20259         (nxml-outline-display-section-tag-function): Move decl before first use.
20260         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
20261         (nxml-char-name-alist, nxml-char-name-table)
20262         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
20263         (nxml-enable-char-name-set, nxml-disable-char-name-set)
20264         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
20265         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
20266         (nxml-insert-named-char): Use read-char-by-name instead.
20267         (nxml-char-ref-display-extra): Use get-char-code-property.
20268         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
20269         Remove function.
20270         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
20272 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
20274         Add "sg" method to Tramp
20276         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
20277         (Customizing Completion): Add function `tramp-parse-etc-group'.
20279         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
20280         (tramp-completion-function-alist-sg): New defconst.
20281         (top): Completion function for "sg" is
20282         `tramp-completion-function-alist-sg'.
20284         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
20285         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
20287 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
20289         Remove XEmacs compatibility in Tramp
20291         * doc/misc/tramp.texi: Replace flags by their hard coded name.
20292         Remove unused flags and the enclosed alternative text for XEmacs.
20294         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
20295         and "xemacs" flags to "unified" and "separate".  Remove flags
20296         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
20297         "emacsothername", "emacsotherdir" and "emacsotherfilename".
20298         (trampver):
20299         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
20301         * lisp/net/tramp.el (bkup-backup-directory-info)
20302         (directory-sep-char, ls-lisp-use-insert-directory-program)
20303         (outline-regexp, tramp-backup-directory-alist)
20304         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
20305         (tramp-file-name-regexp-unified)
20306         (tramp-file-name-regexp-separate)
20307         (tramp-completion-file-name-regexp-unified)
20308         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
20309         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
20310         (tramp-debug-message, tramp-progress-reporter-update)
20311         (with-tramp-progress-reporter)
20312         (tramp-rfn-eshadow-setup-minibuffer)
20313         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
20314         (tramp-rfn-eshadow-update-overlay)
20315         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
20316         (tramp-file-name-for-operation)
20317         (tramp-completion-file-name-handler)
20318         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
20319         (tramp-handle-directory-files)
20320         (tramp-handle-directory-files-and-attributes)
20321         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
20322         (tramp-handle-insert-file-contents, tramp-handle-load)
20323         (tramp-handle-shell-command)
20324         (tramp-handle-verify-visited-file-modtime)
20325         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
20326         (tramp-check-for-regexp, tramp-wait-for-regexp)
20327         (tramp-send-string, tramp-mode-string-to-int)
20328         (tramp-get-local-gid, tramp-check-cached-permissions)
20329         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
20330         (auto-save-file-name-transforms)
20331         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
20332         (tramp-clear-passwd, tramp-time-diff):
20333         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
20334         (directory-sep-char, tramp-adb-file-name-handler-alist)
20335         (tramp-adb-parse-device-names)
20336         (tramp-adb-handle-expand-file-name)
20337         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
20338         (tramp-adb-handle-file-local-copy)
20339         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
20340         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
20341         (tramp-adb-handle-shell-command)
20342         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
20343         (tramp-adb-maybe-open-connection):
20344         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
20345         (tramp-cache-print):
20346         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
20347         (tramp-bug, tramp-reporter-dump-variable)
20348         (tramp-load-report-modules, tramp-append-tramp-buffers):
20349         * lisp/net/tramp-compat.el (tramp-compat-funcall)
20350         (tramp-advice-file-expand-wildcards)
20351         (tramp-compat-temporary-file-directory)
20352         (tramp-compat-make-temp-file, tramp-compat-copy-file)
20353         (tramp-compat-delete-directory, )
20354         (tramp-compat-process-running-p):
20355         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
20356         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
20357         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20358         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
20359         (tramp-gvfs-handle-file-local-copy)
20360         (tramp-gvfs-handle-file-name-all-completions)
20361         (tramp-gvfs-handle-file-notify-add-watch)
20362         (tramp-gvfs-monitor-file-process-filter)
20363         (tramp-gvfs-handle-file-readable-p)
20364         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
20365         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
20366         (tramp-gvfs-maybe-open-connection)
20367         (tramp-gvfs-parse-device-names):
20368         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
20369         (tramp-gw-open-connection, tramp-gw-open-network-stream):
20370         * lisp/net/tramp-sh.el (directory-sep-char)
20371         (tramp-sh-file-name-handler-alist)
20372         (tramp-sh-handle-file-truename)
20373         (tramp-sh-handle-set-visited-file-modtime)
20374         (tramp-sh-handle-verify-visited-file-modtime)
20375         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
20376         (tramp-sh-handle-file-acl)
20377         (tramp-sh-handle-file-name-all-completions)
20378         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
20379         (tramp-do-copy-or-rename-file-directly)
20380         (tramp-do-copy-or-rename-file-out-of-band)
20381         (dired-compress-file-suffixes, dired-remove-file)
20382         (tramp-sh-handle-dired-compress-file)
20383         (tramp-sh-handle-insert-directory)
20384         (tramp-sh-handle-expand-file-name)
20385         (tramp-sh-handle-start-file-process)
20386         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
20387         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
20388         (tramp-sh-handle-file-notify-add-watch)
20389         (tramp-sh-gvfs-monitor-dir-process-filter)
20390         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
20391         (tramp-find-executable)
20392         (tramp-open-connection-setup-interactive-shell)
20393         (tramp-find-inline-encoding, tramp-compute-multi-hops)
20394         (tramp-maybe-open-connection, tramp-convert-file-attributes)
20395         (tramp-get-remote-path, tramp-get-remote-touch):
20396         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20397         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
20398         (tramp-smb-handle-delete-directory)
20399         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
20400         (tramp-smb-handle-make-directory-internal)
20401         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
20402         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
20403         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
20404         (tramp-smb-get-cifs-capabilities)
20405         (tramp-smb-maybe-open-connection):
20406         * lisp/net/trampver.el (tramp-repository-get-version):
20407         Remove XEmacs compat code.
20409         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
20410         (reporter-dump-variable): Declare functions.
20412         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
20413         (tramp-advice-minibuffer-electric-separator)
20414         (tramp-advice-minibuffer-electric-tilde)
20415         (tramp-handle-unhandled-file-name-directory):
20416         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
20417         (tramp-compat-font-lock-add-keywords)
20418         (tramp-compat-load, tramp-compat-number-sequence)
20419         (tramp-compat-split-string, tramp-compat-delete-dups):
20420         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
20421         Remove.
20423         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
20424         recursively.
20426 2016-01-14  K. Handa  <handa@gnu.org>
20428         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
20430         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
20431         second glyph only when there are enough glyphs.
20433 2016-01-13  Glenn Morris  <rgm@gnu.org>
20435         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
20437         or its hook, to move point.  (Bug#22348)
20439 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
20441         Merge missing commit from emacs-25 branch
20443         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
20444         New variables.
20445         (check-expensive, check-doit): New targets.
20447         * Makefile.in (check-expensive): New target.
20449         * test/lisp/autorevert-tests.el
20450         (auto-revert-test01-auto-revert-several-files):
20451         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
20452         (file-notify-test06-many-events):
20453         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
20454         (tramp-test27-start-file-process, tramp-test28-shell-command)
20455         (tramp-test29-vc-registered)
20456         (tramp-test31-special-characters-with-stat)
20457         (tramp-test31-special-characters-with-perl)
20458         (tramp-test31-special-characters-with-ls)
20459         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
20460         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
20461         (tramp-test35-unload): Tag the tests as :expensive-test.
20463 2016-01-11  John Wiegley  <johnw@newartisans.com>
20465         Merge from origin/emacs-25
20467         1f6898d test/automated/vc-hg.el: Support out-of-tree build
20468         3adb56e Minor change in tramp-tests.el
20469         2b535ba ; * etc/NEWS: Update the js.el entry.
20470         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
20471         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
20472         36b9539 Avoid an infloop when we run out of memory
20473         2006752 Avoid unnecessary failures of auto-saving after fatal error
20474         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
20475         552694a Revert attempt to use 'noexcept' in typedef
20476         6ad0d39 Update documentation of 'indirect-function'
20477         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
20478         303141a Update documentation for obsoleting 'syntax-begin-function'
20479         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
20480         e667bbb Document new features if Eshell
20481         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
20482         1089dc9 Handle too long commands in Tramp
20483         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
20484         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
20485         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
20486         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
20487         cca0f93 ; Account for spaces before the filename
20488         c71e1e8 Use short date for 'hg annotate', and output the author
20489         f50027b Spelling fix
20490         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
20491         cc140bc Document user-level functions in project.el
20492         f8208b6 Document the user-level features of the Xref package
20493         b131fb8 * loading.texi: Add `define-type' entry for load-history
20494         db3c2a8 Improve doc strings and prompts in xref.el
20495         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
20496         90fd798 Fix coding system for Tramp on OS X.
20497         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
20498         9dfcbf0 Update 'load-history' docs
20499         207e191 Fix (error ...) error
20500         457738f Correctly analyze brace arguments in templated C++ function declarations.
20501         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
20502         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
20503         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
20504         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
20505         4b37cba Improve documentation of Delete Selection mode
20506         a034dd3 Fix two project-find-file issues
20507         30abf29 Clarify doc string of 'dired-current-directory'
20508         e990bb2 Use the face of preceding text for displaying the ellipsis
20509         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
20510         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
20511         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
20512         648de81 ; Add NEWS entry for project.el
20513         671862f apropos-library: Skip obvious duplicates; don't error on generics
20514         51668a5 ; Grammar fix
20515         ed41d11 Add project-find-file and project-or-external-find-file
20516         056da45 ; Improve commentary in 'setup_for_ellipsis'
20517         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
20519 2016-01-11  John Wiegley  <johnw@newartisans.com>
20521         Merge from origin/emacs-25
20523         ce4a052 Add defvar-local to lisp-imenu-generic-expression
20524         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
20525         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
20526         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
20527         b6b47af Properly encode/decode base64Binary data in SOAP
20528         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
20529         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
20530                 Update the URI of MELPA and marmalade-repo.
20531                 Reported by CHENG Goa <chenggao@royau.me> in
20532                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
20533         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
20534         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
20535         7380990 Remove function wrongly on AWK Mode value of context
20536         fontification hook.
20537         d400753 * src/buffer.c: Stick with ASCII in doc string.
20538         221240c Reword transient-mark-mode doc string
20539         977d3ea Update doc string of 'selective-display'
20540         229c3fa Make C++ buffers writeable when writing their initial text
20541                 properties.
20542         f5c762c Additional changes for "make check-expensive"
20543         1729cf3 ; * admin/MAINTAINERS: Remove myself.
20544         33219d3 Apply text properties for <, > in new after-change function
20545                 (C++ Java Modes).
20547 2016-01-11  John Wiegley  <johnw@newartisans.com>
20549         Merge from origin/emacs-25
20551         9fb185a shr-tag-video bug fix
20552         6300655 Minor fixes in tramp-tests.el
20553         50575b1 Ensure redisplay when 'truncate-lines' is set
20554         0d9e80d Fix a doc string of 'transient-mark-mode'
20555         0000ae5 MS-Windows followup to latest gnulib update
20556         4bc5e02 Spelling fix
20557         f1093f7 Do secure signed Bcc handling
20559 2016-01-11  John Wiegley  <johnw@newartisans.com>
20561         Merge from origin/emacs-25
20563         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
20564         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
20565         71ea138 * lisp/align.el (align): Simplify a lambda
20566         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
20567         1f680db Fix compilation next-error in buffers with selective-display
20568         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
20569         1da116f Add SHA1 warnings for high network security settings
20570         e48bacd ; * etc/NEWS: Typo fix.
20572 2016-01-11  John Wiegley  <johnw@newartisans.com>
20574         Merge from origin/emacs-25
20576         43662a2 ; Clarify that xref is still experimental
20577         0a6e6ca ; * admin/release-process: Remove some obsolete records.
20578         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
20579         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
20580         0a7ad07 ; Re-arrange xref-related entries in NEWS.
20581         fe903ef Fix xref-find-references on MS-Windows
20582         55a28d8 ; Fixed visual bell artifact problem on NextStep.
20583         d064034 Document new features of tildify-mode
20584         964bea7 Document new features of Whitespace mode
20585         cd68f47 Improve documentation of new Hide-IfDef features
20586         723b8bf Fix regression in font-locking cl-assert and cl-check-type
20588 2016-01-11  John Wiegley  <johnw@newartisans.com>
20590         Merge from origin/emacs-25
20592         ef33bc7 Spelling and grammar fixes
20593         9c3dbab Fix copyright years by hand
20594         0e96320 Update copyright year to 2016
20596 2016-01-11  John Wiegley  <johnw@newartisans.com>
20598         Merge from origin/emacs-25
20600         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
20601         526d80c Port chart.el methods to cl-generic.
20602         410bb69 Add nt/INSTALL.W64 build instructions
20603         8f5b524 Add new input method 'programmer-dvorak'
20604         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
20605         bb83bb1 Fix EWW rendering of long RTL lines
20606         b1a8509 fix  bug#21054
20607         ce5ad12 Clean up cairo printing code
20609 2016-01-11  John Wiegley  <johnw@newartisans.com>
20611         Merge from origin/emacs-25
20613         6ee327d Add handle_user_signal_hook
20614         47580e0 Avoid writing to purespace
20615         0588be7 Remove unused variable
20616         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
20617         3b95e9c Use posix_openpt instead of openpty on Darwin
20618         86312ff Document support for ':documentation' in Lisp mode
20619         c930e75b Document new features of TeX mode
20620         7c83d84 Clarify docs of hscroll in RTL text
20621         4c8f8db Fix rendering of HTML pages that use character composition
20622         a8d37ca Avoid some compiler warnings in w32.c
20623         ce106f3de Undo ill-advised change
20624         be0bba4 Unbreak completion in python-mode buffers
20626 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
20628         Adding example replies to bug-triage.
20630         * admin/notes/bug-triage: Added example replies. Also, as requested,
20631           making the process notes into more of a checklist.
20633 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
20635         Rename the notes/admin/triage file to bug-triage.
20637         * CONTRIBUTE: Change reference to the triage file name.
20638         * admin/notes/triage: Rename file to admin/notes/bug-triage.
20640 2016-01-08  K. Handa  <handa@gnu.org>
20642         Fix outdated comments.
20644 2016-01-06  Glenn Morris  <rgm@gnu.org>
20646         Allow creation of loaddefs files without timestamps.
20648         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
20649         (autoload-generate-file-autoloads, update-directory-autoloads):
20650         If autoload-timestamps is nil, write "t" instead of file timestamp.
20651         (autoload-find-destination, update-directory-autoloads):
20652         If timestamp is "t", use the modtime of the output file instead.
20654 2016-01-06  Glenn Morris  <rgm@gnu.org>
20656         Doc tweaks.
20658         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
20659         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
20660         (calendar-iso-from-absolute):
20661         * lisp/calendar/cal-tex.el (cal-tex-comment):
20662         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
20664 2016-01-06  Glenn Morris  <rgm@gnu.org>
20666         Build tweaks related to tags files.
20668         * lib-src/Makefile.in (tagsfiles): New variable.
20669         (TAGS): Also depend on the source files.  Use our own etags program.
20670         * lisp/Makefile.in (ETAGS): Add EXEEXT.
20671         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
20672         Remove.
20673         (tagsfiles): New, replacing lisptagsfiles1 etc.
20674         Remove irrelevant source files here rather than in the TAGS rule.
20675         (${ETAGS}): New rule.
20676         (TAGS): Also depend on the etags executable.
20677         * lwlib/Makefile.in (EXEEXT): New, set by configure.
20678         (ETAGS): Add EXEEXT.
20679         (${ETAGS}): New rule.
20680         (ctagsfiles): Use "wildcard".
20681         (TAGS): Also depend on the etags executable.
20682         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
20683         (${ETAGS}): New rule.
20684         (TAGS): Fix dependencies.
20685         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
20686         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
20687         Remove "-t" argument.
20688         (${ETAGS}): New rule.
20689         (tagsfiles): New variable.
20690         (TAGS): New rule, with proper dependencies.
20691         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
20692         (ctagsfiles1, ctagsfiles2): Use "wildcard".
20693         (ctagsfiles3): Remove.
20694         (TAGS): Depend on etags.
20695         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
20696         directories decide if updates are needed.
20698 2016-01-06  Glenn Morris  <rgm@gnu.org>
20700         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
20702 2016-01-06  Glenn Morris  <rgm@gnu.org>
20704         * test/lisp/emacs-lisp/package-tests.el
20706         (package-test-macro-compilation): Fixup branch merge.
20708 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
20710         Fix fallout from merging emacs-25 branch in test/
20712         * .gitignore: Update for the new place of biditest.txt.
20713         * test/automated/: Directory removed.  All files moved to their
20714         proper places.
20715         * test/etags/: Directory removed.  All files moved to their proper
20716         places.
20717         * test/automated/url-parse-tests.el: File removed; it was an exact
20718         copy of the same file in test/lisp/url/.
20719         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
20721 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20723         Spelling fixes
20725 2016-01-04  Daniel Colascione  <dancol@dancol.org>
20727         Let users disable unsafe signal handling code
20729         * src/keyboard.c (syms_of_keyboard): New user variables
20730         `attempt-stack-overflow-recovery' and
20731         `attempt-orderly-shutdown-on-fatal-signal'.
20732         * src/sysdep.c (stack_overflow): Check
20733         `attempt-stack-overflow-recovery'.
20734         * src/emacs.c (terminate_due_to_signal): Check
20735         `attempt-orderly-shutdown-on-fatal-signal'.
20737 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
20739         * configure.ac: Add error message for gfile on Nextstep.
20741 2016-01-02  John Wiegley  <johnw@newartisans.com>
20743         Merge branch 'emacs-25-merge'
20745 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20747         Align textually on fix done for emacs-25 branch for bug#21054
20749         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
20750         and useless `(if t ...)' in order to align textually on fix done for
20751         emacs-25 branch for bug#21054.
20753 2016-01-01  K. Handa  <handa@gnu.org>
20755         support rendering of wider range of combinging characters by ftfont backend
20757         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
20758         supports rendering of combining characters, call
20759         font-shape-gstring.
20761         * src/font.c (Ffont_get): Handle `combining-capability' property.
20762         (syms_of_font): New symbol ":combining-capability'.
20764         * src/font.h (struct font_driver): New member combining_capability.
20766         * src/ftfont.c: Include "category.h".
20767         (ftfont_driver): Initialize combining_capability to
20768         ftfont_combining_capability.
20769         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
20770         FLT in advance.
20771         (ftfont_combining_capability): New function.
20773 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
20775         Add notes on bug triage procedure
20777         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
20778         * admin/notes/triage: New file explaining triage procedure.
20780 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20782         Correct ses-rename-cell cursor-intangible text prop updating.
20784         There were two problems:
20786         - First ses-rename-cell has to work when called non interactively
20787           (with non-nil CELL argument), so in this case the start pos of
20788           put-text-property cannot be plainly (point), you need a
20789           ses-goto-print call before
20791         - Second, the range itself was computed erronously, only the first
20792           char was affected instead of the full cell width. This was not
20793           noticeable prior to changes (Deprecate `intangible' and
20794           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
20796         * lisp/ses.el (ses-rename-cell): Correct computation of position range
20797         to which the 'cursor-intangible text property has to be set to cell
20798         new name.
20800 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20802         Don't fake empty cells value by "" when printing with a lambda.
20804         When using a lambda expression printer function the user should be
20805         free to format differently a really empty cell, ie. containing nil,
20806         from a cell containing an empty string "".
20808         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
20809         in the case of a lambda expression printer function.
20811         * ses.texi (Printer functions): Add example and description about
20812         lambda expression printer function handling all the possible values,
20813         including unexpected ones.
20815 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20817         Quick temporary hack to fix curcell refreshing.
20819         The problem was caused by change: 2015-04-13 Deprecate `intangible'
20820         and `point-entered' properties. The problem is that this change has
20821         removed the (setq ses--curcell t) setting in the ses-command-hook
20822         function.
20824         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
20825         a condition to call function `ses-set-curcell'. Comment this as a quick
20826         temporary hack to make it work, as I don't know yet whether a definite
20827         correction would be to make the ses-set-curcell at every ses-check-curcell,
20828         or to revert to the previous approach, ie marking ses--curcell as out-of-date
20829         at every potentially cursor motion command.
20831 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20833         Restrictive URL checking tweaks
20835         * lisp/net/eww.el (eww): Check whether the domain is
20836         restrictive instead of the string
20837         (http://македонија.icom.museum is restrictive even if each
20838         part is from a different script).
20840 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20842         New function `puny-highly-restrictive-domain-p'
20844         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
20845         (puny-highly-restrictive-domain-p): New function.
20847 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20849         eww build fix (require puny)
20851 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20853         Transform non-restrictive domains to punycode for display
20855         * lisp/net/eww.el (eww): Check whether the domain is Highly
20856         Restrictive in the Unicode IDNA sense.
20858 2015-12-29  John Wiegley  <johnw@newartisans.com>
20860         Merge emacs-25 into master (using imerge)
20862 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
20864         Further Unicode restrictive fixups
20866         * puny.el (puny-highly-restrictive-p): Include the extra
20867         identifier characters from table 3.
20869 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
20871         Add a new function to say whether a string is restrictive
20873         * puny.el (puny-highly-restrictive-p): New function.
20875 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20877         Mention the new puny.el library
20879 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20881         IDNA-related fixes for the URL library
20883         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
20884         the Host: header.
20886         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
20887         domain names, but leave them as UTF-8, so that they can be
20888         IDNA-encoded later when contacting the host.
20890 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20892         IDNA-encode all domain names in `open-network-stream'
20894         * network-stream.el (open-network-stream)
20895         (network-stream-open-plain, network-stream-open-starttls):
20896         IDNA-encode all domain names, if needed.
20898 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20900         Fix puny-encoding all-non-ASCII domains
20902         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
20904 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20906         shr link traversal fixup
20908         * shr.el (shr-next-link): Don't bug out on adjacent links.
20910 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20912         Reconnect erc even on server errors
20914         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
20915         reconnect even if a server error has occurred (bug#18527).
20917 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20919         Fix punycode short circuit logic
20921         * puny.el (puny-encode-domain): Fix short-circuit logic.
20923 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20925         IDNA speed up
20927         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
20929 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20931         Add IDNA domain encode/decode functions
20933         * puny.el (puny-decode-domain): New function.
20934         (puny-encode-domain): Ditto.
20935         (puny-decode-digit): Fix digit decoding error.
20937 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20939         Rename idna.el to puny.el
20941         * puny.el: Renamed from idna.el to avoid name collisions with
20942         the external idna.el library.
20944 2015-12-27  Katsumi Yamaoka  <yamaoka@jpl.org>
20946         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
20948         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
20949         Don't use split-string with 4th arg for old Emacsen compatibility.
20951 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20953         * idna.el (idna-decode-string-internal): Implement decoding.
20955 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20957         Further IDNA tweaks
20959         (idna-encode-string): Make idna-encode-string safe for
20960         non-ASCII use.
20962 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20964         Clean up the code slightly
20966 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20968         Added basic idna encoding support
20970         * lisp/net/idna.el: New file.
20972 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
20974         Disconnection fixes for erc
20976         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
20977         reconnect if the user has disconnected explicitly (bug#4589).
20979 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
20981         Further erc asynch fixes
20983         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
20984         erc-server-connect to return even if the connection is not
20985         ready.  Then erc-open and erc-server-reconnect do the
20986         same. (bug#5650).
20988 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
20990         Make erc connect asynchronously
20992         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
20993         reconnect asynchronously.
20995         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
20997 2015-12-27  David Edmondson  <dme@dme.org>
20999         Proxy error in erc with multiple clients
21001         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
21002         generated when multiple IRC clients talk to a single IRC proxy
21003         (bug#19034).
21005 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
21007         Fix mml-sec build warnings
21009         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
21010         (bug#18718).
21012 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
21014         (eww-setup-buffer): Restore left-to-right defaults
21016         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
21018 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
21020         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
21022 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
21024         Identify unsafe combinations of Bcc and encryption
21026         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
21027         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
21028         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
21030 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
21032         * shr.el (shr-descend): Allow using lambdas in external functions.
21034 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
21036         * admin/gitmerge.el: Tweaks that seemed necessary
21038         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
21039         (gitmerge-maybe-resume): Provide explicit empty commit message.
21041 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
21043         Use a different port for TLS erc
21045         * lisp/erc/erc.el (erc-default-port-tls): New variable
21046         (bug#19497).
21047         * lisp/erc/erc.el (erc-tls): Use it.
21049 2015-12-25  Alain Schneble  <a.s@realize.ch>
21051         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
21053         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
21054         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
21055         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
21056         information in URL-struct.
21057         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
21058         path and query into nil path and query, respectively.
21059         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
21060         empty path into an absolute ("/") path.
21061         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
21062         fragment-only URIs. Do not just return them unchanged.
21063         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
21064         reference URI should not drop the last segment.
21066 2015-12-25  Alain Schneble  <a.s@realize.ch>
21068         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
21070         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
21071         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
21072         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
21073         information in URL-struct.
21074         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
21075         path and query into nil path and query, respectively.
21076         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
21077         empty path into an absolute ("/") path.
21078         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
21079         fragment-only URIs. Do not just return them unchanged.
21080         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
21081         reference URI should not drop the last segment.
21083 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21085         Let url use default file modes when copying files
21087         * lisp/url/url-handlers.el (url-copy-file): Use default file
21088         modes when copying files (bug#11400).
21090 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
21092         Doc fix for url-http
21094         * lisp/url/url-http.el (url-http): Document better return values
21095           (bug#13187) (tiny change)
21097 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21099         * eww.el (eww-display-html): Support <button> tags (bug#20485).
21101 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21103         Made ffap-url-p a defun instead of a defsubst
21105         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
21106         since there doesn't seem to be much of a reason for it to be a
21107         defsubst (bug#18203).
21109 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21111         Add a command to view files in the browser to dired
21113         * lisp/dired.el (dired-mode-map): Add the `W' command
21114         (bug#18810).
21116 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21118         Allow http://user:pass@foo/ URLs again
21120         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
21121         user/passwords in URLs (bug#19046).
21123 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21125         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
21127 2015-12-25  Samer Masterson  <samer@samertm.com>
21129         Autoload url-insert-buffer-contents
21131         * lisp/url/url-handlers.el: Add autoload cookie so that
21132         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
21134 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21136         Allow toggling colors in eww
21138         * doc/misc/eww.texi (Basics): Mention "C".
21140         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
21142         * lisp/net/shr.el (shr-use-colors): New variable.
21143         (shr-colorize-region): Use it.
21145 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21147         Follow meta refresh tags in eww
21149         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
21151 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21153         More eww file name coding fixes
21155         * eww.el (eww-decode-url-file-name): Use the base coding
21156         system to check for encodability.
21158 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21160         Always save eww history
21162         * eww.el (eww-setup-buffer): Always save history, even when
21163         called from outside the eww buffer (bug#19638).
21165 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21167         Default web pages to right-to-left
21169         * eww.el (eww-mode): Most web pages are left-to-right, so make
21170         that the default (bug#19801).
21172         * shr.el (shr-tag-html): Respect "dir" attributes
21173         (left-to-right, right-to-left).
21175 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21177         Make toggling checkboxes work again
21179         * eww.el (eww-update-field): Make toggling checkboxes work
21180         again (bug#21881).
21182 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21184         Don't store cookies with empty names
21186         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
21187         cookies with empty names (bug#21936).
21189 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21191         Stop rendering HTML before specdlr exhaustion
21193         Fixes: 22117
21195         * shr.el (shr-descend): Stop rendering before we run out of
21196         specpdl room (bug#22117).
21198 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21200         Use cl-reduce, not reduce.
21202 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21204         Allow several <tbody> tags in shr
21206         * shr.el (shr-table-body): New function to find the real body
21207         of a table.
21208         (shr-tag-table): Use it to render several <tbody> tags in a
21209         table (bug#22170).
21211 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21213         Make prettier unique file names in eww
21215         (eww-make-unique-file-name): Make unique file names by making
21216         files like foo(2).jpg instead of foo(1)(2).jpg.
21218 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21220         Decode hex-encoded URLs before using them as file names
21222         * eww.el (eww-decode-url-file-name): New function.
21223         (eww-download-callback): Use it to decode file names before
21224         saving them.
21226 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>
21228         Add FreeBSD cert bundle
21230         * doc/misc/emacs-gnutls.texi (Help For Users): Document
21231         FreeBSD bundle.
21233         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
21235 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21237         Allow overriding shr functions from eww
21239         * eww.el (eww-display-html): Allow overriding elements in
21240         `shr-external-rendering-functions'.
21242 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21244         Ignore invalid SVG images
21246         * shr.el (shr-tag-svg): Ignore SVG images that have no width
21247         or height, because these can't be displayed by ImageMagick,
21248         anyway.
21250 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21252         shr table rendering fix
21254         * shr.el (shr-tag-table): Allow rendering body-less tables
21255         that have headers.
21257 2015-12-22  Sam Steingold  <sds@gnu.org>
21259         clipboard should still work even if interprogram-* is disabled
21261         (clipboard-yank): When `interprogram-cut-function' is nil,
21262         bind it to `gui-selection-value' - the default value.
21263         (clipboard-kill-region, clipboard-kill-ring-save): When
21264         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
21265         the default value.
21267 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
21269         Fix bootstrap issue with dired-loaddefs
21271         * lisp/dired.el: Autoloads for secondary files loaded optionally.
21273 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21275         dired generate autoloads to non-versioned file.
21277         * lisp/dired.el: Remove autoloads.
21278         * lisp/Makefile.in: Add dired to autogenel.
21279         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
21280         * test/lisp/dired-tests.el: Add new test.
21282 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21284         eieio generate autoloads to non-versioned file.
21286         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
21287         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
21288           Remove autoloads.
21289         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
21290           lisp/emacs-lisp/eieio-opt.el: Update file local.
21291         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
21293 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21295         htmlfontify generate autoload to non-versioned file.
21297         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
21298         * lisp/hfy-cmap.el: Update file local.
21299         * lisp/htmlfontify.el: Remove autoloads, add require.
21300         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
21302 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21304         ibuffer generate autoloads to non-versioned file.
21306         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
21307         * lisp/ibuf-ext.el: Update file local.
21308         * lisp/ibuffer.el: Remove autoloads and add a require.
21309         * test/lisp/ibuffer-tests.el: Test that autoload is working.
21311 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21313         rmail generate autoloads to non-versioned file.
21315         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
21316         * lisp/mail/rmail.el: Remove autoloads, add require.
21317         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
21318           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
21319           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
21320           lisp/mail/undigest.el: Update file-local.
21321         * test/lisp/mail/rmail-tests.el:
21323 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21325         Add autoload-force target.
21327         * lisp/Makefile.in (autoload-force): New target.
21329 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21331         ps-print generate autoloads to non versioned file.
21333         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
21334         * lisp/ps-print.el: Remove autoloads.
21335         * lisp/ps-mule.el: Update file-local.
21336         * test/lisp/ps-print-tests.el: Test autoload functionality.
21338 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21340         reftex generate autoloads to non versioned file.
21342         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
21343         * lisp/textmodes/reftex.el: Remove autoloads.
21344         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
21345           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
21346           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
21347           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
21348           lisp/textmodes/reftex-toc.el: Update autoload file-local.
21349         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
21350           function.
21352 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21354         * lisp/calculator.el (calculator-define-key): Undo last change
21356         Make map argument mandatory instead (bug#22106).
21357         (calculator-add-operators): Pass the argument that's not optional any more.
21359 2015-12-03  Glenn Morris  <rgm@gnu.org>
21361         * Makefile.in: Avoid duplication.
21363         (have-tests): New rule.
21364         (check, check-maybe): Use it.
21366 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
21368         make check unconditional, check-maybe top-level.
21370          * Makefile.in: Add check-maybe target.
21371          * test/Makefile.in: Restore unconditional behaviour to make check.
21373 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
21375         Tests now support out-of-source-build.
21377          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
21378            about current working directory.
21380 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
21382         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
21384 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21386         Improve documentation and clean up.
21388          * test/Makefile.in: Improve documentation, use EMACS variable
21389            correctly, and clean up makefile rules.
21391 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21393         Update file headers for name change.
21395          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
21397 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21399         Test files renamed to new scheme.
21401          * (finalizer-tests.el): Now renamed alloc-tests.el
21402          * (zlib-tests.el): Now renamed decompress-tests.el.
21404 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21406         Tests now depend on source files
21408          * test/Makefile.in: Include dependences from tests to source files.
21409          * test/make-test-deps.emacs-lisp: New file
21410          * .gitignore: Ignore generated make include file
21412 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21414         * lisp/progmodes/which-func.el: Improve disabling the mode
21416         Use lexical-binding.
21417         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
21418         (which-func, which-func-format): Remove redundant :group arg.
21419         (which-func-try-to-enable): New function.
21420         (which-func-ff-hook, which-function-mode): Use it.
21421         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
21422         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
21424 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21426         * lisp/calculator.el (calculator-define-key): Silence warning
21428         ...about unknown calculator-mode-map.
21430 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21432         * lisp/calculator.el: more improvements and bugfixes.
21434         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
21435           effect anyway.)
21437         - Simplify `calculator-number-to-string' by throwing most of the work
21438           onto `number-to-string', leaving just some tweaks for decimal inputs.
21439           This leads to some minor changes, for example, pasting "1x1" in hex
21440           mode would warn that "x" is ignored and result in "11" (and it wasn't
21441           done in decimal mode), whereas now it just ignores everything from the
21442           "x" and on and result in a "1" just like in decimal input mode.  Also,
21443           overflows are left for `number-to-string' to deal with.
21445         - `calculator-paste' is very simple as a result.
21447         - Extend the simplified `calculator-paste': with a prefix argument it
21448           pastes a string as if the characters were entered.  This can be used
21449           to reduce expressions, but note that it's a simple literal operation,
21450           so precedence can be messed, a number can be paster while entering a
21451           number, spaces and newlines matter, etc.
21453         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
21454           operator.
21456         - Fix a bug in `calculator-put-value': avoid grouping in the display
21457           that is used to construct `calculator-curnum'.  This would trigger
21458           when pasting or getting a value from a register in some radix mode
21459           with a large enough value.  Another fix: make the output radix equal
21460           the input one, otherwise numbers could be converted twice.
21462 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21464         * lisp/calculator.el: Re-do key bindings.
21466         Use a helper function that arranges a parent keymap that binds alternate
21467         case keys so if some letter key is unbound and it's un/shifted version
21468         is, it will get used.  This makes the global-map trickery unnecessary.
21470         Also switch to passing strings that name keys through `kbd'.
21472 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21474         * lisp/calculator.el: improve radix modes
21476         Fix prompt for some input radix with decimal output (eg, "BD" instead of
21477         the incorrect "B="); also, some minor docstring tweaks for these.
21479 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21481         * lisp/calculator.el: better reading of register names
21483         Use `register-read-with-preview' with a dynamically bound
21484         `register-alist' and a proper preview function to read register names.
21486 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21488         * lisp/calculator.el: General improvements
21490         Use things like `when', `unless', and `push'.
21492         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
21493         non-electric mode.
21495 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
21497         Fix a problem with gfilenotify in filenotify-tests.el
21499         * test/lisp/filenotify-tests.el
21500         (file-notify--test-expected-events): Remove.
21501         (file-notify--test-cleanup): Do not set that variable.
21502         (file-notify--test-with-events): EVENTS can also be a list of lists.
21503         (file-notify-test02-events, file-notify-test04-file-validity):
21504         Adapt expected result.
21506 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
21508         * .gitignore: Adjust to changes in 'test' directory structure.
21510 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
21512         Fix test/manual/etags/Makefile
21514         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
21515         changes in 'test' directory structure.
21517 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21519         Exclude resource dirs from search for tests.
21521         * test/Makefile.in: Test file locations are now found with find
21522           rather than using finds native functions.
21524 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21526         Add test targets without directory names.
21528          * (test/Makefile.in): Extend test_template to add two targets for each
21529            file.
21531 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
21533         * lisp/emacs-lisp/package.el: Require url-handlers
21535 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21537         Move elisp-mode-tests to new function names.
21539          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
21540          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
21542 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
21544         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
21546 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
21548         Merge branch 'feature/standard-test-location'
21550 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
21552         * lisp/emacs-lisp/eieio.el: Add some default implementations
21554         (standard-class): Mark it obsolete.
21555         (slot-missing): Give it a default implementation.
21556         (destructor): Simplify and mark it obsolete.
21557         (object-print): Give it a default implementation.
21558         (eieio-change-class): Rename from change-class.
21559         (change-class): Redefine as obsolete alias.
21561 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21563         Mention kqueue in NEWS
21565 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21567         Merge from scratch/kqueue
21569         bec57a4 Some final fixes in file notification before merging with master
21570         0247489 Rework file notifications, kqueue has problems with directory monitors
21571         5154781 Continie with pending events
21572         6b490c0 Improve loops in file-notify-test06-many-events
21573         c8e266f Handle more complex rename operation in kqueue
21574         5044bdf New test with a larger number of events.
21575         65ba5a9 Further fixes for kqueue.
21576         13f3508 Code cleanup of kqueue.c
21577         99aa855 Doc changes for kqueue
21578         8deebe1 Finish implementation in kqueue.c
21579         90d6c69 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
21580         e95b309 More work on kqueue
21581         41d9bd0 Implement directory events
21582         c571fc1 Build fixes for kqueue support.
21583         e0a68f2 Continue kqueue implementation
21584         7543d1c Work on kqueue
21585         e3354e2 Add kqueue support
21586         c6457ce Minor fix to comment indentation and typo in last commit
21587         b92307f linum-mode plays more nicely with other margin-setting extensions
21588         58e6235 * lisp/image-mode.el: Support encrypted file
21589         9375652 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
21590         47f83b6 ; ChangeLog.2 fixes
21591         7cc233e * lisp/emacs-lisp/package.el: Fix a decoding issue
21592         5f9153f * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
21593         353f5e7 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
21594         70f1fda ; Auto-commit of ChangeLog files.
21595         ae0653b * CONTRIBUTE: Remove information about feature freeze.
21596         9459456 Merge branch 'release-process-lowercase'
21597         9a4aa0f Document the release process
21598         f8cc14b * admin/release-process: Rename from admin/FOR-RELEASE.
21599         dcd5877 gitmerge: Fix git log command
21600         2ac79ae gitmerge: Try to detect cherry-picks
21601         5f7a2a9 Increment Emacs version on master branch
21602         ed2e7e2 Mention CONTRIBUTE in README
21603         9e00a02 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
21604         138ad3d ; Fix warnings
21605         7126e9a ; Update xref-etags-mode for the latest change
21606         246d660 Use generic dispatch for xref backends
21607         31f6e93 Support rectangular regions for more commands
21608         f103a27 Handle multiple matches on the same line; add highlighting
21609         fe973fc Replace xref-match-bounds with xref-match-length
21610         92a5010 Merge from gnulib
21611         04ac097 Spruce up ftfont.c memory allocation
21612         4c4b520 Port recent XCB changes to 64-bit ‘long int’
21613         4f0ce9c * src/undo.c (run_undoable_change): Now static.
21614         695a6f9 Remove support for ':timeout' from w32 tray notifications
21615         a731c2f * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
21616         2b4c0c0 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
21617         66b9f7b * src/undo.c: Small fixes for previous change
21618         2fac30e Add a few more variables to redisplay--variables
21619         04f69f1 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
21620         e221d32 Fix point positioning after transposing with negative arg
21621         35f5afb Fix last change in shr.el
21622         508e77b Fix last change
21623         d60ed3f Another fix for MinGW64 and Cygwin builds due to notifications
21624         805a39b Remove intern calls and XXX comments from Fx_export_frames
21625         9463abf shr: don't invoke unbound function (Bug#21895)
21626         6e5186e * test/automated/keymaps-test.el: Fix test to make it repeatable
21627         0c92826 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
21628         39dbd1c : Tests for undo-auto functionality.
21629         20aa42e ; Merge branch 'fix/no-undo-boundary-on-secondary-buffer-change'
21630         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'.
21631         d2f73db Bind [?\S-\ ] to previous line command in Dired-like modes.
21632         c1bc6e5 Fix the MinGW64 and Cygwin-w32 builds
21633         1e363a8 Enable sorting of JSON object keys when encoding
21634         9dd7da9 * test/automated/keymap-tests.el: New test file
21635         aa17de9 Speed up x_real_pos_and_offsets using XCB
21636         a838c83 Enable use of XCB for checking window manager state
21637         c7f2b6a Detect XCB and save a connection handle
21638         e1c27db Reduce some data dependencies between X calls
21639         25e32bd Use color cache for creating bitmap
21640         851be0f Add "^" to the interactive specs of `dired-next/previous-line'
21641         055ca3a Sync with soap-client repository, version 3.0.2
21642         e0f64e7 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
21643         952395d * lisp/obarray.el: Fix shadowed variables
21644         436d330 Avoid error in submitting a form with EWW
21645         e887f6e ; * doc/lispref/os.texi: Fix indentation of sample code.
21646         51d840a Rename seq-p and map-p to seqp and mapp
21647         23036ba Rename obarray-p to obarrayp
21648         20aea42 Rename obarray-foreach to obarray-map
21649         a3b2101 New file with obarray functions.
21650         9d43941 Implement tray notifications for MS-Windows
21652 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21654         Some final fixes in file notification before merging with master
21656         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
21657         (file-notify-callback): Improve check for `stopped' event.  Call
21658         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
21659         (file-notify-add-watch): In case FILE is not a directory, call the
21660         file monitor for the kqueue backend.  Otherwise, call the
21661         directory monitor for the upper directory.
21663         * src/inotify.c (inotifyevent_to_event): Extract file name from
21664         watch_object if the event doesn't provide it.
21665         (Finotify_add_watch): Add file name to watch_object.
21667         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21668         Use different timeouts for different libraries.
21669         (file-notify--test-with-events): Suppress lock files.  Flush
21670         outstanding events before running the body.
21671         (file-notify-test02-events, file-notify-test04-file-validity): Do
21672         not skip cygwin tests.  Add additional test for file creation.
21673         Adapt expected result for different backends.
21674         (file-notify-test03-autorevert): Some of the tests don't work for
21675         w32notify.
21676         (file-notify-test06-many-events): Rename into both directions.
21678 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21680         Rework file notifications, kqueue has problems with directory monitors
21682         * lisp/filenotify.el (file-notify-add-watch): Call the native
21683         add-watch function on the file, not on the dir.
21685         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
21686         about already deleted entries.
21688         * test/automated/auto-revert-tests.el
21689         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
21690         since this deletes the target file first.
21692         * test/automated/file-notify-tests.el (file-notify--test-event-test):
21693         Make stronger checks.
21694         (file-notify-test01-add-watch, file-notify-test02-events)
21695         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21696         Rewrite in order to call file monitors but directory monitors.
21697         (file-notify-test06-many-events): Ler rename work in both directions.
21699 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21701         Continie with pending events
21703         * src/kqueue.c (pending_events): Remove global variable.
21704         (kqueue_compare_dir_list): Create `write' event for not used
21705         pending events.
21706         (globals_of_kqueue): Remove initialization of pending_events.
21708 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21710         Improve loops in file-notify-test06-many-events
21712         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
21713         Use `read-event' pauses for the `write-file' loops; otherwise
21714         events are lost in inotify and gfilenotify cases.
21716 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21718         Handle more complex rename operation in kqueue
21720         * src/kqueue.c (pending_events): New variable.
21721         (kqueue_compare_dir_list): Handle more complex rename operation.
21722         (globals_of_kqueue): Initialize pending_events.
21724         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
21725         Adapt expected events in the `rename-file' case.
21726         (file-notify-test06-many-events-remote): Declare.
21728 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
21730         New test with a larger number of events.
21732         * test/automated/file-notify-tests.el (file-notify--test-with-events):
21733         Make timeout heuristically depend on the number of events.
21735         (file-notify-test06-many-events): Use it for new test.
21737 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21739         Further fixes for kqueue.
21741         * lisp/filenotify.el (file-notify-callback): Raise also event if
21742         directory name matches.
21743         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
21745         * src/kqueue.c (kqueue_generate_event): Use watch_object as
21746         argument instead of ident.  Remove callback argument.  Adapt
21747         callees.  Check actions whether they are monitored flags.
21749         * test/automated/file-notify-tests.el (file-notify--test-library):
21750         New defun.
21751         (file-notify-test00-availability, file-notify-test02-events)
21752         (file-notify-test04-file-validity)
21753         (file-notify-test05-dir-validity): Use it.
21754         (file-notify-test02-events, file-notify-test04-file-validity): Add
21755         `read-event' calls between different file actions, in order to
21756         give the backends a chance to rais an event.  Needed especially
21757         for kqueue.  In case of deleting a directory, there are two
21758         `deleted' events.
21760 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21762         Code cleanup of kqueue.c
21764         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
21765         (kqueue_compare_dir_list): Do not loop when calling
21766         directory_files_internal.  Remove checks for "." and "..", this is
21767         done in kqueue_directory_listing now.
21768         (Fkqueue_add_watch): Check for proper emacs_open flags.
21770 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21772         Doc changes for kqueue
21774         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
21775         Fix some glitches in the example.
21777 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21779         Finish implementation in kqueue.c
21781         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
21782         Simplify access to list.
21783         (kqueue_compare_dir_list): Simplify access to list.  Raise
21784         `delete' event if directory does not exist any longer.  Otherwise,
21785         wait until directory contents has changed.  Fix error in check.
21787 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21789         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
21791 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21793         More work on kqueue
21795         * lisp/filenotify.el (file-notify-callback): Handle also the
21796         `rename' event from kqueue.
21797         (file-notify-add-watch): Do not register an entry twice.
21799         * src/kqueue.c (kqueue_directory_listing): New function.
21800         (kqueue_generate_event): New argument FILE1.  Adapt callees.
21801         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
21803 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21805         Implement directory events
21807         * lisp/filenotify.el (file-notify-handle-event)
21808         (file-notify-callback): Remove traces.
21810         * src/kqueue.c: Include <sys/time.h>.
21811         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
21812         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
21813         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
21814         Compute initial directory listing.  Close file descriptor in case
21815         of errors.
21816         (syms_of_kqueue): Declare Qcreate.
21818 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
21820         Build fixes for kqueue support.
21822         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
21823         flag.
21825         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
21826         kqueue on *BSD.
21828 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21830         Continue kqueue implementation
21832         * lisp/filenotify.el (file-notify-handle-event)
21833         (file-notify-callback): Enable trace messages.
21835         * src/kqueue.c: Include also <sys/types.h>.
21836         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
21837         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
21838         (syms_of_kqueue): Add them.
21840 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21842         Work on kqueue
21844         * lisp/filenotify.el (file-notify--library)
21845         (file-notify-descriptors, file-notify-callback)
21846         (file-notify-add-watch, file-notify-rm-watch)
21847         (file-notify-valid-p): Add kqueue support.
21849         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
21851 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21853         Add kqueue support
21855         * configure.ac (--with-file-notification): Add kqueue.
21856         (top): Remove special test for "${HAVE_NS}" and
21857         ${with_file_notification}, this is handled inside gfilenotify
21858         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
21859         instead of library specific variables.
21861         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
21863         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
21865         * src/kqueue.c: New file.
21867         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
21869 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21871         Some final fixes in file notification before merging with master
21873         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
21874         (file-notify-callback): Improve check for `stopped' event.  Call
21875         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
21876         (file-notify-add-watch): In case FILE is not a directory, call the
21877         file monitor for the kqueue backend.  Otherwise, call the
21878         directory monitor for the upper directory.
21880         * src/inotify.c (inotifyevent_to_event): Extract file name from
21881         watch_object if the event doesn't provide it.
21882         (Finotify_add_watch): Add file name to watch_object.
21884         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21885         Use different timeouts for different libraries.
21886         (file-notify--test-with-events): Suppress lock files.  Flush
21887         outstanding events before running the body.
21888         (file-notify-test02-events, file-notify-test04-file-validity): Do
21889         not skip cygwin tests.  Add additional test for file creation.
21890         Adapt expected result for different backends.
21891         (file-notify-test03-autorevert): Some of the tests don't work for
21892         w32notify.
21893         (file-notify-test06-many-events): Rename into both directions.
21895 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21897         Update elisp-mode-tests for changed file location.
21899          * test/lisp/progmodes/elisp-mode-tests.el:
21901 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21903         Exclude manual tests from Makefile
21905          * test/Makefile.in:
21907 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21909         Move package test files to new directory.
21911          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
21912          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
21914 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21916         Restore delete Makefiles and fix .gitignore.
21918          * .gitignore: Update Makefiles to changed locations
21919          * test/lisp/progmodes/flymake-resources/Makefile,
21920            test/manual/etags/Makefile,
21921            test/manual/etags/make-src/Makefile,
21922            test/manual/indent/Makefile: Restored and moved to new location.
21924 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21926         Test infrastructure: updates after directory move
21928          * (test/Makefile.in): Support directories several levels deep.
21929          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
21930          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
21932 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21934         Rename all test files to reflect source layout.
21936          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
21937            test directory moves.
21938          * test/file-organisation.org: New file.
21939          * test/automated/Makefile.in
21940            test/automated/data/decompress/foo.gz
21941            test/automated/data/epg/pubkey.asc
21942            test/automated/data/epg/seckey.asc
21943            test/automated/data/files-bug18141.el.gz
21944            test/automated/data/flymake/test.c
21945            test/automated/data/flymake/test.pl
21946            test/automated/data/package/archive-contents
21947            test/automated/data/package/key.pub
21948            test/automated/data/package/key.sec
21949            test/automated/data/package/multi-file-0.2.3.tar
21950            test/automated/data/package/multi-file-readme.txt
21951            test/automated/data/package/newer-versions/archive-contents
21952            test/automated/data/package/newer-versions/new-pkg-1.0.el
21953            test/automated/data/package/newer-versions/simple-single-1.4.el
21954            test/automated/data/package/package-test-server.py
21955            test/automated/data/package/signed/archive-contents
21956            test/automated/data/package/signed/archive-contents.sig
21957            test/automated/data/package/signed/signed-bad-1.0.el
21958            test/automated/data/package/signed/signed-bad-1.0.el.sig
21959            test/automated/data/package/signed/signed-good-1.0.el
21960            test/automated/data/package/signed/signed-good-1.0.el.sig
21961            test/automated/data/package/simple-depend-1.0.el
21962            test/automated/data/package/simple-single-1.3.el
21963            test/automated/data/package/simple-single-readme.txt
21964            test/automated/data/package/simple-two-depend-1.1.el
21965            test/automated/abbrev-tests.el
21966            test/automated/auto-revert-tests.el
21967            test/automated/calc-tests.el
21968            test/automated/icalendar-tests.el
21969            test/automated/character-fold-tests.el
21970            test/automated/comint-testsuite.el
21971            test/automated/descr-text-test.el
21972            test/automated/electric-tests.el
21973            test/automated/cl-generic-tests.el
21974            test/automated/cl-lib-tests.el
21975            test/automated/eieio-test-methodinvoke.el
21976            test/automated/eieio-test-persist.el
21977            test/automated/eieio-tests.el
21978            test/automated/ert-tests.el
21979            test/automated/ert-x-tests.el
21980            test/automated/generator-tests.el
21981            test/automated/let-alist.el
21982            test/automated/map-tests.el
21983            test/automated/advice-tests.el
21984            test/automated/package-test.el
21985            test/automated/pcase-tests.el
21986            test/automated/regexp-tests.el
21987            test/automated/seq-tests.el
21988            test/automated/subr-x-tests.el
21989            test/automated/tabulated-list-test.el
21990            test/automated/thunk-tests.el
21991            test/automated/timer-tests.el
21992            test/automated/epg-tests.el
21993            test/automated/eshell.el
21994            test/automated/faces-tests.el
21995            test/automated/file-notify-tests.el
21996            test/automated/auth-source-tests.el
21997            test/automated/gnus-tests.el
21998            test/automated/message-mode-tests.el
21999            test/automated/help-fns.el
22000            test/automated/imenu-test.el
22001            test/automated/info-xref.el
22002            test/automated/mule-util.el
22003            test/automated/isearch-tests.el
22004            test/automated/json-tests.el
22005            test/automated/bytecomp-tests.el
22006            test/automated/coding-tests.el
22007            test/automated/core-elisp-tests.el
22008            test/automated/decoder-tests.el
22009            test/automated/files.el
22010            test/automated/font-parse-tests.el
22011            test/automated/lexbind-tests.el
22012            test/automated/occur-tests.el
22013            test/automated/process-tests.el
22014            test/automated/syntax-tests.el
22015            test/automated/textprop-tests.el
22016            test/automated/undo-tests.el
22017            test/automated/man-tests.el
22018            test/automated/completion-tests.el
22019            test/automated/dbus-tests.el
22020            test/automated/newsticker-tests.el
22021            test/automated/sasl-scram-rfc-tests.el
22022            test/automated/tramp-tests.el
22023            test/automated/obarray-tests.el
22024            test/automated/compile-tests.el
22025            test/automated/elisp-mode-tests.el
22026            test/automated/f90.el
22027            test/automated/flymake-tests.el
22028            test/automated/python-tests.el
22029            test/automated/ruby-mode-tests.el
22030            test/automated/subword-tests.el
22031            test/automated/replace-tests.el
22032            test/automated/simple-test.el
22033            test/automated/sort-tests.el
22034            test/automated/subr-tests.el
22035            test/automated/reftex-tests.el
22036            test/automated/sgml-mode-tests.el
22037            test/automated/tildify-tests.el
22038            test/automated/thingatpt.el
22039            test/automated/url-future-tests.el
22040            test/automated/url-util-tests.el
22041            test/automated/add-log-tests.el
22042            test/automated/vc-bzr.el
22043            test/automated/vc-tests.el
22044            test/automated/xml-parse-tests.el
22045            test/BidiCharacterTest.txt
22046            test/biditest.el
22047            test/cedet/cedet-utests.el
22048            test/cedet/ede-tests.el
22049            test/cedet/semantic-ia-utest.el
22050            test/cedet/semantic-tests.el
22051            test/cedet/semantic-utest-c.el
22052            test/cedet/semantic-utest.el
22053            test/cedet/srecode-tests.el
22054            test/cedet/tests/test.c
22055            test/cedet/tests/test.el
22056            test/cedet/tests/test.make
22057            test/cedet/tests/testdoublens.cpp
22058            test/cedet/tests/testdoublens.hpp
22059            test/cedet/tests/testfriends.cpp
22060            test/cedet/tests/testjavacomp.java
22061            test/cedet/tests/testnsp.cpp
22062            test/cedet/tests/testpolymorph.cpp
22063            test/cedet/tests/testspp.c
22064            test/cedet/tests/testsppcomplete.c
22065            test/cedet/tests/testsppreplace.c
22066            test/cedet/tests/testsppreplaced.c
22067            test/cedet/tests/testsubclass.cpp
22068            test/cedet/tests/testsubclass.hh
22069            test/cedet/tests/testtypedefs.cpp
22070            test/cedet/tests/testvarnames.c
22071            test/etags/CTAGS.good
22072            test/etags/ETAGS.good_1
22073            test/etags/ETAGS.good_2
22074            test/etags/ETAGS.good_3
22075            test/etags/ETAGS.good_4
22076            test/etags/ETAGS.good_5
22077            test/etags/ETAGS.good_6
22078            test/etags/a-src/empty.zz
22079            test/etags/a-src/empty.zz.gz
22080            test/etags/ada-src/2ataspri.adb
22081            test/etags/ada-src/2ataspri.ads
22082            test/etags/ada-src/etags-test-for.ada
22083            test/etags/ada-src/waroquiers.ada
22084            test/etags/c-src/a/b/b.c
22085            test/etags/c-src/abbrev.c
22086            test/etags/c-src/c.c
22087            test/etags/c-src/dostorture.c
22088            test/etags/c-src/emacs/src/gmalloc.c
22089            test/etags/c-src/emacs/src/keyboard.c
22090            test/etags/c-src/emacs/src/lisp.h
22091            test/etags/c-src/emacs/src/regex.h
22092            test/etags/c-src/etags.c
22093            test/etags/c-src/exit.c
22094            test/etags/c-src/exit.strange_suffix
22095            test/etags/c-src/fail.c
22096            test/etags/c-src/getopt.h
22097            test/etags/c-src/h.h
22098            test/etags/c-src/machsyscalls.c
22099            test/etags/c-src/machsyscalls.h
22100            test/etags/c-src/sysdep.h
22101            test/etags/c-src/tab.c
22102            test/etags/c-src/torture.c
22103            test/etags/cp-src/MDiagArray2.h
22104            test/etags/cp-src/Range.h
22105            test/etags/cp-src/burton.cpp
22106            test/etags/cp-src/c.C
22107            test/etags/cp-src/clheir.cpp.gz
22108            test/etags/cp-src/clheir.hpp
22109            test/etags/cp-src/conway.cpp
22110            test/etags/cp-src/conway.hpp
22111            test/etags/cp-src/fail.C
22112            test/etags/cp-src/functions.cpp
22113            test/etags/cp-src/screen.cpp
22114            test/etags/cp-src/screen.hpp
22115            test/etags/cp-src/x.cc
22116            test/etags/el-src/TAGTEST.EL
22117            test/etags/el-src/emacs/lisp/progmodes/etags.el
22118            test/etags/erl-src/gs_dialog.erl
22119            test/etags/f-src/entry.for
22120            test/etags/f-src/entry.strange.gz
22121            test/etags/f-src/entry.strange_suffix
22122            test/etags/forth-src/test-forth.fth
22123            test/etags/html-src/algrthms.html
22124            test/etags/html-src/index.shtml
22125            test/etags/html-src/software.html
22126            test/etags/html-src/softwarelibero.html
22127            test/etags/lua-src/allegro.lua
22128            test/etags/objc-src/PackInsp.h
22129            test/etags/objc-src/PackInsp.m
22130            test/etags/objc-src/Subprocess.h
22131            test/etags/objc-src/Subprocess.m
22132            test/etags/objcpp-src/SimpleCalc.H
22133            test/etags/objcpp-src/SimpleCalc.M
22134            test/etags/pas-src/common.pas
22135            test/etags/perl-src/htlmify-cystic
22136            test/etags/perl-src/kai-test.pl
22137            test/etags/perl-src/yagrip.pl
22138            test/etags/php-src/lce_functions.php
22139            test/etags/php-src/ptest.php
22140            test/etags/php-src/sendmail.php
22141            test/etags/prol-src/natded.prolog
22142            test/etags/prol-src/ordsets.prolog
22143            test/etags/ps-src/rfc1245.ps
22144            test/etags/pyt-src/server.py
22145            test/etags/tex-src/gzip.texi
22146            test/etags/tex-src/nonewline.tex
22147            test/etags/tex-src/testenv.tex
22148            test/etags/tex-src/texinfo.tex
22149            test/etags/y-src/atest.y
22150            test/etags/y-src/cccp.c
22151            test/etags/y-src/cccp.y
22152            test/etags/y-src/parse.c
22153            test/etags/y-src/parse.y
22154            test/indent/css-mode.css
22155            test/indent/js-indent-init-dynamic.js
22156            test/indent/js-indent-init-t.js
22157            test/indent/js-jsx.js
22158            test/indent/js.js
22159            test/indent/latex-mode.tex
22160            test/indent/modula2.mod
22161            test/indent/nxml.xml
22162            test/indent/octave.m
22163            test/indent/pascal.pas
22164            test/indent/perl.perl
22165            test/indent/prolog.prolog
22166            test/indent/ps-mode.ps
22167            test/indent/ruby.rb
22168            test/indent/scheme.scm
22169            test/indent/scss-mode.scss
22170            test/indent/sgml-mode-attribute.html
22171            test/indent/shell.rc
22172            test/indent/shell.sh
22173            test/redisplay-testsuite.el
22174            test/rmailmm.el
22175            test/automated/buffer-tests.el
22176            test/automated/cmds-tests.el
22177            test/automated/data-tests.el
22178            test/automated/finalizer-tests.el
22179            test/automated/fns-tests.el
22180            test/automated/inotify-test.el
22181            test/automated/keymap-tests.el
22182            test/automated/print-tests.el
22183            test/automated/libxml-tests.el
22184            test/automated/zlib-tests.el: Files Moved.
22186 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
22188         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
22190         * verilog-mode.el (verilog-save-font-no-change-functions):
22191         Commentary and fix pre-Emacs 21 behavior.
22193 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
22195         Rework file notifications, kqueue has problems with directory monitors
22197         * lisp/filenotify.el (file-notify-add-watch): Call the native
22198         add-watch function on the file, not on the dir.
22200         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
22201         about already deleted entries.
22203         * test/automated/auto-revert-tests.el
22204         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
22205         since this deletes the target file first.
22207         * test/automated/file-notify-tests.el (file-notify--test-event-test):
22208         Make stronger checks.
22209         (file-notify-test01-add-watch, file-notify-test02-events)
22210         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22211         Rewrite in order to call file monitors but directory monitors.
22212         (file-notify-test06-many-events): Ler rename work in both directions.
22214 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
22216         Use obarray functions from obarray.
22218         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
22219           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
22220           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
22221           delegate to obarray.el functions.
22222         * lisp/loadup.el: load obarray before abbrev
22223         * test/automated/abbrev-tests.el: new tests
22225 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22227         Continie with pending events
22229         * src/kqueue.c (pending_events): Remove global variable.
22230         (kqueue_compare_dir_list): Create `write' event for not used
22231         pending events.
22232         (globals_of_kqueue): Remove initialization of pending_events.
22234 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22236         Improve loops in file-notify-test06-many-events
22238         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
22239         Use `read-event' pauses for the `write-file' loops; otherwise
22240         events are lost in inotify and gfilenotify cases.
22242 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22244         Handle more complex rename operation in kqueue
22246         * src/kqueue.c (pending_events): New variable.
22247         (kqueue_compare_dir_list): Handle more complex rename operation.
22248         (globals_of_kqueue): Initialize pending_events.
22250         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
22251         Adapt expected events in the `rename-file' case.
22252         (file-notify-test06-many-events-remote): Declare.
22254 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
22256         epa.el: Add option to replace original text
22258         * lisp/epa.el (epa-replace-original-text): New user option.
22259         (Bug#21947)
22261 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
22263         Add interactive seek command.
22265         * lisp/mpc.el (mpc-cmd-seekcur): New function.
22266         (mpc-seek-current): New command.
22267         (mpc-mode-menu): Add entry for mpc-seek-current
22268         (mpc-mode-map): Bind mpc-seek-current to "g"
22270 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
22272         Fix issue where a new tempfile was created every refresh
22274         * lisp/mpc.el (mpc-format): Leave dir as relative path
22276 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
22278         New test with a larger number of events.
22280         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22281         Make timeout heuristically depend on the number of events.
22283         (file-notify-test06-many-events): Use it for new test.
22285 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
22287         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
22289         (c-save-buffer-state): Use with-silent-modifications when available.
22290         (c--macroexpand-all): Check macroexpand-all directly rather than
22291         c--mapcan-status.
22293 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
22295         * lisp/loadup.el: Set max-lisp-eval-depth here
22297         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
22298         (BYTE_COMPILE_FLAGS): Adjust accordingly.
22300 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
22302         Further fixes for kqueue.
22304         * lisp/filenotify.el (file-notify-callback): Raise also event if
22305         directory name matches.
22306         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
22308         * src/kqueue.c (kqueue_generate_event): Use watch_object as
22309         argument instead of ident.  Remove callback argument.  Adapt
22310         callees.  Check actions whether they are monitored flags.
22312         * test/automated/file-notify-tests.el (file-notify--test-library):
22313         New defun.
22314         (file-notify-test00-availability, file-notify-test02-events)
22315         (file-notify-test04-file-validity)
22316         (file-notify-test05-dir-validity): Use it.
22317         (file-notify-test02-events, file-notify-test04-file-validity): Add
22318         `read-event' calls between different file actions, in order to
22319         give the backends a chance to rais an event.  Needed especially
22320         for kqueue.  In case of deleting a directory, there are two
22321         `deleted' events.
22323 2015-11-17  João Távora  <joaotavora@gmail.com>
22325         Minor fix to comment indentation and typo in last commit
22327         * linum.el (linum-update-window): Fix comment indentation and a
22328         typo.
22330 2015-11-17  João Távora  <joaotavora@gmail.com>
22332         linum-mode plays more nicely with other margin-setting extensions
22334         linum.el will only modify the left margin if it needs to, and will
22335         only reset the it back to 0 if it guesses that no-one has touched that
22336         margin in the meantime.
22338         As such, this is a more of a workaround than an actual fix, but fixes
22339         the problems described in bug#20674 regarding the interaction with
22340         modes such as darkroom-mode and olivetti-mode.
22342         A similar fix was commited to nlinum.el in ELPA.git's
22343         e7f5f549fbfb740b911fb7f33b42381ecece56d8
22345         * linum.el (linum-delete-overlays): Restore margins more
22346         criteriously.
22347         (linum-update-window): Set margins more criteriously.
22349 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
22351         Code cleanup of kqueue.c
22353         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
22354         (kqueue_compare_dir_list): Do not loop when calling
22355         directory_files_internal.  Remove checks for "." and "..", this is
22356         done in kqueue_directory_listing now.
22357         (Fkqueue_add_watch): Check for proper emacs_open flags.
22359 2015-11-16  Daiki Ueno  <ueno@gnu.org>
22361         * lisp/image-mode.el: Support encrypted file
22363         (image-toggle-display-image): Read content from the buffer instead
22364         of the file, if the buffer holds a decrypted data.  (Bug#21870)
22366 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
22368         Doc changes for kqueue
22370         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
22371         Fix some glitches in the example.
22373 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
22375         Finish implementation in kqueue.c
22377         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
22378         Simplify access to list.
22379         (kqueue_compare_dir_list): Simplify access to list.  Raise
22380         `delete' event if directory does not exist any longer.  Otherwise,
22381         wait until directory contents has changed.  Fix error in check.
22383 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
22385         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
22387 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
22389         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
22391 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
22393         * lisp/emacs-lisp/package.el: Fix a decoding issue
22395         (package--with-response-buffer): Use `url-insert-buffer-contents'.
22396         The previous code had some issues with decoding. Refactoring that
22397         function allows us to use the decoding from url-handlers while still
22398         treating both sync and async requests the same.
22400         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
22401         `url-insert-buffer-contents'.
22402         (url-insert-buffer-contents): New function
22404 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
22406         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
22408         (package--with-work-buffer-async): Reimplement as
22409         `package--with-response-buffer'.
22410         (package--with-work-buffer): Mark obsolete.
22411         (package--with-response-buffer): New macro. This is a more self
22412         contained and less contrived version of
22413         `package--with-work-buffer-async'.  It uses keyword arguments,
22414         doesn't have async on the name, doesn't fallback on
22415         `package--with-work-buffer', and has _much_ simpler error
22416         handling.
22418         (package--check-signature, package--download-one-archive)
22419         (package-install-from-archive, describe-package-1): Use it.
22421         (package--download-and-read-archives): Let
22422         `package--download-one-archive' take care of calling
22423         `package--update-downloads-in-progress'.
22425 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22427         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
22429         (verilog-save-buffer-state): Use with-silent-modifications when available.
22430         (verilog-save-font-no-change-functions): Don't bind
22431         before/after-change-functions if it's not needed.
22433 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
22435         More work on kqueue
22437         * lisp/filenotify.el (file-notify-callback): Handle also the
22438         `rename' event from kqueue.
22439         (file-notify-add-watch): Do not register an entry twice.
22441         * src/kqueue.c (kqueue_directory_listing): New function.
22442         (kqueue_generate_event): New argument FILE1.  Adapt callees.
22443         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
22445 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22447         * CONTRIBUTE: Remove information about feature freeze.
22449         Merge branch 'release-process-lowercase'
22451 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22453         Document the release process
22455         * admin/notes/versioning: Add information about RC releases.
22456         * admin/release-process: Document the release process.
22457         * admin/authors.el (authors-ignored-files):
22458         * admin/README: Change FOR-RELEASE to release-process.
22459         * CONTRIBUTE:
22460         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
22462 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22464         * admin/release-process: Rename from admin/FOR-RELEASE.
22466 2015-11-14  David Engster  <deng@randomsample.de>
22468         gitmerge: Fix git log command
22470         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
22471         only want commits from the branch that is to be merged.
22472         (gitmerge-setup-log-buffer): Use the same symmetric range as in
22473         `gitmerge-missing'.
22475 2015-11-14  David Engster  <deng@randomsample.de>
22477         gitmerge: Try to detect cherry-picks
22479         * admin/gitmerge.el (gitmerge-default-branch): Change to
22480         origin/emacs-25.
22481         (gitmerge-missing): Use symmetric difference ('...') between
22482         branch and master so that cherry-picks can be detected.
22484 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
22486         Implement directory events
22488         * lisp/filenotify.el (file-notify-handle-event)
22489         (file-notify-callback): Remove traces.
22491         * src/kqueue.c: Include <sys/time.h>.
22492         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
22493         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
22494         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
22495         Compute initial directory listing.  Close file descriptor in case
22496         of errors.
22497         (syms_of_kqueue): Declare Qcreate.
22499 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
22501         Increment Emacs version on master branch
22503         * lisp/cus-edit.el (customize-changed-options-previous-release):
22504         Increase previous version to 24.5.
22506         * configure.ac:
22507         * msdos/sed2v2.inp: Bump version to 25.1.50.
22509 2015-11-13  Xue Fuqiao  <xfq.free@gmail.com>
22511         Mention CONTRIBUTE in README
22513         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
22514         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
22515         * README: Mention CONTRIBUTE.
22517 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
22519         Update verilog-mode.el to 2015-11-09-b121d60-vpo.
22521         * verilog-mode.el (verilog-auto, verilog-delete-auto)
22522         (verilog-modi-cache-results, verilog-save-buffer-state)
22523         (verilog-save-font-no-change-functions): When internally suppressing change
22524         functions, use `inhibit-modification-hooks' and call
22525         `after-change-funtions' to more nicely work with user hooks.  Reported by
22526         Stefan Monnier.
22528         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
22529         Create `verilog-delete-auto-buffer' to avoid double-calling
22530         fontification hooks.
22532         (verilog-restore-buffer-modified-p, verilog-auto)
22533         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
22534         set-buffer-modified-p. Reported by Stefan Monnier.
22536         (verilog-diff-auto, verilog-diff-buffers-p)
22537         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
22539         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
22540         AUTOINST with unpacked dimensional parameters, bug981. Reported by
22541         by Amol Nagapurkar.
22543         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
22544         properties inside internal structures. No functional change
22545         intended.
22547 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
22549         Build fixes for kqueue support.
22551         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
22552         flag.
22554         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
22555         kqueue on *BSD.
22557 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22559         Continue kqueue implementation
22561         * lisp/filenotify.el (file-notify-handle-event)
22562         (file-notify-callback): Enable trace messages.
22564         * src/kqueue.c: Include also <sys/types.h>.
22565         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
22566         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
22567         (syms_of_kqueue): Add them.
22569 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22571         Work on kqueue
22573         * lisp/filenotify.el (file-notify--library)
22574         (file-notify-descriptors, file-notify-callback)
22575         (file-notify-add-watch, file-notify-rm-watch)
22576         (file-notify-valid-p): Add kqueue support.
22578         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
22580 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22582         Add kqueue support
22584         * configure.ac (--with-file-notification): Add kqueue.
22585         (top): Remove special test for "${HAVE_NS}" and
22586         ${with_file_notification}, this is handled inside gfilenotify
22587         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
22588         instead of library specific variables.
22590         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
22592         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
22594         * src/kqueue.c: New file.
22596         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
22598 This file records repository revisions from
22599 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
22600 commit f15f6b53078ac2176f8d2c05d99d3d9b4d32986b (inclusive).
22601 See ChangeLog.1 for earlier changes.
22603 ;; Local Variables:
22604 ;; coding: utf-8
22605 ;; End:
22607   Copyright (C) 2015-2017 Free Software Foundation, Inc.
22609   This file is part of GNU Emacs.
22611   GNU Emacs is free software: you can redistribute it and/or modify
22612   it under the terms of the GNU General Public License as published by
22613   the Free Software Foundation, either version 3 of the License, or
22614   (at your option) any later version.
22616   GNU Emacs is distributed in the hope that it will be useful,
22617   but WITHOUT ANY WARRANTY; without even the implied warranty of
22618   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22619   GNU General Public License for more details.
22621   You should have received a copy of the GNU General Public License
22622   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.