diff options
| author | Philip Kaludercic <philipk@posteo.net> | 2025-02-20 23:47:50 +0100 |
|---|---|---|
| committer | Philip Kaludercic <philipk@posteo.net> | 2025-02-20 23:47:50 +0100 |
| commit | 03e173ff2fc625e29249ece8a774695cbb3196d3 (patch) | |
| tree | e1bb44380dc599a2b9a68f75dc5f20fc7572362f | |
| parent | bfc0a46098be2dcaad0518ec200ff5a2be5cc9bb (diff) | |
Prepare support for Emacs 31
| -rw-r--r-- | Makefile | 1 | ||||
| -rw-r--r-- | compat-31.el | 32 | ||||
| -rw-r--r-- | compat.el | 6 | ||||
| -rw-r--r-- | compat.texi | 26 |
4 files changed, 62 insertions, 3 deletions
@@ -46,6 +46,7 @@ BYTEC = compat-25.elc \ compat-28.elc \ compat-29.elc \ compat-30.elc \ + compat-31.elc \ compat.elc \ compat-macs.elc \ compat-tests.elc diff --git a/compat-31.el b/compat-31.el new file mode 100644 index 0000000..cd519c6 --- /dev/null +++ b/compat-31.el @@ -0,0 +1,32 @@ +;;; compat-31.el --- Functionality added in Emacs 31 -*- lexical-binding: t; -*- + +;; Copyright (C) 2025 Free Software Foundation, Inc. + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <https://www.gnu.org/licenses/>. + +;;; Commentary: + +;; Functionality added in Emacs 31, needed by older Emacs versions. + +;;; Code: + +(eval-when-compile (load "compat-macs.el" nil t t)) +(compat-require compat-30 "30.1") + +;; TODO Update to 31.1 as soon as the Emacs emacs-31 branch version bumped +(compat-version "31.0.50") + + +(provide 'compat-31) +;;; compat-31.el ends here @@ -50,9 +50,9 @@ ;; time and runtime, but only if needed. (eval-when-compile (defmacro compat--maybe-require () - (when (version< emacs-version "30.0.50") - (require 'compat-30) - '(require 'compat-30)))) + (when (version< emacs-version "31.0.50") + (require 'compat-31) + '(require 'compat-31)))) (compat--maybe-require) ;;;; Macros for extended compatibility function calls diff --git a/compat.texi b/compat.texi index 1534e4c..2743071 100644 --- a/compat.texi +++ b/compat.texi @@ -75,6 +75,7 @@ Support * Emacs 28.1:: Compatibility support for Emacs 28.1 * Emacs 29.1:: Compatibility support for Emacs 29.1 * Emacs 30.1:: Compatibility support for Emacs 30.1 +* Emacs 31.1:: Compatibility support for Emacs 31.1 @end detailmenu @end menu @@ -311,6 +312,7 @@ manage to provide for each Emacs version. * Emacs 28.1:: Compatibility support for Emacs 28.1 * Emacs 29.1:: Compatibility support for Emacs 29.1 * Emacs 30.1:: Compatibility support for Emacs 30.1 +* Emacs 31.1:: Compatibility support for Emacs 31.1 @end menu @node Emacs 25.1 @@ -3686,6 +3688,30 @@ argument must not contain cycles. Compat does not provide support for the following Lisp features implemented in 30.1: +@node Emacs 31.1 +@section Emacs 31.1 + +@subsection Added Definitions +The following functions and macros are implemented in Emacs +31.1. These functions are made available by Compat on Emacs versions +older than 31.1. Note that due to upstream changes, it might happen +that there will be the need for changes, so use these functions with +care. + +@c Placeholder + +@subsection Extended Definitions +These functions must be called explicitly via @code{compat-call}, +since their calling convention or behavior was extended in Emacs 31.1: + +@c Placeholder + +@subsection Missing Definitions +Compat does not provide support for the following Lisp features +implemented in 31.1: + +@c Placeholder + @node Development @chapter Development |
