There are problems with treesitter installation from debian:sid.
* test/infra/Dockerfile.emba (emacs-base): Use debian:bookworm.
(emacs-eglot, emacs-tree-sitter): Use emacs-base.
(emacs-native-comp): Install libgccjit-12-dev.
* doc/emacs/programs.texi (Symbol Completion): Improve indexing by
adding "code completion". This is the name that this feature goes by
elsewhere, so users are likely to look for it.
* lisp/completion-preview.el
(completion-preview--post-command): Avoid calling
'completion-preview-active-mode' to disable the mode when
already off, since it forces a costly redisplay. (Bug#76964)
* lisp/international/characters.el (ambiguous-width-chars): Remove
U+00A4 and U+00B7 from the list of ambiguous-width characters.
(cjk-ambiguous-chars-are-wide): Doc fix. (Bug#76852)
* doc/lispref/frames.texi (Window System Selections):
* lisp/select.el (gui-get-selection): Suggest to use an explicit
DATA-TYPE when calling 'gui-get-selection'.
The previous fix fixed the problem that treesit-parser-create
always use the current buffer, but that introduce another subtle
problem: if an indirect buffer creates a parser, the parser
saves the base buffer rather than the indirect buffer. In Emacs
29, if you create a parser in an indirect buffer, the parser
saves the indirect buffer. This change of behavior breaks some
existing use-cases for people using indirect buffer with
tree-sitter.
In Emacs 31, indirect buffers and base buffer get their own
parser list, so this problem doesn't exist anymore. The fix is
only for Emacs 30.
* src/treesit.c (Ftreesit_parser_create): Use the buffer that's
given to treesit-parser-create, even if it's an indirect buffer.
* doc/lispref/variables.texi (File Local Variables):
<hack-local-variables>: Say that it applies directory-local
variables too. Add a cross-reference.
(Directory Local Variables): Document dir-local-variables-alist.
* lisp/files.el (hack-local-variables): Say that it always puts
into effect directory-local variables.
* lisp/progmodes/cperl-mode.el
(cperl-after-block-and-statement-beg): Recognize _ as part of a
Perl symbol. Fixes Bug#76851
* test/lisp/progmodes/cperl-mode-resources/cperl-indents.erts
Two new test cases around the edges of Bug#76851
* lisp/progmodes/etags-regen.el (etags-regen--append-tags): Move
the "-o" option to before the filename, as Ctags doesn't allow
it to follow the file name. (Bug#76855)
Copyright-paperwork-exempt: yes
* src/frame.c (delete_frame): Ignore tooltip frames when looking
for other frames on the same terminal. (Bug#76842)
(cherry picked from commit d2445c8c23)
Added notes that when adding import statements for a file that
does not belong to a project, it may take some time to find
candidate import statements in the default directory.
* lisp/progmodes/python.el (python-add-import)
(python-fix-imports): Improve docstring. (Bug#74894)
Allow popping up preview when pressing C-h.
Don't exit the minibuffer when the call to
register-read-with-preview-fancy is triggered by C-h.
* lisp/register.el (register-read-with-preview-fancy): Do it.
The version code is intended to be an integer that increments
for each Android package release
(https://developer.android.com/studio/publish/versioning#versioningsettings).
If we keep this updated under version control, then F-Droid (a
third-party Android package repository), can watch for that, and
use it to automatically build Emacs packages for Android each
time a new Emacs release is tagged
(https://f-droid.org/en/docs/Build_Metadata_Reference/#UpdateCheckData).
* admin/admin.el (set-version): Update version code in
java/incrementing-version-code
* java/incrementing-version-code: New file containing an Android
version code corresponding to the current Emacs version.
(bug#75809)