]> git.eshelyaron.com Git - emacs.git/log
emacs.git
5 weeks agoFix libsrc assumption in src/Makefile.in
Paul Eggert [Sat, 19 Apr 2025 16:58:10 +0000 (09:58 -0700)]
Fix libsrc assumption in src/Makefile.in

* src/Makefile.in (ETAGS): Don’t assume $(libsrc) = ../lib-src.

(cherry picked from commit 03a1df37990049c2ad9491b150a8983355a213f8)

5 weeks agovc-user-edit-command: Add trailing space to initial input
Sean Whitton [Sun, 20 Apr 2025 01:40:12 +0000 (09:40 +0800)]
vc-user-edit-command: Add trailing space to initial input

* lisp/vc/vc-dispatcher.el (vc-user-edit-command): Add trailing
space to initial input to ease adding additional flags.

(cherry picked from commit 45232485aef3e44e9106f605ecf155de8f707edb)

5 weeks agoFix seccomp-filter for newer Linux kernels
Werner Fink [Mon, 7 Apr 2025 11:51:07 +0000 (13:51 +0200)]
Fix seccomp-filter for newer Linux kernels

* lib-src/seccomp-filter.c (MAP_DROPPABLE): Define if undefined.
(main): Use MAP_DROPPABLE flag.  Allow `tcgetattr' call of glibc
on physical terminal devices.  (Bug#77232)

(cherry picked from commit 8abd2ee0526ba576aefefa51870443ef01a4b2dd)

5 weeks agoFix 'rfc6068-parse-mailto-url' with 'inhibit-eol-conversion'
Kazuhiro Ito [Sun, 13 Apr 2025 11:00:44 +0000 (20:00 +0900)]
Fix 'rfc6068-parse-mailto-url' with 'inhibit-eol-conversion'

* lisp/mail/rfc6068.el (rfc6068-parse-mailto-url): Fix EOL type to
CRLF and never inhibit EOL conversion in decoding.  (Bug#77776)

(cherry picked from commit 2cf545f47dc945b8ebff641af7e15798ddd419c2)

5 weeks ago; Skip commit 6b901a8e85987940738b21032b035ba4e8f7379b
Eshel Yaron [Mon, 21 Apr 2025 20:40:10 +0000 (22:40 +0200)]
; Skip commit 6b901a8e85987940738b21032b035ba4e8f7379b

5 weeks ago; Skip commit fe8e88a1df593ec1cb0b96cbeb9f0ca832686258
Eshel Yaron [Mon, 21 Apr 2025 20:39:30 +0000 (22:39 +0200)]
; Skip commit fe8e88a1df593ec1cb0b96cbeb9f0ca832686258

5 weeks agoTweak AppStream metadata to satisfy `appstream-util validate'
Peter Oliver [Wed, 2 Apr 2025 14:15:02 +0000 (15:15 +0100)]
Tweak AppStream metadata to satisfy `appstream-util validate'

* etc/emacs.metainfo.xml: `appstream-util validate' suggests that
screenshot height and width attributes should match the actual size of
the image, and that captions be no longer than 50 chars and do not end
in `.'.  Follow those rules.

(cherry picked from commit b3fb93e0e88bb06c1bfdfa6a0c35ec5e146d94e5)

5 weeks agoAdd AppStream metadata about supported and recommended hardware
Peter Oliver [Wed, 2 Apr 2025 14:06:05 +0000 (15:06 +0100)]
Add AppStream metadata about supported and recommended hardware

* etc/emacs.metainfo.xml: Note that Emacs is best with a keyboard, but
other forms of input are possible.  Also note that Emacs can access the
Internet.  A modestly sized display is sufficient.

(cherry picked from commit 4f3188a88c04602d151585dce3e93a5cff38a967)

5 weeks ago; Fix failing diff-mode tests
Stefan Kangas [Sat, 19 Apr 2025 08:35:59 +0000 (10:35 +0200)]
; Fix failing diff-mode tests

* test/lisp/vc/diff-mode-resources/git.patch: Delete file, moving
its contents to...
* test/lisp/vc/diff-mode-tests.el (diff-mode-tests--git-patch):
...this new variable.  Git merges kept deleting a trailing
whitespace in the patch signature, so let's do this instead.
(diff-mode-test-git-patch)
(diff-mode-test-git-patch/before-first-hunk)
(diff-mode-test-git-patch/signature): Use above new variable.

(cherry picked from commit 87d615e26cc565cd49be79d08116354341d1af93)

5 weeks ago; Delete superfluous comments explaining config.h
Stefan Kangas [Sat, 19 Apr 2025 06:51:09 +0000 (08:51 +0200)]
; Delete superfluous comments explaining config.h

* src/pgtkfns.c:
* src/pgtkim.c:
* src/pgtkmenu.c:
* src/pgtkselect.c:
* src/pgtkterm.c:
* src/termcap.c:
* src/tparam.c: Delete superfluous comments explaining config.h.

(cherry picked from commit fa4e686148de22cee0b1671fd6b3241212c110a6)

5 weeks agoxterm.c: Move GTK3-specific variables into narrower scopes
Stefan Kangas [Sat, 19 Apr 2025 06:48:17 +0000 (08:48 +0200)]
xterm.c: Move GTK3-specific variables into narrower scopes

Avoid declaring GTK3-specific variables in larger-than-necessary scopes,
especially under #ifdefs.  Instead, declare them where used.  This improves
readability and reduces #ifdef clutter without changing behavior.

* src/xterm.c: [HAVE_GTK3] (x_update_opaque_region):
(XTframe_up_to_date, x_new_focus_frame, handle_one_xevent)
(x_ignore_errors_for_next_request, x_stop_ignoring_errors): Clean up
variable declarations.

(cherry picked from commit 177accc53d7ed2afc5768ae117fc6a19749e8fb6)

5 weeks ago* lisp/progmodes/heex-ts-mode.el (heex-ts): Fix :group name.
Michael Albinus [Sat, 19 Apr 2025 07:41:58 +0000 (09:41 +0200)]
* lisp/progmodes/heex-ts-mode.el (heex-ts): Fix :group name.

(cherry picked from commit 2a45f0bceba4f39fdc354e46ad686040f474e0e4)

5 weeks ago; Improve the documentation of a recent commit
Eli Zaretskii [Sat, 19 Apr 2025 06:11:57 +0000 (09:11 +0300)]
; Improve the documentation of a recent commit

* etc/NEWS:
* doc/lispref/frames.texi (Deleting Frames): Improve documentation
of 'frame-deletable-p'.

(cherry picked from commit 37b2c2fcdd9344f33f843d3fd5f9129babdf172f)

5 weeks ago; Fix typos in last change.
Eli Zaretskii [Sat, 19 Apr 2025 05:59:06 +0000 (08:59 +0300)]
; Fix typos in last change.

(cherry picked from commit f200b3c91060afe559945e8128a021d5b3aa3ee1)

5 weeks agoRename 'treesit-auto-install' to 'treesit-auto-install-grammar'
Eli Zaretskii [Sat, 19 Apr 2025 05:56:21 +0000 (08:56 +0300)]
Rename 'treesit-auto-install' to 'treesit-auto-install-grammar'

* etc/NEWS:
* lisp/treesit.el (treesit-auto-install-grammar): Rename from
'treesit-auto-install'; all users changed.  Doc fix.
(treesit-ensure-installed): Doc fix.

(cherry picked from commit 5ec6613f13f414702d88eddbb3a510f3b8da4dd3)

5 weeks agoFix typescript-ts-mode indentation (bug#77803)
Konstantin Kharlamov [Tue, 15 Apr 2025 14:34:11 +0000 (17:34 +0300)]
Fix typescript-ts-mode indentation (bug#77803)

Don't align variable names to their declaratory expression.

Before this commit in code like:

    const a = 1,
          b = 2;

the b would get indented to `const'.  Similarly for `var' and
`let'. The expected behavior instead is getting indented to
`typescript-ts-mode-indent-offset'.

* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Indent identifiers declarations to
`typescript-ts-mode-indent-offset'.
* test/lisp/progmodes/typescript-ts-mode-resources/indent.erts
(Lexical and variable declarations): Update test accordingly.

(cherry picked from commit 9750333dde9d23510341632d1c9a950d9c67415c)

5 weeks ago; Skip commit ef8bfe90b7201f9f42484219267cec9d79d5b938
Eshel Yaron [Mon, 21 Apr 2025 20:38:17 +0000 (22:38 +0200)]
; Skip commit ef8bfe90b7201f9f42484219267cec9d79d5b938

5 weeks agoFix parens inside links in markdown-ts--treesit-settings.
Juri Linkov [Fri, 18 Apr 2025 17:15:40 +0000 (20:15 +0300)]
Fix parens inside links in markdown-ts--treesit-settings.

* lisp/textmodes/markdown-ts-mode.el (markdown-ts--treesit-settings):
Override paren delimiter inside inline link.
https://lists.gnu.org/archive/html/emacs-devel/2025-04/msg00655.html

(cherry picked from commit 80e74dc832bd8683133d61ac34cce3c71bb38e13)

5 weeks agoEmbed elixir in heex as well as elixir->heex->elixir (bug#76788).
Juri Linkov [Fri, 18 Apr 2025 16:52:19 +0000 (19:52 +0300)]
Embed elixir in heex as well as elixir->heex->elixir (bug#76788).

* lisp/progmodes/elixir-ts-mode.el (elixir-ts--range-rules):
Rename to a shorter name from 'elixir-ts--treesit-range-rules'.
(elixir-ts--font-lock-feature-list, elixir-ts--thing-settings)
(elixir-ts--range-rules): New variables with default values
extracted from 'elixir-ts-mode'.
(elixir-ts-mode): Use 'elixir-ts--font-lock-feature-list',
'elixir-ts--thing-settings', 'elixir-ts--range-rules'
and 'heex-ts--range-rules'.
Use 'treesit-merge-font-lock-feature-list' to merge
'heex-ts--font-lock-feature-list'.

* lisp/progmodes/heex-ts-mode.el
(heex-ts--font-lock-feature-list, heex-ts--range-rules):
New variables.
(heex-ts-mode): Use 'heex-ts--font-lock-feature-list',
'heex-ts--range-rules'.  Merge 'elixir-ts--font-lock-settings',
'elixir-ts--font-lock-feature-list', 'elixir-ts--thing-settings'
for embedding elixir in heex.  Enable the 'sexp' navigation
by default with 'treesit-cycle-sexp-type'.

* lisp/progmodes/c-ts-mode.el (c-ts-mode): Append
'treesit-range-rules' to possibly already existing list in
'treesit-range-settings'.

* lisp/treesit.el (treesit-language-at-point-default):
Optimize to use 'when-let*'.

(cherry picked from commit d56e37c83c721c5bcffcf434138b27482b7e3fa6)

5 weeks agoLock tree-sitter language grammars to verified versions.
Juri Linkov [Fri, 18 Apr 2025 16:22:50 +0000 (19:22 +0300)]
Lock tree-sitter language grammars to verified versions.

* admin/notes/tree-sitter/build-module/build.sh:
Update org for toml/yaml.

* admin/tree-sitter/treesit-admin.el
(treesit-admin--builtin-language-sources):
Add verified versions.

* lisp/progmodes/c-ts-mode.el:
Append language source to treesit-language-source-alist.
(c-ts-mode, c++-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/cmake-ts-mode.el:
Append language source to treesit-language-source-alist.
(cmake-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/csharp-mode.el:
Append language source to treesit-language-source-alist.
(csharp-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/dockerfile-ts-mode.el:
Append language source to treesit-language-source-alist.
(dockerfile-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/elixir-ts-mode.el:
Append language source to treesit-language-source-alist.
(elixir-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/go-ts-mode.el:
Append language source to treesit-language-source-alist.
(go-ts-mode, go-mod-ts-mode, go-work-ts-mode):
Use treesit-ensure-installed.

* lisp/progmodes/heex-ts-mode.el:
Append language source to treesit-language-source-alist.
(heex-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/java-ts-mode.el:
Append language source to treesit-language-source-alist.
(java-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/js.el:
Append language source to treesit-language-source-alist.
(js-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/json-ts-mode.el:
Append language source to treesit-language-source-alist.
(json-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/lua-ts-mode.el:
Append language source to treesit-language-source-alist.
(lua-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/php-ts-mode.el
(php-ts-mode--language-source-alist):
Update versions from comments in ts-modes.
Append to treesit-language-source-alist.
(php-ts-mode-install-parsers):
Use treesit-language-source-alist directly.
(php-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/ruby-ts-mode.el:
Append language source to treesit-language-source-alist.
(ruby-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/rust-ts-mode.el:
Append language source to treesit-language-source-alist.
(rust-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/sh-script.el:
Append language source to treesit-language-source-alist.
(bash-ts-mode): Use treesit-ensure-installed.

* lisp/progmodes/typescript-ts-mode.el:
Append language source to treesit-language-source-alist.
(typescript-ts-mode, tsx-ts-mode): Use treesit-ensure-installed.

* lisp/textmodes/css-mode.el:
Append language source to treesit-language-source-alist.
(css-ts-mode): Use treesit-ensure-installed.

* lisp/textmodes/html-ts-mode.el:
Append language source to treesit-language-source-alist.
(html-ts-mode): Use treesit-ensure-installed.

* lisp/textmodes/markdown-ts-mode.el:
Append language source to treesit-language-source-alist.
(markdown-ts-mode): Use treesit-ensure-installed.

* lisp/textmodes/mhtml-ts-mode.el
(mhtml-ts-mode--language-source-alist):
Append to treesit-language-source-alist.
(mhtml-ts-mode-install-parsers):
Use treesit-language-source-alist directly.
(mhtml-ts-mode): Use treesit-ensure-installed.

* lisp/textmodes/toml-ts-mode.el:
Append language source to treesit-language-source-alist.
(toml-ts-mode): Use treesit-ensure-installed.

* lisp/textmodes/yaml-ts-mode.el:
Append language source to treesit-language-source-alist.
(yaml-ts-mode): Use treesit-ensure-installed.

* test/infra/Dockerfile.emba: Add verified versions
to treesit-language-source-alist.

(cherry picked from commit 3d3be6dd0eb320e73d59ad6958e7c6e2c1b6a434)

5 weeks ago* lisp/treesit.el (treesit-auto-install): New defcustom.
Juri Linkov [Fri, 18 Apr 2025 16:17:39 +0000 (19:17 +0300)]
* lisp/treesit.el (treesit-auto-install): New defcustom.

(treesit-ensure-installed): New function.

(cherry picked from commit c9b6be7d27299093d16d592f1ffe0a731136beb2)

5 weeks agoMatch mail headers case-insensitively when encoding
Robert Pluim [Thu, 17 Apr 2025 14:08:53 +0000 (16:08 +0200)]
Match mail headers case-insensitively when encoding

* lisp/mail/rfc2047.el (rfc2047-encode-message-header): Bind
'case-fold-search' to t when looking up the encoding method,
otherwise a header spelled "CC" is encoded using the wrong
method.  (Bug#77866)

(cherry picked from commit 7d886f214e165d84d3fdbe14b3766d9e88056529)

5 weeks ago(tab-bar-tests-quit-restore-window): Try and clarify the skip
Stefan Monnier [Fri, 18 Apr 2025 13:35:14 +0000 (09:35 -0400)]
(tab-bar-tests-quit-restore-window): Try and clarify the skip

* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window):
Rewrite the `skip-unless` based on the code's history because
I found the current code quite confusing.

(cherry picked from commit f5e6f284e9f970cdbdfb25c8ae8308165f3ce5c5)

5 weeks ago; Improve doc string of 'insert-char'
Eli Zaretskii [Fri, 18 Apr 2025 11:10:19 +0000 (14:10 +0300)]
; Improve doc string of 'insert-char'

* src/editfns.c (Finsert_char): Doc fix.  Suggested by Lactose ‎
<lactose@allthingslinux.org> (bug#77889).

(cherry picked from commit 01d4eb3dd427feb3439378eab573d685daf47bb7)

5 weeks ago; Skip commit 9f0c43a3d1b38c93bf21bf25db0f5dd489338d7c
Eshel Yaron [Mon, 21 Apr 2025 20:33:46 +0000 (22:33 +0200)]
; Skip commit 9f0c43a3d1b38c93bf21bf25db0f5dd489338d7c

5 weeks ago; Skip commit 20b919cfb1b5861a91a57b5f0c27e6c6fc03aff5
Eshel Yaron [Mon, 21 Apr 2025 20:33:43 +0000 (22:33 +0200)]
; Skip commit 20b919cfb1b5861a91a57b5f0c27e6c6fc03aff5

5 weeks ago* admin/notes/emba: Fix docker build instruction.
Michael Albinus [Fri, 18 Apr 2025 07:31:54 +0000 (09:31 +0200)]
* admin/notes/emba: Fix docker build instruction.

(cherry picked from commit 93ad8407ed82c27835cf27b15ee2637a2ebba482)

5 weeks ago; * test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window): Comment.
Juri Linkov [Fri, 18 Apr 2025 06:42:31 +0000 (09:42 +0300)]
; * test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window): Comment.

(cherry picked from commit a731dd63fb259758fb52630f4f499357cbc727c0)

5 weeks ago* doc/lispref/text.texi (Margins): Grammar fix.
Sean Whitton [Fri, 18 Apr 2025 06:31:50 +0000 (14:31 +0800)]
* doc/lispref/text.texi (Margins): Grammar fix.

Author:
(cherry picked from commit b901290ae7f2e45a80a1d24a1b8d65f94e58b3ca)

5 weeks ago; Skip commit 275712a18c7e5ce38831721936fd9fb3ed3adb00
Eshel Yaron [Mon, 21 Apr 2025 20:33:25 +0000 (22:33 +0200)]
; Skip commit 275712a18c7e5ce38831721936fd9fb3ed3adb00

5 weeks agoBackport: Fix tree-sitter tests on Emba
Michael Albinus [Tue, 15 Apr 2025 12:17:25 +0000 (14:17 +0200)]
Backport: Fix tree-sitter tests on Emba

* test/infra/Dockerfile.emba: Use tree-sitter-rust v0.23.3 in
order to match ABI version of libtree-sitter0.

(cherry picked from commit 788c9cfb62c7fd50b171a9209dd7453bd03f14bf)
(cherry picked from commit 8792d3431b15d83c5ec7f7706d3989eb036c0b98)

5 weeks ago; Improve documentation of some functions in files-x.el
Eli Zaretskii [Tue, 15 Apr 2025 13:58:50 +0000 (16:58 +0300)]
; Improve documentation of some functions in files-x.el

* lisp/files-x.el (modify-file-local-variable)
(modify-file-local-variable-prop-line)
(add-file-local-variable-prop-line)
(delete-file-local-variable-prop-line, add-file-local-variable)
(delete-file-local-variable): Document the effect of INTERACTIVE
argument.

(cherry picked from commit 2b535a9c7719a13ab19884cca754024003875c88)

5 weeks agoFix deleting the first line of calc trail
Wojciech Siewierski [Mon, 14 Apr 2025 16:57:28 +0000 (18:57 +0200)]
Fix deleting the first line of calc trail

* lisp/calc/calc-trail.el (calc-trail-kill): Remove the check
preventing the removal of the first trail line, which is no
longer relevant since commit 8e1376a3912.  (Bug#77816)

(cherry picked from commit 45cf832ac75f8d6fb41a4856d1987062e81dcddb)

5 weeks ago; Skip commit 74e25c9413b9a9b824bb07b7b5ced9be18c45936
Eshel Yaron [Mon, 21 Apr 2025 20:32:18 +0000 (22:32 +0200)]
; Skip commit 74e25c9413b9a9b824bb07b7b5ced9be18c45936

5 weeks ago; Skip commit 17418125353ce998580ba8f0928ffd2c47af7df3
Eshel Yaron [Mon, 21 Apr 2025 20:31:51 +0000 (22:31 +0200)]
; Skip commit 17418125353ce998580ba8f0928ffd2c47af7df3

5 weeks ago; Allow a tab-bar test on MS-Windows
Eli Zaretskii [Fri, 18 Apr 2025 05:11:47 +0000 (08:11 +0300)]
; Allow a tab-bar test on MS-Windows

* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window):
Allow this test on MS-Windows in interactive sessions.

(cherry picked from commit 58ff10138060df71fd3158159382c5dd93440a3e)

5 weeks agoAdd guard in treesit-language-at-point-default (bug#77870)
Yuan Fu [Thu, 17 Apr 2025 23:56:07 +0000 (16:56 -0700)]
Add guard in treesit-language-at-point-default (bug#77870)

* lisp/treesit.el (treesit-language-at-point-default): Return
nil if there's no parser in the buffer.
(treesit-parsers-at): Add docstring for parser order.

(cherry picked from commit f728aa72c047ff8485bce08a6effb1c7790bce9f)

5 weeks agoAdd missing OFFSET arg to treesit--update-ranges-local (bug#77848)
Yuan Fu [Thu, 17 Apr 2025 23:42:07 +0000 (16:42 -0700)]
Add missing OFFSET arg to treesit--update-ranges-local (bug#77848)

* lisp/treesit.el (treesit--update-ranges-local):
(treesit--update-range-1): Add missing OFFSET arg.

(cherry picked from commit 4f80a116f53c2d8dc58301630f6dc7de6e0e346e)

5 weeks agoMake sure prog-fill-reindent-defun work for strings too
Yuan Fu [Thu, 17 Apr 2025 23:17:12 +0000 (16:17 -0700)]
Make sure prog-fill-reindent-defun work for strings too

My previous commit foolishly excluded strings from the
condition, now add them back.

* lisp/progmodes/prog-mode.el (prog-fill-reindent-defun):
Include strings.

(cherry picked from commit b75c18f3c6c8d347d4f1a9cce746e673d91997a9)

5 weeks agopgtk: Make x-display-grayscale-p return Qt
Stefan Kangas [Thu, 17 Apr 2025 22:42:52 +0000 (00:42 +0200)]
pgtk: Make x-display-grayscale-p return Qt

We already unconditionally claim that `xw-display-color-p`, which,
according to the docstring of this function, implies that we handle
grayscale too.

* src/pgtkfns.c (Fx_display_grayscale_p): Return Qt unconditionally.

(cherry picked from commit 6702a448c1c2500abb4f393da29edc31acd5e058)

5 weeks ago* src/pgtkfns.c (Fx_gtk_launch_uri): Improve docstring.
Stefan Kangas [Thu, 17 Apr 2025 21:51:26 +0000 (23:51 +0200)]
* src/pgtkfns.c (Fx_gtk_launch_uri): Improve docstring.

(cherry picked from commit b05da1c3fc611417ace0af3860a93fb878f72f4d)

5 weeks agoDon't switch to another frame if window is not on the selected frame.
Juri Linkov [Thu, 17 Apr 2025 18:21:29 +0000 (21:21 +0300)]
Don't switch to another frame if window is not on the selected frame.

* lisp/window.el (window--quit-restore-select-window):
Add optional arg 'frame'.  Don't switch to another frame
if window is not on the selected frame (bug#71386).
(quit-restore-window): Provide the 'frame' arg
to 'window--quit-restore-select-window' calls.
Patch by martin rudalics <rudalics@gmx.at>.

* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window):
No need to reselect the frame after 'quit-window'.

(cherry picked from commit 9f4347e00c02c3aa436118425a0cda2bc7f69d51)

5 weeks agoAdapt tab-bar-tests-quit-restore-window for emba.
Juri Linkov [Thu, 17 Apr 2025 18:04:02 +0000 (21:04 +0300)]
Adapt tab-bar-tests-quit-restore-window for emba.

* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window):
Skip unless system-type is 'gnu/linux' and "TERM" is non-nil
that is nil on emba.

(cherry picked from commit 054a181d2d0890b7c299c0279d0c16e25130ef7e)

5 weeks ago* lisp/treesit.el (treesit-parsers-at): Fix for 'with-host' arg.
Juri Linkov [Thu, 17 Apr 2025 17:21:16 +0000 (20:21 +0300)]
* lisp/treesit.el (treesit-parsers-at): Fix for 'with-host' arg.

Don't add the primary parser or the first of treesit-parser-list
when non-nil 'with-host' is provided since there is no host
for the primary parser (bug#76788).

(cherry picked from commit 2808bef2522481b3b3e6a7f2739ae8dbd02c13f5)

5 weeks agoDisable echo back instead of setting tty to raw in Inferior Python
kobarity [Thu, 20 Mar 2025 10:03:33 +0000 (19:03 +0900)]
Disable echo back instead of setting tty to raw in Inferior Python

* lisp/progmodes/python.el (python-shell-setup-code): Change the
Python setup code.  (Bug#76943)

(cherry picked from commit 4c5c20ddc2cdde570ccf54c4aa60644828ee213d)

5 weeks agoUpdate modus-themes to their 4.7.0 version
Protesilaos Stavrou [Thu, 17 Apr 2025 07:33:43 +0000 (10:33 +0300)]
Update modus-themes to their 4.7.0 version

* doc/misc/modus-themes.org: Update the manual to document how
  'modus-themes-list-colors' has changed. Make other minor changes.
* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-operandi-tritanopia-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el:
* etc/themes/modus-vivendi-tritanopia-theme.el: Make stylistic refinements.
* etc/themes/modus-themes.el: Make refinements to supported
  faces, add support for more faces, and the like.

Release notes: <https://protesilaos.com/codelog/2025-04-17-emacs-modus-themes-4-7-0/>.

(cherry picked from commit 1e4ce136036e1ff43fcc436114e66ce48f33ea01)

6 weeks ago(auth-source-search): Avoid obsolete EIEIO convention
Eshel Yaron [Thu, 17 Apr 2025 19:31:07 +0000 (21:31 +0200)]
(auth-source-search): Avoid obsolete EIEIO convention

6 weeks ago(get-scratch-buffer-create): Don't set 'trusted-content'
Eshel Yaron [Thu, 17 Apr 2025 08:04:00 +0000 (10:04 +0200)]
(get-scratch-buffer-create): Don't set 'trusted-content'

6 weeks agoUse the first parser from 'treesit-parser-list' to fix tests.
Juri Linkov [Thu, 17 Apr 2025 06:49:04 +0000 (09:49 +0300)]
Use the first parser from 'treesit-parser-list' to fix tests.

* lisp/treesit.el (treesit-parsers-at): Add treesit-primary-parser
only when it's non-nil.  When the result list is still empty,
add the first parser from 'treesit-parser-list'.
https://lists.gnu.org/archive/html/emacs-devel/2025-04/msg00627.html

* test/src/treesit-tests.el (treesit-node-supplemental)
(treesit-node-at, treesit-node-check)
(treesit-search-subtree-forward-1)
(treesit-search-subtree-backward-1): Wrap test body in 'with-temp-buffer'.

(cherry picked from commit ee46b6c4e67aa52b4ef683c5c16f64638e369cd3)

6 weeks agoDon't override 'revert-buffer-function' globally in 'eww-buffers-mode'
Eli Zaretskii [Thu, 17 Apr 2025 06:25:09 +0000 (09:25 +0300)]
Don't override 'revert-buffer-function' globally in 'eww-buffers-mode'

* lisp/net/eww.el (eww-buffers-mode): Set 'revert-buffer-function'
buffer-locally.  (Bug#77854)

(cherry picked from commit 2925ff6c5383408fa6ad780066469970aa833d38)

6 weeks agoDelete duplicate docstrings in PGTK build
Stefan Kangas [Thu, 17 Apr 2025 05:56:55 +0000 (07:56 +0200)]
Delete duplicate docstrings in PGTK build

* src/pgtkfns.c (Fx_export_frames, Fx_create_frame)
(Fx_server_max_request_size, Fx_display_screens, Fx_display_mm_height)
(Fx_display_mm_width, Fx_display_backing_store, Fx_display_visual_class)
(Fx_display_save_under, Fx_open_connection, Fx_close_connection)
(Fx_display_list, Fxw_color_defined_p, Fxw_color_values)
(Fxw_display_color_p, Fx_display_grayscale_p, Fx_display_pixel_width)
(Fx_display_pixel_height, Fx_display_planes, Fx_display_color_cells)
(Fx_show_tip, Fx_hide_tip, Fx_file_dialog, Fx_select_font): Replace
duplicate docstrings with "SKIP" marker.  See the comment in doc.c.
* src/xfns.c (Fx_server_max_request_size, Fx_display_screens)
(Fx_display_backing_store, Fx_display_visual_class, Fx_file_dialog):
Update docstrings with details about the PGTK build.

(cherry picked from commit 4fcba8456e897cc77d1825e696aacb446ce45405)

6 weeks agoRemove treesit.el dependency from prog-mode.el
Yuan Fu [Thu, 17 Apr 2025 05:50:56 +0000 (22:50 -0700)]
Remove treesit.el dependency from prog-mode.el

prog-mode.el doens't need treesit.el dependency.  And it
shouldn't depend on it.  In principle, treesit.el should
integrate into various parts of Emacs through standard hooks and
variables.

* lisp/progmodes/prog-mode.el:
(prog-fill-reindent-defun): Remove treesit.el functions.  Use
generic functions to check whether the current line has
comments, and make the test more comprehensive.

(cherry picked from commit 79814379d646e507c1af8ab26e300ac43d036664)

6 weeks agoFix c-ts-common--fill-paragraph for non-rust modes (bug#77727)
Yuan Fu [Wed, 16 Apr 2025 00:28:32 +0000 (17:28 -0700)]
Fix c-ts-common--fill-paragraph for non-rust modes (bug#77727)

* lisp/progmodes/c-ts-common.el:
(c-ts-common--comment-regexp): Add // and /* to regexp for Rust.
(c-ts-common--line-comment-p): Extract out into new function,
add a check that the parent node is a comment node.
(c-ts-common--fill-paragraph): Extract some code out.

(cherry picked from commit 9d43715baa5da4a644e180c7fb4550be0eb69be4)

6 weeks ago(eieio-backward-compatibility): Set to `warn` (bug#77612)
Stefan Monnier [Thu, 17 Apr 2025 04:03:43 +0000 (00:03 -0400)]
(eieio-backward-compatibility): Set to `warn` (bug#77612)

* lisp/emacs-lisp/eieio-base.el (make-instance) <eieio-named>:
Really skip backward compatibility when `eieio-backward-compatibility`
is nil and emit message if it's `warn`.
(eieio-persistent-make-instance): Warn when an obsolete name is used.

* lisp/emacs-lisp/eieio-core.el (eieio-backward-compatibility):
Change default to `warn`.
(eieio-defclass-internal): Warn when the *-list-p function is called
(eieio--slot-name-index): Warn when a initarg is used to access a slot.

* lisp/emacs-lisp/eieio.el (defclass): Warn when a class-slot is
accessed via the obsolete method.
(make-instance, clone) <eieio-default-superclass>: Really skip backward
compatibility when `eieio-backward-compatibility` is nil and emit
message if it's `warn`.

(cherry picked from commit ae1d01328f260f1a9891280c96139494629a83e8)

6 weeks agoPrevent unrelocated symbols with position from being dumped
Po Lu [Thu, 17 Apr 2025 01:33:06 +0000 (09:33 +0800)]
Prevent unrelocated symbols with position from being dumped

* src/pdumper.c (dump_builtin_symbol_p): Test BARE_SYMBOL_P
\(object) rather than SYMBOLP to avoid depending on the value of
symbols_with_pos_enabled or depositing non-relocated references
to vectorlikes in the dump file.  Clarify commentary.

(cherry picked from commit 0fc2fc9a4de3855cf14b6e1f548795831099981b)

6 weeks agoDon't round-trip auto-reconnect probe in ERC
F. Jason Park [Wed, 9 Apr 2025 06:17:21 +0000 (23:17 -0700)]
Don't round-trip auto-reconnect probe in ERC

* lisp/erc/erc-backend.el (erc-server--reconnect-opened)
(erc--server-reconnect-opened): Rename former to latter.  Restore
original buffer-local value of session connector for Emacs 29 and below.
(erc--server-reconnect-timeout-check)
(erc--server-reconnect-timeout-scale-function): Change from buffer-local
to normal variables, which they should have been originally.
(erc--recon-probe-reschedule): Ensure `erc-server-reconnect-timeout' is
always non-nil to avoid seeing format specifier in admin message.  Use
current buffer when `proc' argument is nil.  Perform cleanup when `proc'
and `erc-server-process' differ.
(erc-server-delayed-check-reconnect-reuse-process-p): New variable.
(erc--recon-probe-sentinel): Run `erc--server-reconnect-opened'
immediately because sending a speculative PING doesn't work on all
servers and proxies, most crucially on ZNC, which replies with an error
only after an extended timeout.
(erc--recon-probe-filter): Remove unused function.
(erc--recon-probe-check) Rework to not use fixed periodic timer, change
second parameter to a Lisp time object.
(erc-server-delayed-check-reconnect): Use realistic name when reusing
process so that the session's process isn't "*erc-connectivity-check*".
Set filter to `ignore'.  Always run `erc--recon-probe-sentinel' when
status is `open' or something other than `connect', but don't bother
spawning a `erc--recon-probe-check' task as well because any problems
creating the process should already be known.  Handle quits during
connect functions that perform blocking I/O, such as
`socks-open-network-stream'.
(erc-schedule-reconnect): Don't bother setting filter to nil.
* test/lisp/erc/erc-scenarios-base-auto-recon.el
(erc-scenarios-base-auto-recon-unavailable)
(erc-scenarios-base-auto-recon-check/no-reuse): Rename former to latter.
(erc-scenarios-base-auto-recon-no-proto)
(erc-scenarios-base-auto-recon-check/reuse): Rename former to latter and
rewrite not to expect a PING.
* test/lisp/erc/resources/erc-d/erc-d.el (erc-d--forget-process): New
function.
(erc-d--process-sentinel): Stop serving when all dialogs have been
exhausted.  (Bug#62044)

(cherry picked from commit c0cb59578b5aeb75b4856dda518d80cd015caa7d)

6 weeks ago; Skip commit 8f18b398a57f2f1bbef28260740e139b0494927b
Eshel Yaron [Thu, 17 Apr 2025 07:18:12 +0000 (09:18 +0200)]
; Skip commit 8f18b398a57f2f1bbef28260740e139b0494927b

6 weeks agoEglot: be aware of LSP version of contextual diagnostics
João Távora [Wed, 16 Apr 2025 23:31:07 +0000 (00:31 +0100)]
Eglot: be aware of LSP version of contextual diagnostics

In certain situations, Eglot has to report to the server parts
of the diagnostics that it itself sent us.  The server may use
this as context to compute code actions, for example.  Eglot
selects diagnostics by asking Flymake, looking for the ones that
contain Eglot-specific cookies.

But when doing so, it is important to also be aware of the LSP
document version these each of these diagnostics pertain to,
since if a diagonstic in the buffer pertains to an older version
of the LSP document (because Flymake fired or the server hasn't
pushed a new set), that diagnostics 'eglot-lsp-data' cookie is
invalid and possibly harmful.

An example is when a diagnostic extends all the way to the end
of the buffer.  If we attempt to fix by shortening the buffer,
an Eldoc-started code actions request may be sent to the server
considering the soon-to-be-deleted Flymake diagnostic as
context.  But that diagnostic's 'eglot-lsp-data' cookie is no
longer valid and when processing that context we try to go past
point-max and burp an annoying error.

Best to check the version of the diagnostic (if we have it) and
ignore the ones that don't match the document version.

* lisp/progmodes/eglot.el (eglot--versioned-identifier): Move up.
(eglot--flymake-diagnostics, eglot--diag-to-lsp-diag): New helpers.
(eglot-handle-notification): Record LSP doc version in diagnostics.
(eglot--code-action-bounds)
(eglot--code-action-params): Use eglot--flymake-diagnostics.

(cherry picked from commit c5b97b7b321c873dbe8a36d27781435ba10a2278)

6 weeks ago; Skip commit 2330e7b6d676761b60c3247f53224815512a9a58
Eshel Yaron [Thu, 17 Apr 2025 07:14:00 +0000 (09:14 +0200)]
; Skip commit 2330e7b6d676761b60c3247f53224815512a9a58

6 weeks agosavehist: Take care not to set nil
Eshel Yaron [Thu, 17 Apr 2025 07:13:37 +0000 (09:13 +0200)]
savehist: Take care not to set nil

6 weeks ago* lisp/textmodes/markdown-ts-mode.el: More ts-modes for code blocks.
Juri Linkov [Wed, 16 Apr 2025 18:45:40 +0000 (21:45 +0300)]
* lisp/textmodes/markdown-ts-mode.el: More ts-modes for code blocks.

(markdown-ts--code-block-language-map): Add more aliases.
(markdown-ts-code-block-source-mode-map): Add more mappings
for existing core ts-modes.
(markdown-ts--convert-code-block-language):
Check 'lang-string' with 'symbolp'.  Check 'mode' with 'fboundp'.

(cherry picked from commit f68482cbc047925d22acf687b814cb94dd7b5bf0)

6 weeks agoChange the default navigation sexp-type in 'elixir-ts-mode'.
Juri Linkov [Wed, 16 Apr 2025 17:32:54 +0000 (20:32 +0300)]
Change the default navigation sexp-type in 'elixir-ts-mode'.

* lisp/progmodes/elixir-ts-mode.el (elixir-ts-mode):
Call 'treesit-cycle-sexp-type' at the end to enable navigation across
nodes defined by the tree-sitter thing 'sexp' by default (bug#76788).

(cherry picked from commit a6d746400cdf237b58c60920f4cb9a38db12951d)

6 weeks agoNew hook 'outline-after-change-functions' (bug#77256).
Juri Linkov [Wed, 16 Apr 2025 17:11:34 +0000 (20:11 +0300)]
New hook 'outline-after-change-functions' (bug#77256).

* lisp/outline.el (outline-after-change-functions): New variable.
(outline--fix-buttons-after-change):
Run hook 'outline-after-change-functions'.

* lisp/treesit.el (treesit--after-change): Improve docstring.
(treesit-major-mode-setup): Simplify to just add
'treesit--after-change' to 'outline-after-change-functions' hook.

* lisp/progmodes/rust-ts-mode.el (rust-ts-mode): Add explicit
'treesit-outline-predicate' that is like
'treesit-simple-imenu-settings', but also adds "trait_item".

(cherry picked from commit 7574eb82c5cd150a0706a81e9f8555962a1e2167)

6 weeks agoAdd 'treesit-language-at-point-default' (bug#77256).
Juri Linkov [Wed, 16 Apr 2025 17:00:56 +0000 (20:00 +0300)]
Add 'treesit-language-at-point-default' (bug#77256).

* lisp/treesit.el (treesit-language-at-point-function):
Change the default value from nil to 'treesit-language-at-point-default'.
(treesit-language-at): Funcall 'treesit-language-at-point-function'
unconditionally.
(treesit-language-at-point-default): New function with body from
'treesit-language-at'.
(treesit-node-at): Simplify by replacing duplicate code
with the call to 'treesit-parsers-at'.

(cherry picked from commit 77bf9d33ee42d90e86d9cc5d3a67356b19ca2f6b)

6 weeks ago(Freplace_region_contents): Treat point as insert-before marker
Stefan Monnier [Wed, 16 Apr 2025 14:15:16 +0000 (10:15 -0400)]
(Freplace_region_contents): Treat point as insert-before marker

Experience suggests that it's more often useful to keep point
at the end of the replacement than it is to keep point at the
beginning of the replacement.
This also aligns the behavior of `replace-region-contents` with
that of `insert`.

* src/insdel.c (replace_range): Treat PT like an insert-before marker.
* src/editfns.c (Freplace_region_contents): Adjust docstring accordingly.

(cherry picked from commit 4532fbefece210061d01ab9523f3054aadb1c45a)

6 weeks ago; Improve documentation of 'help-fns-edit-variable'
Eli Zaretskii [Wed, 16 Apr 2025 08:13:41 +0000 (11:13 +0300)]
; Improve documentation of 'help-fns-edit-variable'

* lisp/help-fns.el (help-fns-edit-variable)
(help-enable-variable-value-editing): Doc fixes.

(cherry picked from commit bf737dc42a70fd8665b7c5ad506249a6119ec4c4)

6 weeks ago; Fix documentation of a recent commit
Eli Zaretskii [Wed, 16 Apr 2025 07:17:30 +0000 (10:17 +0300)]
; Fix documentation of a recent commit

* lisp/textmodes/markdown-ts-mode.el (markdown-ts-delimiter)
(markdown-ts-heading-1, markdown-ts-setext-heading)
(markdown-ts-heading-2, markdown-ts-heading-3)
(markdown-ts-heading-4, markdown-ts-heading-5)
(markdown-ts-heading-6, markdown-ts-list-marker)
(markdown-ts-block-quote, markdown-ts-language-keyword)
(markdown-ts--configured-languages): Doc fixes.

(cherry picked from commit 179c6931c57700d842179eb193369de1587287ee)

6 weeks ago* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window): Fix.
Juri Linkov [Wed, 16 Apr 2025 06:23:35 +0000 (09:23 +0300)]
* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window): Fix.

Select the created frame because 'quit-window' unexpectedly
selects the original frame (https://debbugs.gnu.org/71386#262).
Add a comment about the `message' call bound to the original frame.
https://lists.gnu.org/archive/html/emacs-devel/2025-04/msg00546.html

(cherry picked from commit 864bc762a2006a549ce5274f872c3233ef09003a)

6 weeks agoExpand markdown-ts-mode and add code block support for javascript
Yuan Fu [Wed, 12 Mar 2025 03:37:43 +0000 (20:37 -0700)]
Expand markdown-ts-mode and add code block support for javascript

- Define new faces and use them in place of font-lock faces
- Add more fontification, add a new feature for headings.
- Remove fontification for code blocks, so embedeed parser can
  fontify them
- Add experimental code block support for javascript by using
  tree-sitter setup from js-ts-mode.
- Correctly setup markdown_inline with range settings.

* lisp/textmodes/markdown-ts-mode.el:
(markdown-ts--code-block-language-map):
(markdown-ts-code-block-source-mode-map): New variables.
(markdown-ts-faces): New group.
(markdown-ts-delimiter):
(markdown-ts-heading-1):
(markdown-ts-setext-heading):
(markdown-ts-heading-2):
(markdown-ts-heading-3):
(markdown-ts-heading-4):
(markdown-ts-heading-5):
(markdown-ts-heading-6):
(markdown-ts-list-marker):
(markdown-ts-block-quote):
(markdown-ts-language-keyword): New faces.
(markdown-ts--treesit-settings):
(markdown-ts--configured-languages): New variables.
(markdown-ts--harvest-treesit-configs):
(markdown-ts--add-config-for-mode):
(markdown-ts--convert-code-block-language): New functions.
(markdown-ts--range-settings): New variable.
(markdown-ts-setup): Setup range configuration.
(markdown-ts-mode): Add heading feature.

(cherry picked from commit 6f1e317764dab918d40b08d2e8e9166d42ae6c8d)

6 weeks ago; Add missing :group to new defcustom
Stefan Kangas [Tue, 15 Apr 2025 20:22:16 +0000 (22:22 +0200)]
; Add missing :group to new defcustom

* lisp/dired-aux.el (dired-create-empty-file-in-current-directory):
Add missing :group.

(cherry picked from commit 23b957e128a270f0ea829103839f5645e1c1bf1d)

6 weeks agoShow drag cursor on all window lines (mode, tab, header)
Jared Finder [Sat, 22 Feb 2025 22:25:37 +0000 (14:25 -0800)]
Show drag cursor on all window lines (mode, tab, header)

* lisp/ruler-mode.el (ruler-mode-map): Remove down-mouse-1
binding that conflicts with dragging header line.
* src/xdisp.c (note_mode_line_or_margin_highlight): Renamed
to...
(note_line_or_margin_highlight): ...new name since it applies to
any window line (mode, tab, header).  Set drag cursor for window
top lines.
(note_mouse_highlight): Update call to new name (bug#76084).

(cherry picked from commit 8528249ee29b243772de48c7c44d07744adb3afc)

6 weeks agoBetter handle errors after sync man invocations
Jens Schmidt [Fri, 11 Apr 2025 22:02:56 +0000 (00:02 +0200)]
Better handle errors after sync man invocations

* lisp/man.el (Man-start-calling): Declare as debuggable.
(Man-getpage-in-background): Call `Man-bgproc-sentinel' with a
cons (BUFFER . EXIT-STATUS) as PROCESS argument for synchronous calls.
(Man-bgproc-sentinel): Use that information to handle those more
similarly to asynchronous calls.  Do not employ window selection hacks
for synchronous calls.  (Bug#77755)

(cherry picked from commit f67e64028efd2d2b12126039ffd830e769015910)

6 weeks ago; Skip commit 1d3b1b7d88d7710aed9403c3ce750042387dfe5c
Eshel Yaron [Wed, 16 Apr 2025 07:35:38 +0000 (09:35 +0200)]
; Skip commit 1d3b1b7d88d7710aed9403c3ce750042387dfe5c

6 weeks ago* lisp/treesit.el (treesit-up-list): Signal an error.
Juri Linkov [Tue, 15 Apr 2025 17:33:14 +0000 (20:33 +0300)]
* lisp/treesit.el (treesit-up-list): Signal an error.

Signal 'scan-error' when called noninteractively (bug#77744).

(cherry picked from commit aa24b9c849d13aa63de3079672003fb760bf511f)

6 weeks agoOptionally add new empty file to Dired subdirectory
Stephen Berman [Tue, 15 Apr 2025 17:01:19 +0000 (19:01 +0200)]
Optionally add new empty file to Dired subdirectory

Suggested by Kasper Gałkowski <kpg@posteo.net> (bug#77668)

* etc/NEWS: Announce new Dired user option.

* lisp/dired-aux.el (dired-create-empty-file-in-current-directory):
New user option.
(dired-create-empty-file): Use it.  Update and clarify doc string.

(cherry picked from commit 0ac12aed09702b2d135312e8dad4e173fcd23dae)

6 weeks agoAdd block-comment variables to cc-mode.
Elías Gabriel Pérez [Sun, 13 Apr 2025 18:26:08 +0000 (12:26 -0600)]
Add block-comment variables to cc-mode.

* lisp/progmodes/cc-cmds.el (c-indent-new-comment-line):
Add block-comment-start and block-comment-end
* lisp/progmodes/cc-mode.el (c-basic-common-init):
Declare block-comment-start and block-comment-end buffer-local.
* lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Move
block-comment variables ...
(lisp-mode): ... to here.  (Bug#77424)

(cherry picked from commit 74842b4cb2c164ceed5cbe6ee5ad578ee46fe012)

6 weeks agoFix tree-sitter tests on Emba
Michael Albinus [Tue, 15 Apr 2025 12:17:25 +0000 (14:17 +0200)]
Fix tree-sitter tests on Emba

* test/infra/Dockerfile.emba: Use tree-sitter-rust v0.23.3 in
order to match ABI version of libtree-sitter0.

(cherry picked from commit 788c9cfb62c7fd50b171a9209dd7453bd03f14bf)

6 weeks ago; * exec/loader-mips64el.s (skip_environ): Eliminate one more `daddi'.
Po Lu [Tue, 15 Apr 2025 09:20:37 +0000 (17:20 +0800)]
; * exec/loader-mips64el.s (skip_environ): Eliminate one more `daddi'.

(cherry picked from commit 2b7268c43f52942f88aef1cf442603819c505b21)

6 weeks agoUnconditionally define MIPS_NABI on mips64el
Po Lu [Tue, 15 Apr 2025 09:20:05 +0000 (17:20 +0800)]
Unconditionally define MIPS_NABI on mips64el

* exec/configure.ac (MIPS_NABI): Always define to 1 on
mips64el-*-linux*.

(cherry picked from commit 638b084a611316c6fa4a58adb4dec97e461b31da)

6 weeks ago; Skip commit 3f73b29875dcfcc9b22d8346f8965f3fb31f4fb4
Eshel Yaron [Wed, 16 Apr 2025 07:34:52 +0000 (09:34 +0200)]
; Skip commit 3f73b29875dcfcc9b22d8346f8965f3fb31f4fb4

6 weeks ago* exec/loader-mips64el.s (rest_of_exec): Deal with assembler bugs.
Po Lu [Tue, 15 Apr 2025 09:11:56 +0000 (17:11 +0800)]
* exec/loader-mips64el.s (rest_of_exec): Deal with assembler bugs.

(cherry picked from commit 19b6e36a22513b437b86d4b6418ce31f551902cc)

6 weeks ago* exec/configure.ac (exec_CHECK_MIPS_NABI): Test __LP64__ also.
Po Lu [Tue, 15 Apr 2025 09:03:57 +0000 (17:03 +0800)]
* exec/configure.ac (exec_CHECK_MIPS_NABI): Test __LP64__ also.

(cherry picked from commit 458ad0cb899491da546c06a3f1cd63c0f54623ac)

6 weeks agoPort recent Android changes to mips64el
Po Lu [Tue, 15 Apr 2025 08:14:14 +0000 (16:14 +0800)]
Port recent Android changes to mips64el

* exec/config-mips.m4.in (DADDI2, DADDI3): Disable at-clobbering
by assembler macros expressly.

* exec/loader-mips64el.s: Adapt from loader-mipsel.s.

* exec/configure.ac (exec_cv_as_daddi): Properly escape reg
names.

* exec/exec.c (struct exec_jump_command, exec_0): Don't define
or set `fpu_mode' if __LP64__.

* exec/exec.h (struct exec_tracee): New field `callno'.

* exec/trace.c (process_system_call): Always record the current
system call number in TRACEE lest it should be required once it
has been overwritten upon the syscall's completion.
(seccomp_system_call): Likewise.
(after_fork): Clear `tracee->callno'.

(cherry picked from commit 5bf86e2be0693c579a43759fd1da1651344d401e)

6 weeks ago; Fix tab-bar-tests on MS-Windows
Eli Zaretskii [Tue, 15 Apr 2025 06:45:16 +0000 (09:45 +0300)]
; Fix tab-bar-tests on MS-Windows

* test/lisp/tab-bar-tests.el (tab-bar-tests-quit-restore-window):
Skip test on MS-Windows in batch mode, since terminal frames
cannot be created in that case.

(cherry picked from commit c3fe19aab90c3da68e9a8a48dbfb011317041d1a)

6 weeks agoAddress typos in MIPS executable loader
Po Lu [Tue, 15 Apr 2025 03:14:14 +0000 (11:14 +0800)]
Address typos in MIPS executable loader

* exec/loader-mipsel.s (rest_of_exec): Delete redundant nop.
(skip_environ): Correct stack space test.  Don't jump into
the label for the sp preserving case's delay slot.

(cherry picked from commit e790873be10720c108b9d6833ce0232167f03bf2)

6 weeks agoAvoid performance regressions in unoptimized builds
Po Lu [Tue, 15 Apr 2025 01:53:27 +0000 (09:53 +0800)]
Avoid performance regressions in unoptimized builds

* src/alloc.c (lisp_malloc): Declare val register.

(cherry picked from commit b4551334508076b10a895e400beba5b3e9a5e14c)

6 weeks agoRemove unused XMALLOC_BLOCK_INPUT_CHECK debug facility
Stefan Kangas [Mon, 14 Apr 2025 18:40:49 +0000 (20:40 +0200)]
Remove unused XMALLOC_BLOCK_INPUT_CHECK debug facility

The compile-time option XMALLOC_BLOCK_INPUT_CHECK was added in
2012 (commit 4d7e6e51dd4acecff) to allow blocking input during
malloc-family calls, in case any issues arose from related
changes in Emacs 24.3.  However, it has not been referenced on
emacs-devel or the bug tracker in over a decade.

It is clear that we do not need it, as our signal handlers do not
allocate memory.  Removing it simplifies the allocation function
wrappers and eliminates dead debug code.

Ref: https://debbugs.gnu.org/12450

* src/alloc.c [XMALLOC_BLOCK_INPUT_CHECK]
(malloc_block_input, malloc_unblock_input): Delete functions.
(MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): Delete macros.  Update
all callers.

(cherry picked from commit a7f5d183a8c13dfb7fb43777abdf96233df0ca0c)

6 weeks agoPort recent changes to mipsel systems
Po Lu [Mon, 14 Apr 2025 13:28:15 +0000 (21:28 +0800)]
Port recent changes to mipsel systems

* exec/exec.c (exec_0): Don't disable AT_EXECFN substitution on
MIPS systems.

* exec/loader-aarch64.s (skip_environ): Correct typo in
commentary.

* exec/loader-mips64el.s: Add a disclaimer that this file is
currently inoperable.

* exec/loader-mipsel.s (__start): Move environment and argument
vectors and produce and replace AT_EXECFN.  Clear stack before
proceeding to circumvent an oversight in glibc.

(cherry picked from commit 74df372398dbc90f6c0185f1701af28129073de7)

6 weeks agoSupport file:// URIs and readonly DB in 'sqlite-open'
Eli Zaretskii [Mon, 14 Apr 2025 09:42:28 +0000 (12:42 +0300)]
Support file:// URIs and readonly DB in 'sqlite-open'

* src/sqlite.c (Fsqlite_open): Two new optional arguments,
READONLY and DISABLE-URI.  Doc fix.

* etc/NEWS:
* doc/lispref/text.texi (Database): Document the new optional
arguments to 'sqlite-open'.  (Bug#65274)

(cherry picked from commit 4918de1699152e98c7aaa3ecb21795a3cbd05194)

6 weeks ago; Skip commit f7ca720e2d0aebeabc454a24a600c23fd444b60b
Eshel Yaron [Wed, 16 Apr 2025 07:34:19 +0000 (09:34 +0200)]
; Skip commit f7ca720e2d0aebeabc454a24a600c23fd444b60b

6 weeks agoFix typos in executable loaders
Po Lu [Mon, 14 Apr 2025 01:10:14 +0000 (09:10 +0800)]
Fix typos in executable loaders

* exec/loader-aarch64.s (skip_environ, cleanup): Minor thinkos.

* exec/loader-x86_64.s (skip_environ): Insert missing label.

(cherry picked from commit 462bd149cddc2a7ba81de7ad0c286bcb64681d69)

6 weeks agoFix help-customize in describe-symbol buffers
Dmitry Gutov [Mon, 14 Apr 2025 00:34:42 +0000 (03:34 +0300)]
Fix help-customize in describe-symbol buffers

* lisp/help-fns.el (describe-symbol):
Protect help-mode--current-data from being modified inside the
help-setup-xref call (bug#77510).

(cherry picked from commit f7e34d52dcc175f3205e308ab57e83d7b0515792)

6 weeks ago'dabbrev-buffer-search-condition': Exclude 'image-mode'
Eshel Yaron [Wed, 16 Apr 2025 07:30:10 +0000 (09:30 +0200)]
'dabbrev-buffer-search-condition': Exclude 'image-mode'

6 weeks agosavehist: Only save readable values
Eshel Yaron [Mon, 14 Apr 2025 17:01:15 +0000 (19:01 +0200)]
savehist: Only save readable values

6 weeks agoMinor clean up
Eshel Yaron [Mon, 14 Apr 2025 17:00:49 +0000 (19:00 +0200)]
Minor clean up

6 weeks agostartup.el: Various cleanups, move abbrev to Lisp.
Eshel Yaron [Mon, 14 Apr 2025 15:45:52 +0000 (17:45 +0200)]
startup.el: Various cleanups, move abbrev to Lisp.

6 weeks agodabbrev: also filter visible buffers.
Eshel Yaron [Mon, 14 Apr 2025 15:43:04 +0000 (17:43 +0200)]
dabbrev: also filter visible buffers.

6 weeks ago(cl-generic-define-method): Try and fix bug#77464
Stefan Monnier [Sun, 13 Apr 2025 16:45:54 +0000 (12:45 -0400)]
(cl-generic-define-method): Try and fix bug#77464

* lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't set
the function to `dummy`, even temporarily.

(cherry picked from commit 19913b1567940b8af5bfcef5c6efe19a3656e66b)

6 weeks ago; Skip commit 1dee377bad00737c4730339f62467f45224b5089
Eshel Yaron [Sun, 13 Apr 2025 21:02:34 +0000 (23:02 +0200)]
; Skip commit 1dee377bad00737c4730339f62467f45224b5089

6 weeks ago(calc-save-modes): Add a `lexical-binding` cookie
Stefan Monnier [Sun, 13 Apr 2025 14:33:47 +0000 (10:33 -0400)]
(calc-save-modes): Add a `lexical-binding` cookie

* lisp/calc/calc-mode.el (calc-save-modes): Add a `lexical-binding`
cookie when it is safe.  Use `pcase-dolist` and `pp`.

(cherry picked from commit 9dfd4c6bd3140585392a428201088e9f019b0071)