* lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
(slovak-prog-3): Remove the kp-* key bindings, they are not needed
and cause errors in "C-u C-x =".
* lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
(czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
(Bug#23559)
Fixes bug#23561.
* test/automated/epg-tests.el
(epg-tests-program-alist-for-passphrase-callback): New
constant.
(epg-tests-find-usable-gpg-configuration): New function,
renamed from `epg-tests-gpg-usable'. All callers changed.
(epg-tests-gpg-usable): Remove.
* lisp/epg-config.el (epg-config--program-alist): Factor out
constructor element to...
(epg-config--configuration-constructor-alist): ...here.
(epg-find-configuration): Rename FORCE argument to NO-CACHE,
and add PROGRAM-ALIST argument.
Fix some macro locals leaking into body. (Bug#22440)
* test/automated/package-test.el (package-test-signed):
Manually check all possible values of `package-check-signature'.
* lisp/international/mule-cmds.el (set-locale-environment): Don't
inherit the value of locale from previous examination of different
environment variables, which didn't look at LC_PAPER, and so using
that value would effectively ignore the setting of LC_PAPER.
(Bug#23544)
Problem report and fix by Lizzie Dixon (Bug#23513).
* lisp/emacs-lisp/package.el (package--check-signature-content):
Report an error if no good signatures OR if a fatal error. Not AND.
Copyright-paperwork-exempt: yes
This never worked, and could cause infinite recursion.
Problem reported by Glenn Morris (Bug#22465).
* lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
All uses removed.
* lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
Rename from cl--generic-all-functions. Update both callers.
* lisp/cedet/semantic/db-el.el
(semanticdb-find-tags-external-children-of-type-method):
And use it here (bug#23042).
These enable C files from the master repository to be visited in Emacs 25
without generating irritating questions about configuration variable safety.
* lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
functions.
(c-noise-macro-names, c-noise-macro-with-parens-names): give the
safe-local-variable property c-string-list-p.
(c-macro-names-with-semicolon): give the safe-local-variable property
c-string-or-string-list-p.
* lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
stat versions which produce shell quoted output. See also
coreutils Bug#23422.
(cherry picked from commit 6aad36ace9)
* lisp/progmodes/elisp-mode.el (xref-location-marker): Use
save-excursion, in order not to alter the value of point if the
buffer is currently open in the background (problem reported by
Robert Weiner).
* lisp/progmodes/etags.el (xref-location-marker): Same.
* lisp/progmodes/project.el (project-file-completion-table):
`shell-quote-argument' DIR as well.
* lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
`shell-quote-argument' (bug#23453). Thanks for Kaushal Modi for
pointing out the problem. Assert that DIR doesn't start with `~'.
* lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
all xrefs from the buffer first, then delegate most of the
processing to the value returned by xref--buf-pairs-iterator.
(xref--buf-pairs-iterator): New function. Return an "iterator"
which partitions returned markers into buffers, and only processes
markers from one buffer at a time. When an xref is out of date,
skip it with a message instead of signaling error (bug#23284).
(xref--outdated-p): Extract from xref--buf-pairs-iterator. Trim
CR from both strings before comparing.
(xref--query-replace-1): Remove the variable current-buf, no need
to track it anymore. Simplify the filter-predicate and search
functions accordingly. Iterate over buffer-markers pairs returned
by the iterator, and call `perform-replace' for each of them. Use
multi-query-replace-map (bug#23284). Use `switch-to-buffer' every
time after the first, in order not to jump between windows.
* test/automated/xref-tests.el
(xref--buf-pairs-iterator-groups-markers-by-buffers-1)
(xref--buf-pairs-iterator-groups-markers-by-buffers-2)
(xref--buf-pairs-iterator-cleans-up-markers): New tests.
* lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
from Todo Categories mode to a category with only archived items
and todo-skip-archived-categories is non-nil, make sure the
archive file buffer is in Todo Archive mode to prevent
todo-category-select from raising an error, and don't set
todo-current-todo-file, since that makes todo-show display the
archived category. Remove a no-op call to kill-buffer, which is
already called in todo-insert-category-line.
* lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
match if re-search-forward doesn't move point (bug#23426).
* test/automated/xref-tests.el
(xref-collect-matches-finds-an-empty-line-regexp-match):
Uncomment test.
* lisp/dired-aux.el (dired-do-find-regexp):
Use grep-find-ignored-directories instead of
vc-directory-exclusion-list. The result should be functionally
similar (the former uses the latter as the default value), but it
should be more consistent and appropriate WRT user
customizations.
(dired-do-find-regexp-and-replace): Update the docstring.
* lisp/dired.el: Update the corresponding autoloads.
* doc/emacs/dired.texi (Operating on Files): Update the
documentation accordingly.
* lisp/dired-aux.el (dired-do-find-regexp)
(dired-do-find-regexp-and-replace): Mention
'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
also the fact that REGEXP should be palatable by Grep. (Bug#23426)
* lisp/dired.el: Update the corresponding autoload forms.
* doc/emacs/dired.texi (Operating on Files): Mention
'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
(Bug#23429)
* doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
* doc/lispref/control.texi, doc/lispref/display.texi:
* doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
* src/callint.c, src/doprnt.c, src/editfns.c:
Document quoting a bit more systematically.
Problem reported by Alan Mackenzie (Bug#23425).
Problem reported by Philipp Stephani (Bug#23387).
* lisp/electric.el (electric-quote-post-self-insert-function):
Do not requote a string starter or ender.
* lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
Fix up last change.
(define-obsolete-variable-alias): Ditto.
(cherry picked from commit 28e9f4390d)
* lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
Say more verbosely what WHEN is (bug#21225).
(define-obsolete-function-alias): Describe the WHEN parameter.
(define-obsolete-variable-alias): Ditto.
(cherry picked from commit 247c388f16)
* lisp/subr.el (with-silent-modifications): Rearrange the doc
string a bit so that the most pertinent information is at the
top (bug#21171).
(cherry picked from commit e0e70f030e)