From: Glenn Morris Date: Tue, 23 Oct 2018 16:39:11 +0000 (-0700) Subject: Merge from origin/emacs-26 X-Git-Tag: emacs-27.0.90~4259 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5aa41f775e1e69dba7c6f2b2a8d0334ca9c2cfdb;p=emacs.git Merge from origin/emacs-26 2efd400 (origin/emacs-26) Correct typo in GNU ELPA url 6239016 * doc/misc/dired-x.texi (Omitting Variables): Fix wording. (B... 1531bca Fix help-form binding in dired-create-files cf79327 Fix a pasto in a Gnus doc string a4e40f6 ; * doc/emacs/files.texi (Reverting): Improve wording in last... f632ecb Update revert-buffer documentation eb67689 * lisp/mail/smtpmail.el (smtpmail-send-queued-mail): Load fil... 433e364 ; * etc/NEWS: Announce that emacs-module.h is now installed. # Conflicts: # lisp/mail/smtpmail.el --- 5aa41f775e1e69dba7c6f2b2a8d0334ca9c2cfdb diff --cc etc/NEWS index 7a98b492f13,dfafe7c5c94..ce849e49909 --- a/etc/NEWS +++ b/etc/NEWS @@@ -15,56 -15,43 +15,62 @@@ in older Emacs versions You can narrow news to a specific version by calling 'view-emacs-news' with a prefix argument or by typing C-u C-h C-n. - -* Installation Changes in Emacs 26.2 - ---- -** Building Emacs with the '--with-xwidgets' option now requires WebKit2. -To build Emacs with xwidgets support, you will need to install the -webkit2gtk-4.0 package; version 2.12 or later is required. -(This change was actually made in Emacs 26.1, but was not called out -in its NEWS.) +Temporary note: ++++ indicates that all necessary documentation updates are complete. + (This means all relevant manuals in doc/ AND lisp doc-strings.) +--- means no change in the manuals is needed. +When you add a new item, use the appropriate mark if you are sure it applies, + +++ + ** Installing Emacs now installs the emacs-module.h file. + The emacs-module.h file is now installed in the system-wide include + directory as part of the Emacs installation. This allows to build + Emacs modules outside of the Emacs source tree. + -* Startup Changes in Emacs 26.2 +* Installation Changes in Emacs 27.1 + +** Emacs now uses GMP, the GNU Multiple Precision library. +By default, if 'configure' does not find a suitable libgmp, it +arranges for the included mini-gmp library to be built and used. +The new 'configure' option --without-libgmp uses mini-gmp even if a +suitable libgmp is available. + +** The new configure option '--with-json' adds support for JSON using +the Jansson library. It is on by default; use 'configure +--with-json=no' to build without Jansson support. The new JSON +functions 'json-serialize', 'json-insert', 'json-parse-string', and +'json-parse-buffer' are typically much faster than their Lisp +counterparts from json.el. + +** The etags program now uses the C library's regular expression matcher +when possible, and a compatible regex substitute otherwise. This will +let developers maintain Emacs's own regex code without having to also +support other programs. The new configure option '--without-included-regex' +forces etags to use the C library's regex matcher even if the regex +substitute ordinarily would be used to work around compatibility problems. + +** Emacs has been ported to the -fcheck-pointer-bounds option of GCC. +This causes Emacs to check bounds of some arrays addressed by its +internal pointers, which can be helpful when debugging the Emacs +interpreter or modules that it uses. If your platform supports it you +can enable it when configuring, e.g., './configure CFLAGS="-g3 -O2 +-mmpx -fcheck-pointer-bounds"' on Intel MPX platforms. + +** Emacs now normally uses a C pointer type instead of a C integer +type to implement Lisp_Object, which is the fundamental machine word +type internal to the Emacs Lisp interpreter. This change aims to +catch typos and support -fcheck-pointer-bounds. The 'configure' +option --enable-check-lisp-object-type is therefore no longer as +useful and so is no longer enabled by default in developer builds, +to reduce differences between developer and production builds. - -* Changes in Emacs 26.2 +** Ibuffer --- -** Emacs is now compliant with the latest version 11.0 of the Unicode Standard. - ---- -** New variable 'xft-ignore-color-fonts'. -Default t means don't try to load color fonts when using Xft, as they -often cause crashes. Set it to nil if you really need those fonts. - - -* Editing Changes in Emacs 26.2 - - -* Changes in Specialized Modes and Packages in Emacs 26.2 - -** Ibuffer +*** All mode filters can now accept a list of symbols. +This means you can now easily filter several major modes, as well +as a single mode. --- *** New toggle 'ibuffer-do-toggle-lock', bound to 'L'. diff --cc lisp/mail/smtpmail.el index 9b045b25584,baf50dd01b7..8a1e86b7750 --- a/lisp/mail/smtpmail.el +++ b/lisp/mail/smtpmail.el @@@ -404,22 -409,9 +404,22 @@@ for `smtpmail-try-auth-method'." (insert-file-contents qfile) (goto-char (point-min)) (while (not (eobp)) - (setq file-msg (buffer-substring (point) (line-end-position))) + (setq file-data (buffer-substring (point) (line-end-position))) + (setq file-elisp (concat file-data ".el")) - (load file-elisp) + ;; FIXME: Avoid `load' which can execute arbitrary code and is hence + ;; a source of security holes. Better read the file and extract the + ;; data "by hand". - ;;(load file-msg) ++ ;;(load file-elisp) + (with-temp-buffer - (insert-file-contents (concat file-msg ".el")) ++ (insert-file-contents file-elisp) + (goto-char (point-min)) + (pcase (read (current-buffer)) + (`(setq smtpmail-recipient-address-list ',v) + (skip-chars-forward " \n\t") + (unless (eobp) (message "Ignoring trailing text in %S" - (concat file-msg ".el"))) ++ file-elisp)) + (setq smtpmail-recipient-address-list v)) - (sexp (error "Unexpected code in %S: %S" - (concat file-msg ".el") sexp)))) ++ (sexp (error "Unexpected code in %S: %S" file-elisp sexp)))) ;; Insert the message literally: it is already encoded as per ;; the MIME headers, and code conversions might guess the ;; encoding wrongly.