Commit Graph

133546 Commits

Author SHA1 Message Date
Glenn Morris
98e98b42a0 Merge from origin/emacs-26
d008ef3 * src/xdisp.c (Vmouse_autoselect_window): Clarify doc-string ...
6f6d525 Detect a non-list package archive content properly (Bug#22311)
2018-07-02 19:19:05 -07:00
João Távora
332f4656b0 Make lisp/jsonrpc.el work with Emacs 25.1
* jsonrpc.el (Package-Requires): Require Emacs 25.1
(jsonrpc-lambda): Use cl-gensym.
(jsonrpc--call-deferred): Caddr doesn't exist in
emacs 25.1.

* jsonrpc-tests.el
(jsonrpc--call-with-emacsrpc-fixture): New function.
(jsonrpc--with-emacsrpc-fixture): Use it.
(deferred-action-complex-tests): Adjust test for Emacs 25.1
2018-07-02 17:30:35 +01:00
John Shahid
ee3e432300 Optionally add argument description in minor mode DOC (bug#10754)
Add a paragraph to minor mode's docstring documenting the mode's ARG
usage if the supplied docstring doesn't already contain the word "ARG".

* easy-mmode.el (easy-mmode--arg-docstring): New const.
(easy-mmode--arg-docstring): New function.
(define-minor-mode): Use them.

Remove argument documentation from all minor modes.
2018-07-01 23:34:53 -04:00
Eli Zaretskii
fd5bf49139 Fix last change
* src/w32console.c (Fset_screen_color): Call Frecenter with 2
arguments.  (Bug#31325)

* etc/NEWS:
* doc/lispref/windows.texi (Textual Scrolling): Clarify the
role of the second argument to 'recenter'.
2018-07-01 19:19:51 +03:00
John Shahid
260768a64b Add a new argument to 'recenter' to allow finer control of redisplay
* window.c (recenter): Add a new REDISPLAY argument to allow the
caller to control the redisplay behavior.  'recenter' will only
redisplay the frame if this new arg and 'recenter-redisplay' are
both non-nil.
(recenter-top-bottom): Pass an extra non-nil argument to
'recenter' to force a redisplay.  (Bug#31325)
2018-07-01 19:05:37 +03:00
Glenn Morris
7edc019651 ; Auto-commit of loaddefs files. 2018-07-01 07:27:20 -04:00
Michael Albinus
8b6812fd90 Minor change in tramp-tests.el
* test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
Cleanup before running the test.
2018-07-01 11:58:55 +02:00
Stefan Monnier
32853e1531 * lisp/hexl.el (hexl-follow-ascii-mode): Fix last fix (bug#32021) 2018-07-01 00:08:11 -04:00
Glenn Morris
31d1bb04cc Unbreak bootstrap
* lisp/jsonrpc.el (jsonrpc-connection, jsonrpc-process-connection):
Don't autoload defclass, else dumping fails loading loaddefs.el
due to trying to autoload eieio-defclass-autoload.
2018-06-30 18:56:49 -07:00
Glenn Morris
67afa75e2b * doc/lispref/text.texi (JSONRPC): Add missing menu. 2018-06-30 18:51:35 -07:00
João Távora
64eb2fc740 * lisp/jsonrpc.el (subr-x): Only require when compiling 2018-06-30 21:14:16 +01:00
João Távora
37dd95866a * lisp/jsonrpc.el: Add "Package-Requires" and "Version" headers 2018-06-30 21:12:23 +01:00
João Távora
8af26410a9 Add lisp/jsonrpc.el
* doc/lispref/text.texi (Text): Add JSONRPC.
(JSONRPC): New node.

* etc/NEWS (New Modes and Packages in Emacs 27.1): Mention jsonrpc.el

* lisp/jsonrpc.el: New file.

* test/lisp/jsonrpc-tests.el: New file.
2018-06-30 19:46:06 +01:00
Eli Zaretskii
852395bab7 * lisp/hexl.el (hexl-follow-ascii-mode): Fix a typo. (Bug#32021) 2018-06-30 20:59:20 +03:00
Eli Zaretskii
ed65ea1815 Speed up reading sub-process output on MS-Windows
* src/w32proc.c (syms_of_ntproc) <w32-pipe-read-delay>: Set to
zero.  For the details, see this discussion:
http://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00711.html.
* src/w32.c (_sys_read_ahead): Update the commentary for
w32-pipe-read-delay usage.

* doc/emacs/msdos.texi (Windows Processes): Document
w32-pipe-read-delay.

* etc/NEWS: Mention the change of the value of w32-pipe-read-delay.
2018-06-30 11:43:42 +03:00
Eli Zaretskii
3b4e65e797 Speed-up let-binding of automatically-local variables
* src/data.c (set_default_internal): Use FOR_EACH_LIVE_BUFFER
when binding variables that don't nominally have a local
value, to avoid slowing down due to a large number of dead
buffers.  (Bug#18522) (Bug#31853)
2018-06-30 11:17:25 +03:00
Paul Eggert
35e9dcab51 Update from Gnulib
This incorporates:
2018-06-29 regex: glibc does not use intprops.h
2018-06-28 regex: port to recently proposed glibc regex merge
2018-06-25 Continue to use spaces for indentation, not tabs
2018-06-25 manywarnings: Don't enable -Wjump-misses-init by default
2018-06-25 acl-internal.h: remove _GL_ATTRIBUTE_CONST on void function
2018-06-24 manywarnings: accommodate GCC 9: remove -Wchkp and -Wabi
2018-06-24 maint: clarify comments about sticky EOF
2018-06-24 af_alg: avoid hangs when reading from streams
2018-06-17 crypto: use byteswap
2018-06-17 getloadavg: Return 0 on MS-Windows without Cygwi
2018-06-17 getloadavg: Allow building on MS-Windows without Cygwin
* build-aux/config.guess, build-aux/config.sub, doc/misc/texinfo.tex:
* lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
* lib/getloadavg.c, lib/gettimeofday.c, lib/md5.c, lib/pselect.c:
* lib/set-permissions.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
* lib/time.in.h, m4/getloadavg.m4, m4/gnulib-common.m4:
* m4/manywarnings.m4, m4/pthread_sigmask.m4, m4/vararrays.m4:
Copy from Gnulib.
2018-06-29 17:32:35 -07:00
Paul Eggert
2e2811865f unbind_to performance tuning
* src/alloc.c (which_symbols):
* src/dispnew.c (Fredisplay):
* src/editfns.c (Fsubst_char_in_region):
* src/fileio.c (Fdo_auto_save):
* src/indent.c (Fvertical_motion):
* src/keymap.c (Fcurrent_active_maps):
* src/lread.c (Feval_buffer):
* src/minibuf.c (get_minibuffer):
* src/sysdep.c (system_process_attributes):
* src/textprop.c (Fnext_single_char_property_change)
(Fprevious_single_char_property_change):
* src/window.c (Fscroll_other_window, Fscroll_other_window_down):
* src/xdisp.c (Fformat_mode_line):
Help the compiler eliminate tail recursion in call to unbind_to.
* src/coding.c (decode_coding_gap):
Omit unnecessary unbind_to, as we’re about to call unbind_to anyway.
* src/coding.c (Fread_coding_system):
* src/eval.c (eval_sub):
* src/xdisp.c (handle_single_display_spec, decode_mode_spec):
* src/xselect.c (x_get_local_selection):
Avoid need to save a machine register when calling unbind_to.
* src/minibuf.c (Ftry_completion, Fall_completions):
Omit unnecessary assignment.
2018-06-29 17:07:57 -07:00
Andreas Schwab
08594a975a * lisp/url/url-http.el (url-http-create-request): Doc fix. 2018-06-29 17:33:43 +02:00
Andreas Schwab
84613dae5c Use a non-proxy request when retrieving https URLs via a proxy
* lisp/url/url-http.el
(url-https-proxy-after-change-function): Bind url-http-proxy
to nil around url-http-create-request.
2018-06-29 17:25:37 +02:00
Michael Albinus
45390596e6 Sync with Tramp 2.4.0
* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.4.0".

* lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted):
Ignore unknown GVFS methods.

* test/lisp/net/tramp-tests.el (tramp-test42-asynchronous-requests):
Tag as :unstable.
2018-06-29 10:17:46 +02:00
Paul Eggert
b2c854a0e1 * src/lisp.h: Add comment (Bug#31996#25). 2018-06-29 00:29:41 -07:00
Noam Postavsky
591bb3d900 Let ediff '=' compare against ancestor buffer (Bug#11320)
* lisp/vc/ediff-util.el (ediff-inferior-compare-regions): Ask user
whether to compare against the ancestor or merge buffer.  Use
read-multiple-choice for A vs B buffer query.
2018-06-28 22:09:04 -04:00
Paul Eggert
ddc4371a89 Fix recently-introduced SAFE_FREE bug
Problem reported by Andy Moreton (Bug#31996).
* src/lisp.h (union specbinding.unwind_array):
Remove unused member func.  Move array after nelts, as this is
likely to generate more efficient code in safe_free, which can
call xfree with the same value either way.
(safe_free): Also handle SPECPDL_UNWIND_AWAY.
2018-06-28 13:51:09 -07:00
Paul Eggert
76eda952b0 Tune SAFE_FREE
On my platform (Fedora 28 x86-64, AMD Phenom II X4 910e) this sped
up a SAFE_FREE-using microbenchmark (string-distance "abc" "abc")
by about 18%, and shrank the Emacs text size by about 0.1%.
* src/callint.c (Fcall_interactively):
* src/callproc.c (call_process):
* src/doc.c (get_doc_string, Fsnarf_documentation):
* src/editfns.c (Freplace_buffer_contents):
* src/emacs-module.c (funcall_module):
* src/eval.c (Flet):
* src/process.c (Fmake_process):
* src/term.c (tty_menu_show):
* src/xdisp.c (safe__call):
* src/xmenu.c (x_menu_show):
Use SAFE_FREE_UNBIND_TO.
* src/data.c (wrong_choice): No need to call SAFE_FREE here.
* src/lisp.h (USE_SAFE_ALLOCA):
* src/regex.c (REGEX_USE_SAFE_ALLOCA):
Do not declare sa_must_free local; no longer needed.
All uses removed.
(SAFE_FREE): Rewrite in terms of safe_free.
(safe_free): New function, optimized to use xfree.
(SAFE_FREE_UNBIND_TO): New macro.
(safe_free_unbind_to): New function.
2018-06-28 00:42:46 -07:00
Eli Zaretskii
79f6911bf1 ; * etc/NEWS: Fix recently added entries. 2018-06-27 21:08:28 +03:00
João Távora
ce54573dac Respect s-s-b-default-predicate when killing terminal
Fixes: Bug#31951

* lisp/server.el (server-save-buffers-kill-terminal): Only pass
PRED=t to save-some-bufers if ARG in non-nil.
2018-06-27 14:19:38 +01:00
Vincent Belaïche
5924259f15 Allow 'file:' protocol for Info-follow-nearest-node. 2018-06-27 15:18:52 +02:00
Martin Rudalics
d008ef3d0b * src/xdisp.c (Vmouse_autoselect_window): Clarify doc-string (Bug#31975) 2018-06-27 09:07:59 +02:00
Noam Postavsky
6f6d525683 Detect a non-list package archive content properly (Bug#22311)
* lisp/emacs-lisp/package.el (package--download-one-archive): Use
`read' instead of `read-from-string'; the latter always returns a
cons, so the `listp' check on its return value doesn't make sense.  It
was changed from `read' to `read-from-string' in 2015-04-01 "*
emacs-lisp/package.el: Implement asynchronous refreshing", but that
change was not needed because `read' works fine on strings as well as
buffers.
2018-06-26 19:56:04 -04:00
Glenn Morris
513b97c0e9 Merge from origin/emacs-26
12c77f6 (origin/emacs-26) Add ido-fallback special variable (Bug#31707)
826e8d1 Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into...
c784876 Tighten a cross-reference in documentation
517dc0b Fix last change in tramp-sh.el
f43186f Revert previous patch; comment was OK after all.
4c3306e Fix lead comment for count_trailing_zero_bits
b419f27 ; * doc/emacs/files.texi (Interlocking): Fix a non-portable @...
7488de4 * lisp/emacs-lisp/regexp-opt.el (regexp-opt): Fix docstring q...
0b69807 Make a minor update to the CSS mode docstring
9a53b6d Say how to override a primitive interactive spec
1d77078 Fix Bug#31941
2018-06-26 07:51:01 -07:00
Christophe Junke
12c77f6918 Add ido-fallback special variable (Bug#31707)
Before ido.el switch to lexical-binding, it was possible for other
packages to modify the 'fallback' variables declared inside
'ido-file-internal' and 'ido-buffer-internal'.
* lisp/ido.el (ido-fallback): New variable.
(ido-buffer-internal, ido-file-internal): Reset ido-fallback to nil
before prompting user.  Use ido-fallback when ido-exit is 'fallback'.
(ido-fallback-command): Add optional FALLBACK-COMMAND argument.

Copyright-paperwork-exempt: yes
2018-06-25 20:05:53 -04:00
Jean-Christophe Helary
61f73703c7 Reformat package.el message strings for future l10n
* lisp/emacs-lisp/package.el (package-buffer-info)
(package--download-one-archive, package-install-selected-packages)
(package-autoremove, describe-package-1, package-menu-toggle-hiding)
(package-menu-hide-package, package-menu--mark-upgrades-1)
(package-menu--list-to-prompt, package-menu--prompt-transaction-p)
(package-menu-execute, package-menu--find-and-notify-upgrades):
Reformat message strings to remove need for plural computation.  Try
to put full sentences in source string literals.
* test/lisp/emacs-lisp/package-tests.el
(package-test-describe-package): Update to match new message format.
2018-06-25 19:18:55 -04:00
Noam Postavsky
c71fb6b0cd Suppress indent errors during electric indentation (Bug#18764)
* lisp/electric.el (electric-indent-post-self-insert-function):
Suppress errors from indent code, but don't suppress errors from
elsewhere in this function.  That way, if trouble is encountered with
electric indent "not working", the error should be reproducible by
calling indent directly (as is the case for Bug#18764), or else it's
from the electric indent code and will be reported normally.
2018-06-25 19:18:55 -04:00
Paul Eggert
d0e2a341dd (format "%d" F) now truncates floating F
Problem reported by Paul Pogonyshev (Bug#31938).
* src/editfns.c: Include math.h, for trunc.
(styled_format): For %d, truncate floating-point numbers and
convert -0 to 0, going back to how Emacs 26 did things.
* doc/lispref/strings.texi (Formatting Strings):
Document behavior of %o, %d, %x, %X on floating-point numbers.
* src/floatfns.c (trunc) [!HAVE_TRUNC]: Rename from emacs_trunc
and make it an extern function, so that editfns.c can use it.
All callers changed.
* test/src/editfns-tests.el (format-%d-float): New test.
2018-06-25 12:23:08 -07:00
Michael Albinus
826e8d1f12 Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into emacs-26 2018-06-25 20:40:37 +02:00
Karl Fogel
c7848767c9 Tighten a cross-reference in documentation
* doc/lispref/internals.texi (Writing Emacs Primitives): Switch to
  a simple parenthetical cross-reference, following up to my
  commit 9a53b6d426 of 2018-06-24.

See discussion:

  https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00826.html
  From: Eli Zaretskii
  Subject: Re: [Emacs-diffs] \
           emacs-26 9a53b6d: Say how to override a primitive interactive spec
  To: Karl Fogel
  CC: Stefan Monnier, Emacs Devel
  Date: Mon, 25 Jun 2018 17:41:53 +0300
  Message-Id: <83r2kvrkr2.fsf@gnu.org>
2018-06-25 12:23:23 -05:00
Lars Ingebrigtsen
27a21970f6 Fix spelling of "intermediate" (it's not "intermediary")
* doc/emacs/misc.texi (Network Security): Ditto.

* lisp/net/nsm.el (network-security-protocol-checks): Fix spelling
on "intermediate".
(nsm-protocol-check--intermediate-sha1): Ditto.
2018-06-25 18:56:55 +02:00
Lars Ingebrigtsen
71e4a4b7e5 Clean up redundant code from previous checkins
* src/gnutls.c (gnutls_verify_boot): Remove reduntant setting of
p->gnutls_certificates, which is now performed by
gnutls_deinit_certificates.
2018-06-25 18:42:48 +02:00
Michael Albinus
517dc0b135 Fix last change in tramp-sh.el
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly):
Use "-R" rather than "-r" for recursive copy of directories.
2018-06-25 16:25:41 +02:00
João Távora
15f4cdd873 Mention use of C-h . (display-local-help) in Flymake manual
Fixes: Bug#31921

* doc/misc/flymake.texi (Using Flymake): Mention display-local-help.
2018-06-25 12:29:04 +01:00
Paul Eggert
f43186fe28 Revert previous patch; comment was OK after all. 2018-06-24 23:46:18 -07:00
Paul Eggert
4c3306e12f Fix lead comment for count_trailing_zero_bits
* src/data.c (count_trailing_zero_bits): Fix comment to match code.
2018-06-24 23:21:23 -07:00
Noam Postavsky
79c247700f ; doc/emacs/misc.texi (Network Security): Fix typo. 2018-06-24 21:00:32 -04:00
Lars Ingebrigtsen
3e7692f07d Make the intermediary-sha1 check work
* lisp/net/nsm.el (nsm-protocol-check--intermediary-sha1): Make
the "skip the root cert" logic work (suggested by Noam Postavsky).
2018-06-25 02:40:25 +02:00
Lars Ingebrigtsen
cf36693bd4 Don't use XCAR in possibly-nil situations
* src/gnutls.c (Fgnutls_peer_status): certs theoretically may be
nil, so don't use XCAR.
2018-06-25 02:34:37 +02:00
Noam Postavsky
190a45f201 (Network Security): Fix the description of the 3DES weakness
* doc/emacs/misc.texi (Network Security): Fix the description of
the 3DES weakness.
2018-06-24 23:57:05 +02:00
Lars Ingebrigtsen
5a285a4db9 Make more TLS checks trigger on the default `medium' level
* doc/emacs/misc.texi (Network Security): Update the doc to say
what's on the different levels.

* lisp/net/nsm.el (nsm-protocol-check--intermediary-sha1): Check
intermediary certificates for SHA1.
(nsm-protocol-check--3des): Check for 3DES ciphers.
(network-security-protocol-checks): Put most of the checks on
`medium'.
2018-06-24 22:57:27 +02:00
Lars Ingebrigtsen
fea8c7d181 Tweak previous gnutls change for efficiency
* src/gnutls.c (Fgnutls_peer_status): Minor optimisation to avoid
computing the topmost certificate twice.
2018-06-24 21:21:56 +02:00
Lars Ingebrigtsen
c8745d95cf Return the entire TLS certificate chain back to the caller
* src/gnutls.c (gnutls_deinit_certificates): New function.
(Fgnutls_peer_status): Return all certificates in the chain back
to Lisp land.
(gnutls_verify_boot): Compute all the x509 certificates in the
chain.

* src/process.h (struct Lisp_Process): Adjust gnutls fields so
that we can keep tracks of all certificates in the chain instead
of just the host certificate.
2018-06-24 21:17:46 +02:00