* lisp/gnus/gnus-art.el (gnus-button-prefer-mid-or-mail): Allow
function and add :tag to const values.
* lisp/gnus/gnus-bookmark.el (gnus-bookmark-bookmark-inline-details):
Fix docstring.
* lisp/gnus/gnus-sum.el (gnus-simplify-subject-fuzzy-regexp): Allow a
single regexp as value.
* lisp/gnus/message.el (message-indent-citation-function): Allow a
single function as value.
(message-mail-alias-type): Allow for a list of options as value.
(message-dont-reply-to-names): Allow a function as value.
* lisp/gnus/spam-report.el (spam-report-url-ping-function): Fix
default value for the function widget.
Starting with commit 6f6639d6ed
(Bug#27631), Dired stopped respecting the value of
'insert-directory-program' when using directory wildcards/globs.
* lisp/dired.el (dired-insert-directory): Honor the value of
'insert-directory-program' when using directory wildcards.
* lisp/cus-edit.el (custom-icon-action): New function.
(custom-icon): Use it as the :action. Otherwise, clicking the State
button is a noop. Remove irrelevant stuff from the docstring and
comment out some copy-pasta.
(custom-icon-extended-menu): New variable, the menu to show upon
:action.
(custom-icon-set): Really redraw the widget with the new settings.
Comment out strange call to custom-variable-backup-value.
(custom-icon-save): New function.
* lisp/emacs-lisp/icons.el (icons--merge-spec): Fix call to plist-get
and avoid infloop.
* lisp/treesit.el (treesit-simple-indent-presets):
adaptive-fill-regexp don't have a capture group (the group in the
default value is supposed to be a non-capture group), so don't use the
group. Also, in the second diff hunk, replace looking-at with
looking-at-p so it doesn't override match data that we use later.
* lisp/treesit.el (treesit-explore-mode): Reset
treesit--explorer-last-node before calling treesit--explorer-refresh,
so that in the rare case described in the bug report, the explorer
buffer don't show the outdated node.
* lisp/progmodes/typescript-ts-mode.el
(tsx-ts-mode--font-lock-compatibility-bb1f97b): Make sure the
tested query is actually valid in the new grammar (bug#66646).
* doc/lispref/files.texi (Changing Files): Change name of last
argument of function `copy-file' from `preserve-extended-attributes'
to `preserve-permissions', as used in the function's description, its
doc string and the description below in the manual.
* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.6.2.29.2".
(customize-package-emacs-version-alist):
Adapt Tramp version integrated in Emacs 29.2.
* src/xterm.c (x_frame_highlight, x_frame_unhighlight): Skip
changing the frame alpha when the frame is not eligible for
focus state-specific alpha values; otherwise, the alpha might be
reset by the time a alpha change wrought by a focus change
arrives, impeding handle_one_xevent from subsequently restoring
the initial value. (bug#66398)
* lisp/ido.el (ido--ffap-find-file): Make the signature consistent
with that of 'find-file', and pass the optional second argument to
'find-file'. (Bug#66382)
* src/process.c (create_process) [F_SETPIPE_SZ]: Set the pipe
capacity only if the required read-process-max is larger than the
default capacity of the pipe. (Bug#66288)
* src/nsterm.m (ns_init_locale): If LANG is set, try to use that,
otherwise try to deduce what LANG should be. Check is the result is
valid, and use LANG="en_US.UTF-8" if not.
To keep risk in the current release branch low, do not avoid compiler
macros as suggested by Stefan in the bug, but rather suppress all errors.
* lisp/progmodes/elisp-mode.el (elisp--local-variables): Silence
messages. Suppress all errors during macro expansion. (Bug#58148)
Do not merge to master.