]> git.eshelyaron.com Git - emacs.git/log
emacs.git
5 years agofixup! Implement hostname->ip lookup function
Robert Pluim [Wed, 7 Aug 2019 11:55:38 +0000 (13:55 +0200)]
fixup! Implement hostname->ip lookup function

6 years agoDon't check unibyte hostnames for pure-ASCII
Robert Pluim [Tue, 17 Jul 2018 16:23:34 +0000 (18:23 +0200)]
Don't check unibyte hostnames for pure-ASCII

* src/process.c (network_lookup_address_info_1): Only check multibyte
hostnames for pure-ASCII.

* test/src/process-tests.el (unibyte-domain-name): Test unibyte domain
names with network-lookup-address-info.

6 years agoAdd network-lookup-address-info description
Robert Pluim [Tue, 17 Jul 2018 11:11:57 +0000 (13:11 +0200)]
Add network-lookup-address-info description

* doc/lispref/processes.texi (Misc Network): Document
  network-lookup-address-info.

6 years agoAdd tests for network-lookup-address-info
Robert Pluim [Tue, 17 Jul 2018 11:10:21 +0000 (13:10 +0200)]
Add tests for network-lookup-address-info

* test/src/process-tests.el (lookup-family-specification): Test
network-lookup-address-info api.
(lookup-unicode-domains): Test that unicode domains fail.
(lookup-google): Test that normal lookups succeed.
(non-existent-lookup-failure): Check that known non-existent
domains fail.

6 years agoRefactor getaddrinfo usage
Robert Pluim [Tue, 17 Jul 2018 11:08:12 +0000 (13:08 +0200)]
Refactor getaddrinfo usage

* src/process.c:
(network_lookup_address_info_1): New function, does most of the
work to call getaddrinfo.  Now checks hostname for pure-ASCII.
(Fmake_network_process): Use it.
(Fnetwork_lookup_address_info): Likewise.  Error check family
argument.

6 years agoImplement hostname->ip lookup function
Robert Pluim [Mon, 16 Jul 2018 17:43:41 +0000 (19:43 +0200)]
Implement hostname->ip lookup function

* src/process.c (conv_sockaddr_to_lisp): Add include_port
argument.  Don't put a port in the result if this is false.
(conv_addrinfo_to_lisp, Fprocess_datagram_address)
(connect_network_socket, network_interface_list)
(network_interface_info, server_accept_connection)
(init_process_emacs): Update callers.
(Fnetwork_lookup_address_info): New function.  Performs hostname to
ip address lookups.

* src/w32.c (network_interface_get_info): Update callers of
  conv_sockaddr_to_lisp

* etc/NEWS : mention addition of 'network-lookup-address-info'

6 years agoShow full issuer and subject distinguished names
Jimmy Yuen Ho Wong [Fri, 13 Jul 2018 05:18:55 +0000 (06:18 +0100)]
Show full issuer and subject distinguished names

CAs like Let's Encrypt do not put O and OU into the Subject's DN.
Similarly, O and OU are often used to indicate Domain Validated or
Organization Validation as opposed to the actual OU.

Issuer CN often contains the issuer's server or as an indication of
Extended Validation certificate as opposed to the actual issuer
organization.

The Hostname part as extracted from the Subject is also confusing, as
in the case of a hostname mismatch, the Subject's CN, which
`nsm-format-certificate' naively calls the Hostname, will not actually
match the hostname in the problem preamble.

* lisp/net/nsm.el (nsm-format-certificate): Show full DN of Issuer and
  Subject.  Remove Hostname.
  (nsm-certificate-part, nsm-parse-subject): Removed.

6 years agoFull certificate chain details for NSM
Jimmy Yuen Ho Wong [Tue, 10 Jul 2018 17:38:11 +0000 (18:38 +0100)]
Full certificate chain details for NSM

* lisp/net/nsm.el (nsm-check-tls-connection): Fix issue with plural
  problems in message.  Prefix every problem with a bullet.
  (nsm-query-user): Add new view the full certificate chain by
  pressing d.
  (nsm-format-certificate): Improve basic certificate and session info
  formatting.

* src/gnutls.c (emacs_gnutls_certificate_export_pem): New function.
  (gnutls_certificate_details): Rename to
  emacs_gnutls_certificate_details.  Add :pem to result list.
  (Fgnutls_format_certificate):  New function for formatting a PEM to
  human-readable text.

6 years agoAdd option to bypass NSM TLS checks on local networks
Jimmy Yuen Ho Wong [Tue, 10 Jul 2018 13:23:20 +0000 (14:23 +0100)]
Add option to bypass NSM TLS checks on local networks

* lisp/net/net-utils.el (nslookup-host-ipv4, nslookup-host-ipv6,
  ipv6-expand): New functions to lookup IPv4 and IPv6 addresses from
  DNS.

* lisp/net/nsm.el (nsm-trust-local-network, nsm-should-check,
  nsm-check-tls-connection, nsm-check-plain-connection): New defcustom
  `nsm-trust-local-network' lets users customize whether NSM should
  check for TLS problems when connecting to the hosts on their local
  networks.  `nsm-should-check' determines whether
  `nsm-check-tls-connection' and `nsm-check-plain-connection' should
  perform checks.  localhost is implicitly trusted, thus checks are
  never performed there.

6 years agoRevamp Network Security manager checks for TLS
Jimmy Yuen Ho Wong [Tue, 10 Jul 2018 13:20:09 +0000 (14:20 +0100)]
Revamp Network Security manager checks for TLS

* lisp/net/nsm.el (network-security-level, nsm-level,
  nsm-new-fingerprint-ok-p): Remove `paranoid' level and related code.

* lisp/net/nsm.el (nsm-tls-checks, nsm-tls-check-version,
    nsm-tls-check-compression, nsm-tls-check-renegotiation-info-ext,
    nsm-tls-check-verify-cert, nsm-tls-check-same-cert,
    nsm-tls-check-null-suite, nsm-tls-check-export-kx,
    nsm-tls-check-anon-kx, nsm-tls-check-md5-sig,
    nsm-tls-check-rc4-cipher, nsm-tls-check-dhe-prime-kx,
    nsm-tls-check-sha1-sig, nsm-tls-check-ecdsa-cbc-cipher
    nsm-tls-check-dhe-kx, nsm-tls-check-rsa-kx,
    nsm-tls-check-3des-cipher, nsm-tls-check-cbc-cipher,
    nsm-save-fingerprint-maybe, nsm-tls-post-check-functions): New
    options and functions for checking TLS handshake problems.

* lisp/net/nsm.el (nsm-check-certificate,
  network-security-protocol-checks,
  nsm-protocol-check--diffie-hellman-prime-bits,
  nsm-protocol-check--3des, nsm-protocol-check--rc4,
  nsm-protocol-check--signature-sha1,
  nsm-protocol-check--intermediate-sha1, nsm-protocol-check--ssl,
  nsm-check-protocol): Remove in favor of `nsm-tls-checks' and
  `nsm-tls-check-*' functions.

* lisp/net/nsm.el (nsm-verify-connection): Ensure connection is
  checked even when `network-security-level' is `low'.

* lisp/net/nsm.el (nsm-check-tls-connection): Batch all problems found
  before querying the user.

* lisp/net/nsm.el (nsm--encryption): Renamed to `nsm-cipher-suite'.

* lisp/net/nsm.el (nsm-fingerprint-ok-p): No longer prompt when
  certificate fingerprints mismatch.  Returns a boolean instead when
  the fingerprint of the certificate received matches the saved
  fingerprints.

* lisp/net/nsm.el (nsm-query): Change signature.  Accepts a list of
  problems and a preformatted message instead of just a message format
  and the arguments for the message.

* lisp/net/nsm.el (nsm-query-user): Change signature.  Accepts a
  preformatted message and the peer status of the handshake instead of
  a message format, its arguments and the certificate for the host.

* lisp/net/nsm.el (nsm-save-host): Change signature.  Accepts a list of
  problems after the WHAT parameter.  Saves multiple fingerprints for
  the same host in case the host load balances a TLS server with more
  than one certificates signed with different keys.  Makes sure
  conditions are not removed when updating a fingerprint.

* lisp/net/nsm.el (nsm-format-certificate): Display the TLS handshake's
  renegotiation info extension, compression level, encrypt-then-MAC
  extension, and key exchange prime bit length.

* src/gnutls.c (gnutls-peer-status-warning-describe,
  gnutls-peer-status): Check for certificate verification problems
  introduced since GnuTLS 3.1.

* src/gnutls.c (gnutls-peer-status): `:compression', `:encrypt-then-mac'
  and `:safe-renegotiation' are now contained in the peer status
  result return value.

6 years agoSet standard value of `gnutls-min-primes-bits' to nil
Jimmy Yuen Ho Wong [Tue, 10 Jul 2018 10:27:03 +0000 (11:27 +0100)]
Set standard value of `gnutls-min-primes-bits' to nil

* lisp/net/gnutls.el (gnutls-min-prime-bits): Set standard value to
  nil in order to let GnuTLS manage the minimum DH prime bits
  accepted.

6 years agoCheck TLS certs against CRL
Jimmy Yuen Ho Wong [Tue, 10 Jul 2018 10:18:45 +0000 (11:18 +0100)]
Check TLS certs against CRL

* lisp/net/gnutls.el (gnutls-boot-parameters): Return
  `gnutls-crlfiles' in `:crlfiles'.
  (gnutls-crlfiles): New defcustom.
  (gnutls--get-files): New defun.
  (gnutls-trustfiles, gnutls-crlfiles): Delegate to
  `gnutls--get-files' to return a list of filenames, accepts glob pattern.

6 years agoAdd to documentation of 'jump-to-register'
Charles A. Roelli [Sat, 14 Jul 2018 13:12:36 +0000 (15:12 +0200)]
Add to documentation of 'jump-to-register'

* lisp/register.el (jump-to-register):
* doc/emacs/regs.texi (Position Registers): Document that
jumping to a register can push the mark.

6 years ago; Trace epg-tests gpg config finding (Bug#23561)
Noam Postavsky [Sat, 14 Jul 2018 12:58:26 +0000 (08:58 -0400)]
; Trace epg-tests gpg config finding (Bug#23561)

6 years agoAvoid infloop in redisplay due to faulty mode-line properties
Jonathan Kyle Mitchell [Thu, 5 Jul 2018 03:38:29 +0000 (22:38 -0500)]
Avoid infloop in redisplay due to faulty mode-line properties

* xdisp.c (safe_set_text_properties): New function.
(display_mode_element): Call Fset_text_properties through
internal_condition_case_n, using safe_set_text_properties as a
wrapper.  (Bug#32038)

6 years ago* lisp/vc/diff-mode.el (diff-font-lock-prettify): New var
Stefan Monnier [Fri, 13 Jul 2018 16:34:50 +0000 (12:34 -0400)]
* lisp/vc/diff-mode.el (diff-font-lock-prettify): New var

(diff--font-lock-prettify): New function.
(diff-font-lock-keywords): Use it.

6 years agoMerge from origin/emacs-26
Glenn Morris [Fri, 13 Jul 2018 16:28:15 +0000 (09:28 -0700)]
Merge from origin/emacs-26

17ebb6e (origin/emacs-26) Use consistent function names in thread-tes...
1c86229 Fix format error in Faccept_process_output
b38b91a Lessen stack consumption in recursive read1
3eb4603 Match w32 paths in grep sans --null hits (Bug#32051)
5cc7c4b Fix previous make-network-process change
d6a1b69 Another documentation improvement in flyspell.el
9b49a8e Improve documentation of Flyspell
3744fda Provide feature 'threads
ef9025f Save the server alias on reconnect (Bug#29657)
db3874b Refer to "proper lists" instead of "true lists"
35e0305 Avoid turning on the global-minor-mode recursively
51bf4e4 Fix Bug#32085

6 years agoTweak subr-x.el substring functions
Basil L. Contovounesios [Fri, 1 Jun 2018 20:58:10 +0000 (21:58 +0100)]
Tweak subr-x.el substring functions

* lisp/emacs-lisp/subr-x.el (string-join): #'-quote function symbol.
(string-trim-left, string-trim-right):
Make better use of substring for minor speedup.
* test/lisp/emacs-lisp/subr-x-tests.el
(subr-x-test-string-trim-left, subr-x-test-string-trim-right)
(subr-x-test-string-remove-prefix)
(subr-x-test-string-remove-suffix): New tests.

6 years agoMinor cus-theme.el simplifications
Basil L. Contovounesios [Thu, 10 May 2018 02:08:10 +0000 (03:08 +0100)]
Minor cus-theme.el simplifications

* lisp/cus-theme.el (custom-new-theme-mode, customize-themes)
(custom-theme-choose-mode): Use setq-local.
(customize-create-theme): Ditto.  Use delete-all-overlays.
(describe-theme-1, custom-theme-summary): Simplify logic.

6 years agoMinor custom.el simplifications
Basil L. Contovounesios [Thu, 31 May 2018 17:37:02 +0000 (18:37 +0100)]
Minor custom.el simplifications

* lisp/custom.el (custom-quote): Duplicate macroexp-quote.
(custom-load-symbol, customize-mark-to-save, customize-mark-as-set)
(custom-theme-name-valid-p, enable-theme, custom-enabled-themes)
(disable-theme): Simplify logic.

6 years ago* lisp/cus-theme.el: Use lexical-binding
Basil L. Contovounesios [Fri, 11 May 2018 14:35:09 +0000 (15:35 +0100)]
* lisp/cus-theme.el: Use lexical-binding

6 years ago* lisp/custom.el: Use lexical-binding
Basil L. Contovounesios [Fri, 11 May 2018 15:09:57 +0000 (16:09 +0100)]
* lisp/custom.el: Use lexical-binding

Remove duplicate 'Custom Themes' comment heading.
(deftheme, custom-declare-theme): Fix advertised calling convention.
(custom-enabled-themes): Fix message grammar.

6 years agoFix custom-available-themes file expansion
Basil L. Contovounesios [Mon, 4 Jun 2018 01:12:33 +0000 (02:12 +0100)]
Fix custom-available-themes file expansion

For discussion, see thread starting at
https://lists.gnu.org/archive/html/emacs-devel/2018-05/msg00222.html.
* lisp/custom.el: (custom-available-themes): Use directory-files
instead of performing arbitrary wildcard expansion in file names.
(custom-theme--load-path): Document return value.
* test/lisp/custom-tests.el: New file.
(custom-theme--load-path): New test.

6 years agoDisable no-byte-compile in built-in themes
Basil L. Contovounesios [Wed, 9 May 2018 21:30:48 +0000 (22:30 +0100)]
Disable no-byte-compile in built-in themes

* etc/themes/adwaita-theme.el:
* etc/themes/deeper-blue-theme.el:
* etc/themes/dichromacy-theme.el:
* etc/themes/leuven-theme.el:
* etc/themes/light-blue-theme.el:
* etc/themes/manoj-dark-theme.el:
* etc/themes/misterioso-theme.el:
* etc/themes/tango-dark-theme.el:
* etc/themes/tango-theme.el:
* etc/themes/tsdh-dark-theme.el:
* etc/themes/tsdh-light-theme.el:
* etc/themes/wheatgrass-theme.el:
* etc/themes/whiteboard-theme.el:
* etc/themes/wombat-theme.el: Disable no-byte-compile.

https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00614.html
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00060.html

6 years agoImprove loading of byte-compiled custom themes
Basil L. Contovounesios [Wed, 9 May 2018 21:20:47 +0000 (22:20 +0100)]
Improve loading of byte-compiled custom themes

* lisp/custom.el (load-theme):
Load byte-compiled file of safe themes when available.

https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00614.html
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00060.html

6 years agoUse consistent function names in thread-tests.el
Michael Albinus [Fri, 13 Jul 2018 12:28:12 +0000 (14:28 +0200)]
Use consistent function names in thread-tests.el

* test/src/thread-tests.el (threads-call-error, threads-custom)
(threads-errors, threads-sticky-point, threads-signal-early):
Rename, using naming convention to prefix with "threads-".

6 years agoFix format error in Faccept_process_output
Michael Albinus [Fri, 13 Jul 2018 12:27:33 +0000 (14:27 +0200)]
Fix format error in Faccept_process_output

* src/process.c (Faccept_process_output): Do not use format spec
"%p", it isn't valid for error().

6 years agoLessen stack consumption in recursive read1
Paul Eggert [Fri, 13 Jul 2018 03:23:07 +0000 (20:23 -0700)]
Lessen stack consumption in recursive read1

* src/lread.c (read1): Shrink local buffer size from
MAX_ALLOCA to 128 (Bug#31995).

6 years agoMatch w32 paths in grep sans --null hits (Bug#32051)
Noam Postavsky [Mon, 9 Jul 2018 20:56:47 +0000 (16:56 -0400)]
Match w32 paths in grep sans --null hits (Bug#32051)

* lisp/progmodes/grep.el (grep-regexp-alist): Add an optional part to
match paths starting with C: (other drive letters).
* test/lisp/progmodes/compile-tests.el
(compile-tests--grep-regexp-testcases)
(compile-tests--grep-regexp-tricky-testcases)
(compile-test-grep-regexps): New tests.
(compile--test-error-line): Return `compilation-message'.

6 years agoSpeed up smerge-refine-regions by avoiding fsync
Noam Postavsky [Thu, 12 Jul 2018 00:13:25 +0000 (20:13 -0400)]
Speed up smerge-refine-regions by avoiding fsync

* lisp/vc/smerge-mode.el (smerge-refine-regions): Bind
write-region-inhibit-fsync to t.  This was reported in
https://github.com/magit/magit/pull/2834 to give a noticable speedup.

6 years agoDon't skip epg-tests even with gpg 2.0 (Bug#23561)
Noam Postavsky [Thu, 12 Jul 2018 00:01:11 +0000 (20:01 -0400)]
Don't skip epg-tests even with gpg 2.0 (Bug#23561)

* test/lisp/epg-tests.el (epg-tests--config-program-alist): New
constant, which allows gpg2 version 2.0+.
(epg-tests-find-usable-gpg-configuration): Pass it to
epg-find-configuration.

6 years agoFix previous make-network-process change
Noam Postavsky [Thu, 12 Jul 2018 23:41:03 +0000 (19:41 -0400)]
Fix previous make-network-process change

* src/process.c (Fmake_network_process): On 2018-07-09 "Explicitly
reject :server and :nowait (Bug#31903)", the sense of the SERVER check
was accidentally reversed so that we ended up looking for the wrong
ADDRESS.  Reported by T.V Raman in
<https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00437.html>.

6 years agoAnother documentation improvement in flyspell.el
Eli Zaretskii [Thu, 12 Jul 2018 16:24:06 +0000 (19:24 +0300)]
Another documentation improvement in flyspell.el

* lisp/textmodes/flyspell.el (flyspell-persistent-highlight): Doc
fix.

6 years agoImprove documentation of Flyspell
Eli Zaretskii [Thu, 12 Jul 2018 15:59:18 +0000 (18:59 +0300)]
Improve documentation of Flyspell

For the background, see
http://lists.gnu.org/archive/html/help-gnu-emacs/2018-07/msg00099.html.

* doc/emacs/fixit.texi (Spelling): Add a couple of caveats.
* lisp/textmodes/flyspell.el: Update commentary.

6 years agoFix the bootstrap differently, so zerop can be where it belongs
Stefan Monnier [Thu, 12 Jul 2018 14:29:28 +0000 (10:29 -0400)]
Fix the bootstrap differently, so zerop can be where it belongs

Suggested by Robert Pluim <rpluim@gmail.com>.

* lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Avoid cadr/cddr.
* lisp/subr.el (zerop): Un-revert 2018-07-10T23:08:58-07:00!contovob@tcd.ie.

6 years agoProvide feature 'threads
Michael Albinus [Thu, 12 Jul 2018 08:49:06 +0000 (10:49 +0200)]
Provide feature 'threads

* src/thread.c (syms_of_threads): Provide feature "threads".

* test/src/thread-tests.el (top): Declare the functions.
(all): Use (featurep 'threads) check.

6 years ago; Add commentary on location of zerop
Basil L. Contovounesios [Wed, 11 Jul 2018 17:11:55 +0000 (20:11 +0300)]
; Add commentary on location of zerop

* lisp/subr.el (zerop): Add commentary explaining why moving the
function's location within the file broke bootstrap in
2018-07-10T23:08:58-07:00!contovob@tcd.ie.

6 years agoUnbreak bootstrap
Glenn Morris [Wed, 11 Jul 2018 15:27:14 +0000 (08:27 -0700)]
Unbreak bootstrap

* lisp/subr.el (zerop): Revert previous change, which caused
bootstrap to fail with void function cadr.

6 years ago; Rearrange definition of zerop in subr.el
Basil L. Contovounesios [Wed, 11 Jul 2018 06:08:58 +0000 (23:08 -0700)]
; Rearrange definition of zerop in subr.el

* lisp/subr.el (zerop): Move from under 'List functions' heading to
under 'Basic Lisp functions' heading.

6 years agoSave the server alias on reconnect (Bug#29657)
Miciah Masters [Mon, 11 Dec 2017 01:14:09 +0000 (20:14 -0500)]
Save the server alias on reconnect (Bug#29657)

rcirc does not retain the server alias on reconnect.  As a result, rcirc
fails to re-use server and channel buffers when an alias is used.  Further
problems may ensue when aliases are used to differentiate multiple
connections to the same host, for example when using a single IRC bouncer
or proxy to connect to multiple IRC networks.

Save the server alias when connecting to a server so that reconnect will
retain the alias.
* lisp/net/rcirc.el (rcirc-connect): Include server-alias when setting
rcirc-connection-info.

Copyright-paperwork-exempt: yes

6 years agoRefer to "proper lists" instead of "true lists"
Basil L. Contovounesios [Wed, 11 Jul 2018 02:51:28 +0000 (19:51 -0700)]
Refer to "proper lists" instead of "true lists"

* doc/lispref/lists.texi (Cons Cells, Building Lists):
* doc/lispref/sequences.texi (Vector Functions): Use the more
popular term "proper", rather than "true", to qualify nil-terminated
lists.

For discussion, see the following emacs-devel subthreads:
https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00112.html
https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html

6 years ago* lisp/vc/diff-mode.el: Perform hunk refinement from font-lock
Stefan Monnier [Wed, 11 Jul 2018 02:52:21 +0000 (22:52 -0400)]
* lisp/vc/diff-mode.el: Perform hunk refinement from font-lock

Remove redundant :group arguments.
(diff-font-lock-refine): New var.
(diff--refine-hunk): New function, extracted from diff-refine-hunk.
(diff-refine-hunk): Use it.
(diff--font-lock-refine--refresh): New function.
(diff--font-lock-refined): New function.
(diff-font-lock-keywords): Use it.

6 years agoFix Bug#32107
Filipp Gunbin [Wed, 11 Jul 2018 02:28:21 +0000 (05:28 +0300)]
Fix Bug#32107

* lisp/progmodes/sql.el (sql-buffer-live-p): Fix handling of optional
  connection argument.  (Bug#32107)

6 years agoFix infinite recursion in eshell/clear (Bug#31326)
Jonathan Kyle Mitchell [Thu, 3 May 2018 04:09:55 +0000 (23:09 -0500)]
Fix infinite recursion in eshell/clear (Bug#31326)

* lisp/eshell/esh-mode.el (eshell/clear): Bind
eshell-input-filter-functions to nil to prevent entries like
eshell-smart-display-setup from causing infinite recursion.

6 years ago* lisp/indent.el (indent-line-to): Fix dedenting of tabs.
Noam Postavsky [Tue, 10 Jul 2018 16:07:01 +0000 (12:07 -0400)]
* lisp/indent.el (indent-line-to): Fix dedenting of tabs.

6 years agoAvoid turning on the global-minor-mode recursively
John Shahid [Sat, 23 Jun 2018 15:12:44 +0000 (11:12 -0400)]
Avoid turning on the global-minor-mode recursively

* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Clear
the buffer-list inside MODE-enable-in-buffers to avoid enabling the
mode recursively.  (Bug#31793)

6 years agoFix Bug#32085
Michael Albinus [Tue, 10 Jul 2018 07:49:49 +0000 (09:49 +0200)]
Fix Bug#32085

* doc/misc/tramp.texi (GVFS based methods): `dav' and `davs' do
not support paths in the volume name.  (Bug#32085)

6 years ago* lisp/format.el (format-annotate-single-property-change): Simplify.
Paul Eggert [Tue, 10 Jul 2018 01:59:58 +0000 (18:59 -0700)]
* lisp/format.el (format-annotate-single-property-change): Simplify.

6 years agoAdd predicate proper-list-p
Basil L. Contovounesios [Tue, 10 Jul 2018 01:46:33 +0000 (18:46 -0700)]
Add predicate proper-list-p

For discussion, see emacs-devel thread starting at
https://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00460.html.

* lisp/subr.el (proper-list-p): New function.
Implementation suggested by Paul Eggert <eggert@cs.ucla.edu> in
https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html.
* doc/lispref/lists.texi (List Elements):
* etc/NEWS: Document proper-list-p.
* lisp/org/ob-core.el (org-babel-insert-result):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
* lisp/emacs-lisp/cl-macs.el (cl--make-usage-args): Use proper-list-p.
* lisp/emacs-lisp/ert.el (ert--proper-list-p): Remove.
Replaced by proper-list-p in lisp/subr.el.
(ert--explain-equal-rec): Use proper-list-length.
* lisp/format.el (format-proper-list-p): Remove.
Replaced by proper-list-p in lisp/subr.el.
(format-annotate-single-property-change): Use proper-list-p.
* test/lisp/emacs-lisp/ert-tests.el (ert-test-proper-list-p):
Move from here...
* test/lisp/subr-tests.el (subr-tests--proper-list-length):
...to here, mutatis mutandis.

6 years agoRespect field boundaries in indent-line-to (Bug#32014)
Noam Postavsky [Sat, 30 Jun 2018 13:14:22 +0000 (09:14 -0400)]
Respect field boundaries in indent-line-to (Bug#32014)

* lisp/indent.el (indent-line-to): Use the back-to-indentation point
as the end-point of whitespace removal, rather than
backward-to-indentation which doesn't respect field boundaries.
* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-indent-with-read-only-field): Don't expect to fail.

6 years ago; Merge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:06:29 +0000 (20:06 -0400)]
; Merge from emacs-26

The following commit was skipped:

8f7d35cabd Stop using indent-line-to in lisp-indent-line (Bug#32014)

6 years agoMerge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:06:27 +0000 (20:06 -0400)]
Merge from emacs-26

db3f779780 ; Test for Bug#32014
90d95b000c Explicitly reject :server and :nowait (Bug#31903)
917158f8c9 Fix Bug#32090

# Conflicts:
# src/process.c

6 years ago; Merge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:03:30 +0000 (20:03 -0400)]
; Merge from emacs-26

The following commit was skipped:

848f0f73e9 Fix floating point exceptions on Alpha (Bug#32086)

6 years agoMerge from emacs-26
Noam Postavsky [Tue, 10 Jul 2018 00:03:30 +0000 (20:03 -0400)]
Merge from emacs-26

65889a6d12 Fix bootstrap infloop in GNU/Linux alpha
48efd1c98b Minor fix of a recent documentation change
3302b7cd7f Mention the NSM in the gnutls variable doc strings
40c2ce743b Remove test code from last commit
e02d8e29c6 Fix Bug#32084
da5d6dbe39 Fix (length NON-SEQUENCE) documentation

6 years agoStop using indent-line-to in lisp-indent-line (Bug#32014)
Noam Postavsky [Fri, 29 Jun 2018 23:58:58 +0000 (19:58 -0400)]
Stop using indent-line-to in lisp-indent-line (Bug#32014)

This is partial revert of "Remove ignored argument from
lisp-indent-line", because `indent-line-to' doesn't respect field
boundaries.
* lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Use delete-region
and indent-to instead of `indent-line-to'.
* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-indent-with-read-only-field): Expect to pass.

Don't merge to master, we will fix indent-line-to there instead.

6 years ago; Test for Bug#32014
Noam Postavsky [Sat, 30 Jun 2018 00:15:10 +0000 (20:15 -0400)]
; Test for Bug#32014

* test/lisp/emacs-lisp/lisp-mode-tests.el
(lisp-indent-with-read-only-field): New test.

6 years agoExplicitly reject :server and :nowait (Bug#31903)
Noam Postavsky [Thu, 5 Jul 2018 23:37:28 +0000 (19:37 -0400)]
Explicitly reject :server and :nowait (Bug#31903)

* src/process.c (Fmake_network_process): Explicitly check for and
signal an error when passed both :server and :nowait non-nil.  In
Emacs 25, :nowait would be ignored in this case, but as of Emacs 26.1
this gives an error, albeit an unclear one.  Also remove obsolete
comment regarding configurations lacking non-blocking mode, the
corresponding code was removed in 2012-11-17 "Assume POSIX 1003.1-1988
or later for fcntl.h."

6 years agoFix Bug#32090
Michael Albinus [Mon, 9 Jul 2018 14:03:49 +0000 (16:03 +0200)]
Fix Bug#32090

* lisp/files-x.el (connection-local-normalize-criteria): Do not
use PROPERTIES anymore.
(connection-local-get-profiles): Rewrite, in order to accept any
property as optional.  (Bug#32090)
(connection-local-set-profiles):
Adapt ´connection-local-normalize-criteria' call.

* test/lisp/files-x-tests.el
(files-x-test-connection-local-set-profiles)
(files-x-test-hack-connection-local-variables-apply): Extend tests.

6 years agodired-do-find-regexp: Use rgrep-find-ignored-directories.
Sam Steingold [Mon, 9 Jul 2018 13:29:09 +0000 (09:29 -0400)]
dired-do-find-regexp: Use rgrep-find-ignored-directories.

6 years agoFix floating point exceptions on Alpha (Bug#32086)
Paul Eggert [Sun, 8 Jul 2018 17:51:00 +0000 (10:51 -0700)]
Fix floating point exceptions on Alpha (Bug#32086)

Backport from master.
* admin/merge-gnulib (GNULIB_MODULES): Add fpieee.
* m4/fpieee.m4: New file, copied from Gnulib.
* m4/gnulib-comp.m4: Regenerate.

6 years agoFix etc/HELLO searching in grep.el
Paul Eggert [Sun, 8 Jul 2018 17:00:17 +0000 (10:00 -0700)]
Fix etc/HELLO searching in grep.el

* lisp/progmodes/grep.el (grep-compute-defaults):
Search for "^Copyright", not "^English", as the latter is no
longer present in etc/HELLO and the former is more likely to
survive future changes to etc/HELLO (Bug#32093).

6 years agoFix floating point exceptions on Alpha (Bug#32086)
Paul Eggert [Sun, 8 Jul 2018 16:24:10 +0000 (09:24 -0700)]
Fix floating point exceptions on Alpha (Bug#32086)

* admin/merge-gnulib (GNULIB_MODULES): Add fpieee.
* m4/fpieee.m4: New file, copied from Gnulib.
* m4/gnulib-comp.m4: Regenerate.

6 years agoFix bootstrap infloop in GNU/Linux alpha
Paul Eggert [Sun, 8 Jul 2018 16:04:02 +0000 (09:04 -0700)]
Fix bootstrap infloop in GNU/Linux alpha

* src/emacs.c (main): Do not re-exec if EMACS_HEAP_EXEC
is already set (Bug#32083).

6 years agoMinor fix of a recent documentation change
Eli Zaretskii [Sun, 8 Jul 2018 15:22:51 +0000 (18:22 +0300)]
Minor fix of a recent documentation change

* lisp/net/gnutls.el (gnutls-algorithm-priority): Clarify the doc
string.

6 years agoMinor improvements in recent NSM documentation changes
Eli Zaretskii [Sun, 8 Jul 2018 14:46:32 +0000 (17:46 +0300)]
Minor improvements in recent NSM documentation changes

* doc/emacs/misc.texi (Network Security): Improve wording and
markup of last change.

* src/gnutls.c (Fgnutls_peer_status): Doc fix.

* etc/NEWS: Improve wording of last change.

6 years agoFix typo in sha1-intermediate check
Lars Ingebrigtsen [Sun, 8 Jul 2018 14:14:06 +0000 (16:14 +0200)]
Fix typo in sha1-intermediate check

* lisp/net/nsm.el (nsm-protocol-check--intermediate-sha1): Allow
storing the exception with a correct name.

6 years agoMention the NSM in the gnutls variable doc strings
Lars Ingebrigtsen [Sun, 24 Jun 2018 12:48:30 +0000 (14:48 +0200)]
Mention the NSM in the gnutls variable doc strings

* gnutls.el (gnutls-algorithm-priority): Mention the Network
Security Manager here since this variable is an obvious place
for people concerned about network security to look.
(gnutls-verify-error): Ditto.
(gnutls-min-prime-bits): Ditto.

6 years agoDocument network-security-protocol-checks better
Lars Ingebrigtsen [Sun, 8 Jul 2018 11:40:37 +0000 (13:40 +0200)]
Document network-security-protocol-checks better

* doc/emacs/misc.texi (Network Security): Rearrange the
network-security-protocol-checks documentation and try to explain
more what this all means and what checks are triggered.

6 years agoNSM-related doc fixes
Lars Ingebrigtsen [Sun, 8 Jul 2018 11:30:08 +0000 (13:30 +0200)]
NSM-related doc fixes

* src/gnutls.c (Fgnutls_peer_status): Mention :certificates in the
doc string.

* etc/NEWS: Mention how to switch off the additional TLS checks.

6 years agoRemove test code from last commit
Michael Albinus [Sun, 8 Jul 2018 11:08:05 +0000 (13:08 +0200)]
Remove test code from last commit

6 years agoFix Bug#32084
Michael Albinus [Sun, 8 Jul 2018 11:02:19 +0000 (13:02 +0200)]
Fix Bug#32084

* test/lisp/net/dbus-tests.el (dbus-test02-register-service-own-bus):
Unset $DISPLAY when calling dbus-launch, in order to avoid
possible X11 authentication errors.  (Bug#32084)

6 years agoFix (length NON-SEQUENCE) documentation
Basil L. Contovounesios [Sat, 7 Jul 2018 16:33:08 +0000 (19:33 +0300)]
Fix (length NON-SEQUENCE) documentation

Suggested by Eli Zaretskii <eliz@gnu.org> in the following threads:
https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00171.html
https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00206.html

* doc/lispref/sequences.texi (Sequence Functions): Mention that
'length' signals a 'wrong-type-argument' also when given a
non-sequencep argument.

6 years ago* lisp/imenu.el: Require cl-lib, not internal components of same.
Glenn Morris [Sat, 7 Jul 2018 16:59:53 +0000 (09:59 -0700)]
* lisp/imenu.el: Require cl-lib, not internal components of same.

6 years ago* admin/make-tarball.txt, admin/release-process: Refcard tweaks.
Glenn Morris [Sat, 7 Jul 2018 16:34:16 +0000 (12:34 -0400)]
* admin/make-tarball.txt, admin/release-process: Refcard tweaks.

6 years agoMerge from origin/emacs-26
Glenn Morris [Sat, 7 Jul 2018 16:27:44 +0000 (09:27 -0700)]
Merge from origin/emacs-26

a427de9 (origin/emacs-26) Fix bug #11732
3a04e15 Improve documentation of 'emacs-lock-mode'
9d6ca5a * lisp/imenu.el (imenu-generic-expression): Doc fix.  (Bug#32...
fdd7e7d Improve indexing of 'eval-defun' in ELisp manual
10af989 Fix (length CIRCULAR) documentation
271d1f7 Tramp editorials
4abf94f Clarify and improve doc strings of 'eval-last-sexp' and friends
6cfc7a7 Automate upload of Emacs manuals to gnu.org
b73cde5 Fix MH-E mail composition with GNU Mailutils (SF#485)
0dce5e5 Speed up 'replace-buffer-contents' some more
00fdce0 * doc/emacs/docstyle.texi: Avoid messing up the html output.

Conflicts:
admin/make-tarball.txt

6 years agoFix 2 minor bugs in 'imenu--generic-function'
Drew Adams [Sat, 7 Jul 2018 16:20:45 +0000 (19:20 +0300)]
Fix 2 minor bugs in 'imenu--generic-function'

* lisp/imenu.el (imenu--generic-function): Move point to START
before checking whether the current item is inside a comment
or a string.  Remove any empty menus that could have been
added before returning.  (Bug#32024)

6 years agoFix bug #11732
Eli Zaretskii [Sat, 7 Jul 2018 11:30:00 +0000 (14:30 +0300)]
Fix bug #11732

* src/w32fns.c (w32_wnd_proc): Fix handling of Windows input
methods.  (Bug#11732)

6 years agoImprove documentation of 'emacs-lock-mode'
Eli Zaretskii [Sat, 7 Jul 2018 09:50:22 +0000 (12:50 +0300)]
Improve documentation of 'emacs-lock-mode'

* lisp/emacs-lock.el (emacs-lock-mode): Mention in the doc string
the special handling of some major modes due to
'emacs-lock-unlockable-modes'.

6 years ago* lisp/imenu.el (imenu-generic-expression): Doc fix. (Bug#32016)
Eli Zaretskii [Sat, 7 Jul 2018 09:34:26 +0000 (12:34 +0300)]
* lisp/imenu.el (imenu-generic-expression): Doc fix.  (Bug#32016)

6 years agoKeep interactive uses of 'recenter' backward compatible (Bug#31325)
John Shahid [Sun, 1 Jul 2018 18:48:24 +0000 (14:48 -0400)]
Keep interactive uses of 'recenter' backward compatible (Bug#31325)

* window.c (Frecenter): Change the interactive spec to always pass
a non-nil value to the REDISPLAY argument when called interactively.
* window.el (recenter-top-bottom): Make sure 'recenter's second
argument is non-nil everywhere.
* windows.texi (Textual Scrolling): Update documentation of
'recenter'.

6 years agoDocumentation followup for bug#32029
Eli Zaretskii [Sat, 7 Jul 2018 09:01:08 +0000 (12:01 +0300)]
Documentation followup for bug#32029

* etc/NEWS: Mention 'xref-find-definitions-at-mouse'

* doc/emacs/maintaining.texi (Looking Up Identifiers):
Document 'xref-find-definitions-at-mouse'.

6 years agoNew function 'xref-find-definitions-at-mouse'
Tobias Gerdin [Sat, 7 Jul 2018 08:59:56 +0000 (11:59 +0300)]
New function 'xref-find-definitions-at-mouse'

* lisp/progmodes/xref.el (xref-find-definitions-at-mouse): New
function.  (Bug32029)

Copyright-paperwork-exempt: yes

6 years agoImprove indexing of 'eval-defun' in ELisp manual
Eli Zaretskii [Sat, 7 Jul 2018 08:37:43 +0000 (11:37 +0300)]
Improve indexing of 'eval-defun' in ELisp manual

* doc/lispref/display.texi (Defining Faces):
* doc/lispref/debugging.texi (Explicit Debug):
* doc/lispref/customize.texi (Variable Definitions):
* doc/lispref/variables.texi (Defining Variables): Add index
entries for 'eval-defun'.  (Bug#32066)

6 years agoFix recent change in window.c
Eli Zaretskii [Sat, 7 Jul 2018 07:45:45 +0000 (10:45 +0300)]
Fix recent change in window.c

* src/window.c (scroll_command): Fix minor inefficiency in
last change: don't call Fset_buffer if the buffer is already set to be
what we want.  (Bug#31988)

6 years agoUpdate from gnulib
Paul Eggert [Sat, 7 Jul 2018 06:17:30 +0000 (23:17 -0700)]
Update from gnulib

This incorporates:
2018-07-04 gnulib-tool: minor tweaks for --gnu-make
* build-aux/config.guess, build-aux/config.sub: Copy from Gnulib.
* lib/gnulib.mk.in: Regenerate.

6 years agoFix scrolling
Basil L. Contovounesios [Fri, 6 Jul 2018 23:23:21 +0000 (16:23 -0700)]
Fix scrolling

* src/window.c (scroll_command): Fix scrolling.

6 years agoFix (length CIRCULAR) documentation
Paul Eggert [Fri, 6 Jul 2018 17:59:53 +0000 (10:59 -0700)]
Fix (length CIRCULAR) documentation

* doc/lispref/sequences.texi (Sequence Functions):
Correct documentation of what (length X) does when
X is a circular list.

6 years agoTramp editorials
Michael Albinus [Fri, 6 Jul 2018 12:03:42 +0000 (14:03 +0200)]
Tramp editorials

* doc/misc/tramp.texi (Android shell setup): Mention Termux.

* lisp/net/tramp-sh.el (tramp-remote-process-environment):
Use proper spelling "Tramp" in docstring.

6 years agoClarify and improve doc strings of 'eval-last-sexp' and friends
Eli Zaretskii [Fri, 6 Jul 2018 09:31:51 +0000 (12:31 +0300)]
Clarify and improve doc strings of 'eval-last-sexp' and friends

* lisp/simple.el (eval-expression, eval-expression-print-format):
* lisp/progmodes/elisp-mode.el (eval-last-sexp): Doc fixes.
(Bug#32064)

6 years agoAutomate upload of Emacs manuals to gnu.org
Glenn Morris [Fri, 6 Jul 2018 04:50:18 +0000 (21:50 -0700)]
Automate upload of Emacs manuals to gnu.org

* admin/make-manuals, admin/upload-manuals: New scripts.
* admin/admin.el (make-manuals, make-manuals-dist): Handle batch mode.
* admin/make-tarball.txt: Update web-page details.

6 years agoFix MH-E mail composition with GNU Mailutils (SF#485)
Mike Kupfer [Wed, 4 Jul 2018 22:43:04 +0000 (15:43 -0700)]
Fix MH-E mail composition with GNU Mailutils (SF#485)

* lisp/mh-e/mh-comp.el (mh-bare-components): Recursively delete
the temporary folder.

6 years ago* lisp/shell.el (shell-completion-vars):
Michael Albinus [Wed, 4 Jul 2018 07:04:55 +0000 (09:04 +0200)]
* lisp/shell.el (shell-completion-vars):

Set `comint-file-name-prefix' to "" for local default directory.

6 years agoAdjust to Gnulib change with -Wswitch-default
Paul Eggert [Wed, 4 Jul 2018 06:51:03 +0000 (23:51 -0700)]
Adjust to Gnulib change with -Wswitch-default

* configure.ac: Simplify by not bothering to omit
-Wswitch-default, as Gnulib no longer enables it by default.

6 years agoUpdate from Gnulib
Paul Eggert [Wed, 4 Jul 2018 06:47:52 +0000 (23:47 -0700)]
Update from Gnulib

This incorporates:
2018-07-01 getloadavg: don't redefine WINDOWS32
2018-07-01 manywarnings: omit -Wswitch-default
* build-aux/config.sub, lib/getloadavg.c, m4/manywarnings.m4:
Copy from Gnulib.

6 years agoFix Tcl indentation in a namespace
Tom Tromey [Wed, 4 Jul 2018 04:13:27 +0000 (22:13 -0600)]
Fix Tcl indentation in a namespace

Fixes bug#32035
* lisp/progmodes/tcl.el (tcl-proc-list): Add "namespace".
* test/lisp/progmodes/tcl-tests.el (tcl-mode-namespace-indent): New
test.

6 years ago* lisp/mail/sendmail.el: Use lexical-binding
Stefan Monnier [Tue, 3 Jul 2018 22:16:52 +0000 (18:16 -0400)]
* lisp/mail/sendmail.el: Use lexical-binding

(mail-recover-1): Declare dired-trivial-filenames.

6 years agoSpeed up 'replace-buffer-contents' some more
Eli Zaretskii [Tue, 3 Jul 2018 19:16:20 +0000 (22:16 +0300)]
Speed up 'replace-buffer-contents' some more

* src/editfns.c (EXTRA_CONTEXT_FIELDS): New members beg_a and beg_b.
(Freplace_buffer_contents): Set up ctx.beg_a and ctx.beg_b.
(buffer_chars_equal): Use ctx->beg_a and ctx->beg_b instead of
calling BUF_BEGV, which is expensive.  This speeds up the recipe
in bug#31888 by 30%.

6 years agoFix typo in --with-x-toolkit=no code
Paul Eggert [Tue, 3 Jul 2018 18:54:35 +0000 (11:54 -0700)]
Fix typo in --with-x-toolkit=no code

* src/xmenu.c (pop_down_menu) [!USE_X_TOOLKIT && !USE_GTK]:
Fix type typo introduced by 2018-06-14T22:59:08!eggert@cs.ucla.edu.

6 years agoAdjust previous jsonrpc change
João Távora [Tue, 3 Jul 2018 07:21:42 +0000 (08:21 +0100)]
Adjust previous jsonrpc change

(nth 2) is probably a better alternative to caddr, and in Emacs 26.1
we can pass 0 as :service to automatically find an available port.

* lisp/jsonrpc.el (jsonrpc--call-deferred): Use cl-caddr.

* test/lisp/jsonrpc-tests.el
(jsonrpc--call-with-emacsrpc-fixture): Pass 0 as :service to when
making the listen server.

6 years ago* doc/emacs/docstyle.texi: Avoid messing up the html output.
Glenn Morris [Tue, 3 Jul 2018 05:37:22 +0000 (22:37 -0700)]
* doc/emacs/docstyle.texi: Avoid messing up the html output.

Previously the @hyphenation commands somehow caused the <head>
section to go missing, with makeinfo 4.13 at least.