If gnustep-config is not available, the old heuristics are used.
---
-** The configure option `--with-pkg-config-prog' has been removed.
+** The configure option '--with-pkg-config-prog' has been removed.
Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to.
+---
+** The configure option '--with-mmdf' has been removed.
+It was no longer useful, as it relied on libraries that are no longer
+supported, and its presence led to confusion during configuration.
+This affects only the 'movemail' utility; Emacs itself can still
+process MMDF-format files as before.
+
** The configure option '--enable-silent-rules' is now the default,
and silent rules are now quieter. To get the old behavior where
'make' chatters a lot, configure with '--disable-silent-rules' or
In particular, it now returns the average width of the font's
characters, which can be used for geometry-related calculations.
+** A new function `default-font-width' returns the average width of a
+character in the current buffer's default font. If the default face
+is remapped (see `face-remapping-alist'), the value for the remapped
+face is returned. This function complements the existing function
+`default-font-height'.
+
+** New functions `window-font-height' and `window-font-width' return
+the height and average width of characters in a specified face and
+window. If FACE is remapped (see `face-remapping-alist'), the
+function returns the information for the remapped face.
+
+** A new function `window-max-chars-per-line' returns the maximal
+number of characters that can be displayed on one line. If a face
+and/or window are provided, these values are used for the
+calculation. This function is different from `window-body-width' in
+that it accounts for (i) continuation glyphs, (ii) the size of the
+font, and (iii) the specified window.
+
+** New possible value for `system-type': nacl.
+
++++
+** New variable `inhibit-message', when bound to non-nil, inhibits
+ `message' and related functions from displaying messages the Echo
+ Area. The output is still logged to the *Messages* buffer.
+
\f
* Editing Changes in Emacs 25.1
+** Successive single-char deletions are collapsed in the undo-log just like
+successive char insertions.
+
** Unicode names entered via C-x 8 RET now use substring completion by default.
** New minor mode global-eldoc-mode is enabled by default.
** You can access `mouse-buffer-menu' (C-down-mouse-1) using C-f10.
++++
+** New buffer-local `electric-pair-local-mode'.
+
\f
* Changes in Specialized Modes and Packages in Emacs 25.1
+
+** New `xterm-screen-extra-capabilities' config.
+
+** The `save-place' variable is replaced by a `save-place-mode'.
+
+** Midnight-mode
+*** `midnight-mode' is a proper minor mode.
+*** clean-buffer-*-regexps can now specify buffers via predicate functions.
+
+** In xterms, killing text now also sets the CLIPBOARD/PRIMARY selection
+in the surrounding GUI (using the OSC-52 escape sequence). This only works
+if your xterm supports it and enables the `allowWindowOps' options (disabled
+by default at least in Debian, for security reasons).
+
+** xterm-mouse-mode now supports mouse-tracking (if your xterm supports it).
+
** package.el
+
+*** New "external" package status.
+An external package is any installed package that's not built-in and
+not from `package-user-dir', which usually means it's from an entry in
+`package-directory-list'. They are treated much like built-in
+packages, in that they cannot be deleted through the package menu and
+are not considered for upgrades.
+
+The effect, is that a user can manually place a specific version of a
+package inside `package-directory-list' and the package menu will
+always respect that.
+
+*** If a package is available on multiple archives and one has higher
+priority (as per `package-archive-priorities') only that one is
+listed. This can be configured with `package-menu-hide-low-priority'.
+
+*** `package-menu-hide-obsolete' now toggles the hiding of packages.
+This includes the above-mentioned low-priority packages, as well as
+available packages whose version is lower than the currently installed
+version (which were previously impossible to display).
+This allows users to downgrade a package if a lower version is
+available.
+
+*** When filtering the package menu, keywords starting with "arc:" or
+"status:" represent package archive or status, respectively, instead
+of actual keywords.
+
+*** Most functions which involve downloading information now take an
+ASYNC argument. If it is non-nil, package.el performs the download(s)
+asynchronously.
+
+*** New variable `package-menu-async' controls whether the
+package-menu uses asynchronous downloads.
+
*** `package-install-from-buffer' and `package-install-file' work on directories.
This follows the same rules as installing from a .tar file, except the
-pkg file is optional.
** EIEIO
++++
*** The `:protection' slot option is not obeyed any more.
++++
*** The `newname' argument to constructors is optional&deprecated.
If you need your objects to be named, do it by inheriting from `eieio-named'.
++++
*** The <class>-list-p and <class>-child-p functions are declared obsolete.
++++
*** The <class> variables are declared obsolete.
++++
*** The <initarg> variables are declared obsolete.
*** defgeneric and defmethod are declared obsolete.
++++
*** `constructor' is now an obsolete alias for `make-instance'.
** ido
transformed into multipart/related messages before sending.
** pcase
-*** New UPatterns `quote' and `app'.
+*** New UPatterns `quote', `app', `cl-struct', and `eieio'.
*** New UPatterns can be defined with `pcase-defmacro'.
+++
*** New vector QPattern.
** New ERT function `ert-summarize-tests-batch-and-exit'.
-** New js.el option `js-indent-first-initialiser'.
+** New js.el option `js-indent-first-init'.
---
** `Info-fontify-maximum-menu-size' can be t for no limit.
*** Two new faces `compare-windows-removed' and `compare-windows-added'
replace the obsolete face `compare-windows'.
+---
+*** `log-edit-insert-changelog' converts "(tiny change)" to
+"Copyright-paperwork-exempt: yes". Set `log-edit-rewrite-tiny-change'
+nil to disable this.
+
** VHDL mode supports VHDL'08.
** Calculator: decimal display mode uses "," groups, so it's more
*** Custom variable `eudc-inline-expansion-format' defaults to
"Firstname Surname <mail-address>".
+*** Custom variable `eudc-options-file' defaults to
+"~/.emacs.d/eudc-options".
+
*** New custom variable `ldap-ldapsearch-password-prompt-regexp' to
allow overriding the regular expression that recognizes the ldapsearch
command line's password prompt.
+** Eshell
+
++++
+*** The new built-in command `clear' can scroll window contents out of sight.
+If provided with an optional non-nil argument, the scrollback contents will be cleared.
+
+** Browse-url
+
+*** Support for the Conkeror web browser.
+
+---
+*** Support for several ancient browsers is now officially obsolete.
+
+++
** tar-mode: new `tar-new-entry' command, allowing for new members to
be added to the archive.
---
*** gulp.el
++++
+** The character classes [:graph:] and [:print:] in regular expressions
+no longer match every multibyte character. Instead, Emacs now
+consults the Unicode character properties to determine which
+characters are graphic or printable. In particular, surrogates and
+unassigned codepoints are now rejected. If you want the old behavior,
+use [:multibyte:] instead.
+
\f
* New Modes and Packages in Emacs 25.1
\f
* Incompatible Lisp Changes in Emacs 25.1
+** `indirect-function' does not signal `void-function' any more.
+This is mostly a bug-fix, since this change was missed back in 24.4 when
+symbol-function was changed not to signal `void-function' any more.
+*** As a consequence, the second arg of `indirect-function' is now obsolete.
+
+** Comint, term, and compile do not set the EMACS env var any more.
+Use the INSIDE_EMACS environment variable instead.
+
+** `save-excursion' does not save&restore the mark any more.
+
+** read-buffer-function can now be called with a 4th argument (`predicate').
+
** completion-table-dynamic stays in the minibuffer.
If you want the old behavior of calling the function in the buffer
from which the minibuffer was entered, call it with the new argument
** `cl-the' now asserts that its argument is of the given type.
+** `process-running-child-p` may now return a numeric process
+group ID instead of `t'.
+
+++
** Mouse click events on mode line or header line no longer include
any reference to a buffer position. The 6th member of the mouse
If you want the old behavior where they matched any character with
word syntax, use `\sw' instead.
++++
+** The `diff' command uses the unified format now. To restore the old
+behavior, set `diff-switches' to `-c'.
+
\f
* Lisp Changes in Emacs 25.1
+** The default value of `load-read-function' is now `read'.
+
+** New hook `pre-redisplay-functions', a bit easier to use than pre-redisplay-function.
+
+** The second arg of `looking-back' should always be provided explicitly.
+
+** Obsolete text properties `intangible', `point-entered', and `point-left'.
+Replaced by properties `cursor-intangible' and `cursor-sensor-functions',
+implemented by the new `cursor-intangible-mode' and
+`cursor-sensor-mode' minor modes.
+
+** New process type `pipe', which can be used in combination with the
+`:stderr' keyword of make-process to handle standard error output
+of subprocess.
+
+** New function `make-process' provides an alternative interface to
+`start-process'. It allows programs to set process parameters such as
+process filter, sentinel, etc., through keyword arguments (similar to
+`make-network-process').
+
+** `read-buffer' takes a new `predicate' argument.
+
** Emacs Lisp now supports generators.
** New finalizer facility for running code when objects
+++
** Function `write-region' no longer outputs "Wrote FILE" in batch mode.
+** If `pwd' is called with a prefix argument, insert the current default
+directory at point.
+
---
** New utilities in subr-x.el:
*** New macros `if-let' and `when-let' allow defining bindings and to
** New function `set-binary-mode' allows to switch a standard stream
of the Emacs process to binary I/O mode.
+** Miscellaneous name change
+
+For consistency with the usual Emacs spelling, the Lisp variable
+`hfy-optimisations' has been renamed to `hfy-optimizations'.
+The old name should still work, as an obsolescent alias.
+
\f
* Changes in Frames and Windows Code in Emacs 25.1