From 82e16cae9cc02d6807561861621cf7b5b9ba928f Mon Sep 17 00:00:00 2001 From: Hong Xu Date: Sat, 4 Jan 2025 12:32:24 -0800 Subject: [PATCH 01/17] Improve the documentation of 'key-valid-p' * lisp/keymap.el (key-valid-p): Add an function key and mouse button example. Mention '' as a cursor control key instead of a function key. Briefly explain what an event may be. (Bug#75366) --- lisp/keymap.el | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lisp/keymap.el b/lisp/keymap.el index 081c7d139aa..f74a84e8806 100644 --- a/lisp/keymap.el +++ b/lisp/keymap.el @@ -327,21 +327,26 @@ KEYS should be a string consisting of one or more key strokes, with a single space character separating one key stroke from another. Each key stroke is either a single character, or the name of an -event, surrounded by angle brackets . In addition, any -key stroke may be preceded by one or more modifier keys. Finally, -a limited number of characters have a special shorthand syntax. +event, surrounded by angle brackets . An event may be +pushing a key, clicking on a menu item, pressing a mouse button, etc. +In addition, any key stroke may be preceded by one or more modifier +keys. Finally, a limited number of characters have a special shorthand +syntax. Here are some example of valid key sequences. \"f\" (the key `f') + \"\" (the function key named \"F6\") + \"\" (the mouse button named \"mouse-1\", commonly referred to as + the left button) \"S o m\" (a three-key sequence of the keys `S', `o' and `m') \"C-c o\" (a two-key sequence: the key `c' with the control modifier followed by the key `o') - \"H-\" (the function key named \"left\" with the hyper modifier) + \"H-\" (the cursor control key named \"left\" with the hyper modifier) \"M-RET\" (the \"return\" key with a meta modifier) \"C-M-\" (the \"space\" key with both the control and meta modifiers) -These are the characters that have special shorthand syntax: +These characters have special shorthand syntax: NUL, RET, TAB, LFD, ESC, SPC, DEL. Modifiers have to be specified in this order: From 505c1123e18a8a710fc60e05a4c870497bf580f4 Mon Sep 17 00:00:00 2001 From: Michael Albinus Date: Sun, 5 Jan 2025 09:25:37 +0100 Subject: [PATCH 02/17] * INSTALL: Add advice how to invoke 'make install'. (Bug#74400) --- INSTALL | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/INSTALL b/INSTALL index d2705d3a44d..8580ad7003d 100644 --- a/INSTALL +++ b/INSTALL @@ -671,6 +671,12 @@ for its Lisp files by giving values for 'make' variables as part of the command. See the section below called 'MAKE VARIABLES' for more information on this. +If the directories where 'make install' installs files are not writable +by your user, you might prefer invoking 'make && sudo make install' +instead. This first invokes 'make' to make sure all the required files +are rebuilt with your user's permissions and ownership, and then +installs them using the permissions of root. + 7) Check the file 'dir' in your site's info directory (usually /usr/local/share/info) to make sure that it has a menu entry for the Emacs info files. From 1c49edc40802ed4bb5f36c44b00e954efbddd42a Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 7 Jan 2025 06:12:21 +0100 Subject: [PATCH 03/17] Modernize "Commentary" section of files.el * lisp/files.el: Modernize "Commentary" section. (Bug#75398) --- lisp/files.el | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/files.el b/lisp/files.el index 05fa09a9f4e..bad24c31d1c 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1,4 +1,4 @@ -;;; files.el --- file input and output commands for Emacs -*- lexical-binding:t -*- +;;; files.el --- file input and output commands -*- lexical-binding:t -*- ;; Copyright (C) 1985-1987, 1992-2025 Free Software Foundation, Inc. @@ -22,9 +22,9 @@ ;;; Commentary: -;; Defines most of Emacs's file- and directory-handling functions, -;; including basic file visiting, backup generation, link handling, -;; ITS-id version control, load- and write-hook handling, and the like. +;; Defines Emacs's basic file- and directory-handling functions, +;; including basic file visiting, backup file generation and versioning, +;; link handling, load- and write-hook handling, and the like. ;;; Code: From ee1034422b0c84722a237ab6fdd410ab74674ee6 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 7 Jan 2025 17:20:22 +0200 Subject: [PATCH 04/17] ; Improve documentation of function-type display * etc/NEWS: Document 'help-display-function-type'. * doc/lispref/functions.texi (Declare Form): * doc/lispref/objects.texi (Type Specifiers): * doc/emacs/help.texi (Name Help): Better indexing of function types. (Bug#65288) --- doc/emacs/help.texi | 3 ++- doc/lispref/functions.texi | 1 + doc/lispref/objects.texi | 1 + etc/NEWS | 8 ++++++-- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi index 2e0eb0d6459..5c2eabb02d6 100644 --- a/doc/emacs/help.texi +++ b/doc/emacs/help.texi @@ -323,7 +323,8 @@ yet further information is often reachable by clicking or typing @key{RET} on emphasized parts of the text. @cindex function type specifier - +@cindex declared type of a function +@cindex inferred type of a function The function type, if known, is expressed with a @dfn{function type specifier} (@pxref{Type Specifiers,,,elisp, The Emacs Lisp Reference Manual}), it will be specified if the type was manually declared by a diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi index dc9443b69bc..6f65ff95c44 100644 --- a/doc/lispref/functions.texi +++ b/doc/lispref/functions.texi @@ -2726,6 +2726,7 @@ function. This allows function-level control of the safety level used for the code emitted for the function (@pxref{Native-Compilation Variables}). +@cindex function type declaration @item (ftype @var{type} &optional @var{function}) Declare @var{type} to be the type of this function. This is used for documentation by @code{describe-function}. Also it can be used by the diff --git a/doc/lispref/objects.texi b/doc/lispref/objects.texi index 3bd5a4528b0..630765213a2 100644 --- a/doc/lispref/objects.texi +++ b/doc/lispref/objects.texi @@ -1545,6 +1545,7 @@ The @code{not} type specifier defines any type except the specified one. The @code{member} type specifier allows to specify a type that includes only the explicitly listed values. +@cindex declared type of a function @item (function (@var{arg-1-type} @dots{} @var{arg-n-type}) @var{return-type}) The @code{function} type specifier is used to describe the argument types and the return type of a function. Argument types can be interleaved diff --git a/etc/NEWS b/etc/NEWS index 6b2831e3809..31a0c4938ad 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -481,9 +481,13 @@ This user option controls outline visibility in the output buffer of 'describe-bindings' when 'describe-bindings-outline' is non-nil. --- -*** 'describe-function' shows the function inferred type when available. +*** 'describe-function' shows the function's inferred type when available. For native compiled Lisp functions, 'describe-function' prints (after -the signature) the automatically inferred function type as well. +the signature) the automatically inferred function type as well. If the +function's type was explicitly declared (via the 'declare' form's +'ftype' property), 'describe-function' shows the declared type. This is +controlled by the new user option 'help-display-function-type', which is +by default t; customize to nil to disable function type display. --- *** 'describe-function' now shows the type of the function object. From 4210e065648dcc4fd7fbc22298047d19d679c84f Mon Sep 17 00:00:00 2001 From: Ellis Kenyo Date: Tue, 7 Jan 2025 15:43:58 +0000 Subject: [PATCH 05/17] Add language server for Odin * lisp/progmodes/eglot.el (eglot-server-programs): Add language server for the Odin programming language. (Bug#75421) Copyright-paperwork-exempt: yes --- lisp/progmodes/eglot.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lisp/progmodes/eglot.el b/lisp/progmodes/eglot.el index 5a7b14fcb17..02bb844b54e 100644 --- a/lisp/progmodes/eglot.el +++ b/lisp/progmodes/eglot.el @@ -341,7 +341,8 @@ automatically)." (sml-mode . ,(lambda (_interactive project) (list "millet-ls" (project-root project)))) - ((blueprint-mode blueprint-ts-mode) . ("blueprint-compiler" "lsp"))) + ((blueprint-mode blueprint-ts-mode) . ("blueprint-compiler" "lsp")) + ((odin-mode odin-ts-mode) . ("ols"))) "How the command `eglot' guesses the server to start. An association list of (MAJOR-MODE . CONTACT) pairs. MAJOR-MODE identifies the buffers that are to be managed by a specific From 002960ceabfb4f91b1bc73a342a9bd5e719e739b Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 8 Jan 2025 04:50:53 +0100 Subject: [PATCH 06/17] Clarify that 'mac' line ending convention is not used on macOS * doc/emacs/mule.texi (Coding Systems): * doc/lispref/nonascii.texi (Coding System Basics): Clarify that the 'mac' line ending convention is not used on macOS, and is now rare outside of legacy software. --- doc/emacs/mule.texi | 2 +- doc/lispref/nonascii.texi | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi index 580f8da27d7..4db0febbef8 100644 --- a/doc/emacs/mule.texi +++ b/doc/emacs/mule.texi @@ -832,7 +832,7 @@ format, which Emacs doesn't support directly.}) @item @dots{}-mac Assume the file uses carriage return to separate lines, and do the appropriate conversion. (This was the convention used in Classic Mac -OS.) +OS, but is now rare outside of legacy software.) @end table These variant coding systems are omitted from the diff --git a/doc/lispref/nonascii.texi b/doc/lispref/nonascii.texi index 0e09770bf49..696e46d4af9 100644 --- a/doc/lispref/nonascii.texi +++ b/doc/lispref/nonascii.texi @@ -1096,13 +1096,13 @@ that result from encoding unsupported characters. @cindex EOL conversion @cindex end-of-line conversion @cindex line end conversion - @dfn{End of line conversion} handles three different conventions -used on various systems for representing end of line in files. The -Unix convention, used on GNU and Unix systems, is to use the linefeed -character (also called newline). The DOS convention, used on + @dfn{End of line conversion} handles three different conventions used +on various systems for representing end of line in files. The Unix +convention, used on GNU and Unix systems, and macOS, is to use the +linefeed character (also called newline). The DOS convention, used on MS-Windows and MS-DOS systems, is to use a carriage return and a -linefeed at the end of a line. The Mac convention is to use just -carriage return. (This was the convention used in Classic Mac OS.) +linefeed. The Mac convention, used in Classic Mac OS and now rare +outside of legacy software, is to use just carriage return. @cindex base coding system @cindex variant coding system From 313a191d047a9d7d24ad0fee55739ce6133d887e Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 9 Jan 2025 03:08:29 +0100 Subject: [PATCH 07/17] ; * admin/MAINTAINERS: Remove Kelvin White. --- admin/MAINTAINERS | 5 ----- 1 file changed, 5 deletions(-) diff --git a/admin/MAINTAINERS b/admin/MAINTAINERS index 9bfdcdc7489..2317337303b 100644 --- a/admin/MAINTAINERS +++ b/admin/MAINTAINERS @@ -251,11 +251,6 @@ maintainership to someone listed above, but who want to continue to be CC'd as though they were still the primary maintainer, in the meantime. ============================================================================== -Kelvin White - ERC - lisp/erc/* - doc/misc/erc.texi - Eli Zaretskii doc/* From 59c57337923ed515e923ea65f168e1197d376868 Mon Sep 17 00:00:00 2001 From: Nikolaos Chatzikonstantinou Date: Sun, 5 Jan 2025 08:16:06 -0500 Subject: [PATCH 08/17] Improve doc string of 'package-delete' * lisp/emacs-lisp/package.el (package-delete): Elaborate on the kind of argument expected by the function. (Bug#75382) --- lisp/emacs-lisp/package.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 0fc5aaac343..be3b85f3179 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -2498,8 +2498,9 @@ compiled." (defun package-delete (pkg-desc &optional force nosave) "Delete package PKG-DESC. -Argument PKG-DESC is a full description of package as vector. -Interactively, prompt the user for the package name and version. +Argument PKG-DESC is the full description of the package, for example as +obtained by `package-get-descriptor'. Interactively, prompt the user +for the package name and version. When package is used elsewhere as dependency of another package, refuse deleting it and return an error. From 01464fc882dbb56d4271fbb89b7b847e8374d39c Mon Sep 17 00:00:00 2001 From: Kohei Tsuruta Date: Tue, 7 Jan 2025 07:36:14 -0800 Subject: [PATCH 09/17] Add "text" as a thing in tsx-ts-mode * lisp/progmodes/typescript-ts-mode.el (tsx-ts-mode): Add definition of "text" (bug#75422). Copyright-paperwork-exempt: yes --- lisp/progmodes/typescript-ts-mode.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/progmodes/typescript-ts-mode.el b/lisp/progmodes/typescript-ts-mode.el index 4a38d1da596..0ffcb144771 100644 --- a/lisp/progmodes/typescript-ts-mode.el +++ b/lisp/progmodes/typescript-ts-mode.el @@ -564,7 +564,9 @@ at least 3 (which is the default value)." (sentence ,(regexp-opt (append typescript-ts-mode--sentence-nodes '("jsx_element" - "jsx_self_closing_element"))))))) + "jsx_self_closing_element")))) + (text ,(regexp-opt '("comment" + "template_string")))))) ;; Font-lock. (setq-local treesit-font-lock-settings From 7f76f872ebfd67fb52974426c47bf3d08724d716 Mon Sep 17 00:00:00 2001 From: Randy Taylor Date: Sun, 5 Jan 2025 16:48:00 -0500 Subject: [PATCH 10/17] Fix go-ts-mode var spec indentation (Bug#75362) v0.21.1 and onwards changed how this was indented. * lisp/progmodes/go-ts-mode.el (go-ts-mode--indent-rules): Add rule for var_spec_list. --- lisp/progmodes/go-ts-mode.el | 1 + 1 file changed, 1 insertion(+) diff --git a/lisp/progmodes/go-ts-mode.el b/lisp/progmodes/go-ts-mode.el index 3322cc24b3e..1e948f7785a 100644 --- a/lisp/progmodes/go-ts-mode.el +++ b/lisp/progmodes/go-ts-mode.el @@ -93,6 +93,7 @@ ((parent-is "type_spec") parent-bol go-ts-mode-indent-offset) ((parent-is "type_switch_statement") parent-bol 0) ((parent-is "var_declaration") parent-bol go-ts-mode-indent-offset) + ((parent-is "var_spec_list") parent-bol go-ts-mode-indent-offset) (no-node parent-bol 0))) "Tree-sitter indent rules for `go-ts-mode'.") From 6de2ee5663d5cc51831dbdafd77bd71e0811c37b Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 11 Jan 2025 02:28:15 +0100 Subject: [PATCH 11/17] Document string-as-{unibyte,multibyte} as obsolete in manual * doc/lispref/nonascii.texi (Selecting a Representation): Document string-as-unibyte and string-as-multibyte as obsolete. --- doc/lispref/nonascii.texi | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/lispref/nonascii.texi b/doc/lispref/nonascii.texi index 696e46d4af9..43d4181e045 100644 --- a/doc/lispref/nonascii.texi +++ b/doc/lispref/nonascii.texi @@ -341,6 +341,9 @@ buffer. An indirect buffer always inherits the representation of its base buffer. @end defun +The following two functions are obsolete and will be removed in a future +version of Emacs; use @code{encode-coding-string} instead. + @defun string-as-unibyte string If @var{string} is already a unibyte string, this function returns @var{string} itself. Otherwise, it returns a new string with the same From dabaea97465163c015890272c3d5001624690e08 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 11 Jan 2025 05:05:14 +0100 Subject: [PATCH 12/17] Improve checkdoc-common-verbs-wrong-voice docstring * lisp/emacs-lisp/checkdoc.el (checkdoc-common-verbs-wrong-voice): Improve docstring. --- lisp/emacs-lisp/checkdoc.el | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/emacs-lisp/checkdoc.el b/lisp/emacs-lisp/checkdoc.el index d6e94789c07..e6c2b8306be 100644 --- a/lisp/emacs-lisp/checkdoc.el +++ b/lisp/emacs-lisp/checkdoc.el @@ -484,10 +484,10 @@ this to anything but t is likely to be counter-productive.") ("yanks" . "yank") ) "Alist of common words in the wrong voice and what should be used instead. -Set `checkdoc-verb-check-experimental-flag' to nil to avoid this costly -and experimental check. Do not modify this list without setting -the value of `checkdoc-common-verbs-regexp' to nil which cause it to -be re-created.") +Set `checkdoc-verb-check-experimental-flag' to a non-nil value to enable +this experimental check. Do not modify this list without setting the +value of `checkdoc-common-verbs-regexp' to nil, which causes it to be +re-created.") (defvar checkdoc-syntax-table (let ((st (make-syntax-table emacs-lisp-mode-syntax-table))) From fa1470d0699172e0913290c78c66da293aa43f89 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 11 Jan 2025 05:18:51 +0100 Subject: [PATCH 13/17] ; Remove duplicated word in files.el Commentary --- lisp/files.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/files.el b/lisp/files.el index bad24c31d1c..b64935e8d9e 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -23,7 +23,7 @@ ;;; Commentary: ;; Defines Emacs's basic file- and directory-handling functions, -;; including basic file visiting, backup file generation and versioning, +;; including file visiting, backup file generation and versioning, ;; link handling, load- and write-hook handling, and the like. ;;; Code: From ce43d13593a44ba36ba6702cf276fef8711ab738 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 11 Jan 2025 07:09:23 +0100 Subject: [PATCH 14/17] ; Simplify admin/run-codespell * admin/run-codespell (emacs_run_codespell): Simplify. Use env in shebang to use more recent bash on macOS. --- admin/run-codespell | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/admin/run-codespell b/admin/run-codespell index be90313da1e..f5728f831f0 100755 --- a/admin/run-codespell +++ b/admin/run-codespell @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash ### run-codespell - run codespell on Emacs ## Copyright (C) 2023-2025 Free Software Foundation, Inc. @@ -40,22 +40,22 @@ CODESPELL_DICTIONARY="${CODESPELL_DIR}/codespell.dictionary" emacs_run_codespell () { git ls-files |\ - grep -v -E -e '^(lib|m4)/.*' |\ - grep -v -E -e '^admin/(charsets|codespell|unidata)/.*' |\ - grep -v -E -e '^doc/lispref/spellfile$' |\ - grep -v -E -e '^doc/misc/texinfo.tex$' |\ - grep -v -E -e '^doc/translations/.*' |\ - grep -v -E -e '^etc/(AUTHORS|HELLO|publicsuffix.txt)$' |\ - grep -v -E -e '^etc/refcards/(cs|de|fr|pl|pt|sk)-.+.tex$' |\ - grep -v -E -e '^etc/tutorials/TUTORIAL\..+' |\ - grep -v -E -e '^leim/(MISC|SKK)-DIC/.*' |\ - grep -v -E -e '^lisp/language/ethio-util.el' |\ - grep -v -E -e '^lisp/ldefs-boot.el' |\ - grep -v -E -e '^lisp/leim/.*' |\ - grep -v -E -e '^test/lisp/erc/resources/.*' |\ - grep -v -E -e '^test/lisp/net/puny-resources/IdnaTestV2.txt' |\ - grep -v -E -e '^test/manual/(etags|indent)/.*' |\ - grep -v -E -e '^test/src/regex-resources/.*' |\ + grep --line-buffered -v -E -e "^(lib|m4)/.*|\ +^admin/(charsets|codespell|unidata)/.*|\ +^doc/lispref/spellfile$|\ +^doc/misc/texinfo.tex$|\ +^doc/translations/.*|\ +^etc/(AUTHORS|HELLO|publicsuffix.txt)$|\ +^etc/refcards/(cs|de|fr|pl|pt|sk)-.+.tex$|\ +^etc/tutorials/TUTORIAL\..+|\ +^leim/(MISC|SKK)-DIC/.*|\ +^lisp/language/ethio-util.el|\ +^lisp/ldefs-boot.el|\ +^lisp/leim/.*|\ +^test/lisp/erc/resources/.*|\ +^test/lisp/net/puny-resources/IdnaTestV2.txt|\ +^test/manual/(etags|indent)/.*|\ +^test/src/regex-resources/.*" |\ xargs codespell \ --config "$CODESPELL_RC" \ --exclude-file "$CODESPELL_EXCLUDE" \ From ee61b9a050b4fbc9940d11bc95437e5113865c8b Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 11 Jan 2025 12:40:59 +0200 Subject: [PATCH 15/17] ; Fix documentation of completion commands * src/minibuf.c (Fcompleting_read): Move part of doc string of 'read-from-minibuffer' to doc string of this function. Suggested by Eshel Yaron . --- src/minibuf.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/minibuf.c b/src/minibuf.c index e0d060a0480..bf9fad48d88 100644 --- a/src/minibuf.c +++ b/src/minibuf.c @@ -1293,11 +1293,6 @@ barf_if_interaction_inhibited (void) DEFUN ("read-from-minibuffer", Fread_from_minibuffer, Sread_from_minibuffer, 1, 7, 0, doc: /* Read a string from the minibuffer, prompting with string PROMPT. -While in the minibuffer, you can use \\\\[minibuffer-complete] and \\[minibuffer-complete-word] to complete your input. -You can also use \\\\[minibuffer-complete-history] to complete using history items in the -input history HIST, and you can use \\[minibuffer-complete-defaults] to complete using -the default items in DEFAULT-VALUE. - The optional second arg INITIAL-CONTENTS is an obsolete alternative to DEFAULT-VALUE. It normally should be nil in new code, except when HIST is a cons. It is discussed in more detail below. @@ -1983,6 +1978,11 @@ with a space are ignored unless STRING itself starts with a space. */) DEFUN ("completing-read", Fcompleting_read, Scompleting_read, 2, 8, 0, doc: /* Read a string in the minibuffer, with completion. +While in the minibuffer, you can use \\\\[minibuffer-complete] and \\[minibuffer-complete-word] to complete your input. +You can also use \\\\[minibuffer-complete-history] to complete using history items in the +input history HIST, and you can use \\[minibuffer-complete-defaults] to complete using +the default items in DEFAULT-VALUE. + PROMPT is a string to prompt with; normally it ends in a colon and a space. COLLECTION can be a list of strings, an alist, an obarray or a hash table. COLLECTION can also be a function to do the completion itself. From 26c5fadf474a56d56064899bc3447bba6d3c3037 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 11 Jan 2025 12:58:03 +0200 Subject: [PATCH 16/17] Document that 'package-vc' doesn't support built-in packages * doc/misc/use-package.texi (Install package): * doc/emacs/package.texi (Fetching Package Sources): Document that upgrading built-in packages is not yet supported using 'package-vc'. (Bug#75328) --- doc/emacs/package.texi | 3 +++ doc/misc/use-package.texi | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/emacs/package.texi b/doc/emacs/package.texi index e6d0a66d571..2e3191440cb 100644 --- a/doc/emacs/package.texi +++ b/doc/emacs/package.texi @@ -611,6 +611,9 @@ regular package listing. If you just wish to clone the source of a package, without adding it to the package list, use @code{package-vc-checkout}. + Note that currently, built-in packages cannot be upgraded using +@code{package-vc-install}. + @findex package-report-bug @findex package-vc-prepare-patch With the source checkout, you might want to reproduce a bug against diff --git a/doc/misc/use-package.texi b/doc/misc/use-package.texi index 6f51780057f..bcb068e6654 100644 --- a/doc/misc/use-package.texi +++ b/doc/misc/use-package.texi @@ -1660,7 +1660,8 @@ declaration. The accepted property list is augmented by a @code{:rev} keyword, which has the same shape as the @code{REV} argument to @code{package-vc-install}. Notably -- even when not specified -- @code{:rev} defaults to checking out the last release of the package. -You can use @code{:rev :newest} to check out the latest commit. +You can use @code{:rev :newest} to check out the latest commit. Note +that currently, you cannot upgrade built-in packages using @code{:vc}. For example, From d66b8d4becb6804d3bd912a000dc64ccfdbe6810 Mon Sep 17 00:00:00 2001 From: Mauro Aranda Date: Wed, 1 Jan 2025 08:22:45 -0300 Subject: [PATCH 17/17] Fix checkbox's child creation * lisp/wid-edit.el (widget-checklist-add-item): Swap function calls so that child is actually a widget. (Bug#72156) --- lisp/wid-edit.el | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el index 3a7413f943c..8e6d0ed3664 100644 --- a/lisp/wid-edit.el +++ b/lisp/wid-edit.el @@ -2550,12 +2550,9 @@ If the item is checked, CHOSEN is a cons whose cdr is the value." (widget-create-child-value widget type (cdr chosen))) (t - (widget-create-child-value - widget type (car (cdr chosen))) - ;; This somehow breaks :options and other - ;; Custom features. - ;; (widget-specify-selected child) - )))) + (widget-specify-selected child) + (widget-create-child-value + widget type (car (cdr chosen))))))) (t (error "Unknown escape `%c'" escape))))) ;; Update properties.