1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-14 19:01:45 -07:00
Commit graph

179255 commits

Author SHA1 Message Date
Michael Albinus
8a6fdffed2 ; Merge from origin/emacs-30
The following commit was skipped:

34f35407eb Bump Emacs version to 30.2.50
2025-08-16 13:35:48 +02:00
Michael Albinus
8700cd24ca Merge from origin/emacs-30
636f166cfc ; * make-dist: Include ELisp hierarchy diagram in tarball...
2025-08-16 13:35:47 +02:00
Michael Albinus
cf45a3fd79 ; Merge from origin/emacs-30
The following commit was skipped:

1514695b7d ; Update lisp/ldefs-boot.el.  Do not merge to master.
2025-08-16 13:35:45 +02:00
Michael Albinus
ea1157f68f Merge from origin/emacs-30
8960e3af81 Update files for Emacs 30.2
ebeca61755 * admin/admin.el (set-version): Fix handling of official ...
2025-08-16 13:35:43 +02:00
Michael Albinus
6d95df628c ; Merge from origin/emacs-30
The following commit was skipped:

8ddef0ad4d Bump Emacs version
2025-08-16 13:35:42 +02:00
Michael Albinus
839f416de7 Merge from origin/emacs-30
49d64bfb1a ; * etc/NEWS: Update for Emacs 30.2.
4b90b6e7ce ; * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Doc fi...
2025-08-16 13:35:00 +02:00
Manuel Giraud
cc37d199b0 Handle 'lexical-binding' cookie in nnrss output
* lisp/gnus/nnrss.el (nnrss-save-server-data)
(nnrss-save-group-data): Add a 'lexical-binding' cookie.
* lisp/gnus/nnrss.el (nnrss-read-server-data)
(nnrss-read-group-data): Allow missing 'lexical-binding' cookie.
(Bug#79199)
2025-08-16 13:49:19 +03:00
Eli Zaretskii
034d755f2f ; * src/process.c (set_proc_thread): Fix assertion. 2025-08-16 13:28:52 +03:00
Eli Zaretskii
9985e71eb7 ; Stabilize a Windows-specific process-test
* test/src/process-tests.el (process-sentinel-interrupt-event):
Improve stability of results, and show all of the results.
2025-08-16 13:11:19 +03:00
Eli Zaretskii
c93be71e45 Make sure 'make-process' locks the process to the current thread
* src/process.c (set_proc_thread): New function.
(Fset_process_thread, create_process): Use it.
2025-08-16 13:01:01 +03:00
Spencer Baugh
37325ed5a9 Zero fd_callback_info when deleting an fd
.waiting_thread and .thread could be left set to non-NULL values
in a deleted fd_callback_info entry.  These would never be
cleared by e.g. clear_waiting_thread_info since that only clears
fd_callback_info entries up to max_desc.  Clear fd_callback_info
entirely when deleting an entry.

* src/process.c (clear_fd_callback_data): Add.
(delete_write_fd, delete_keyboard_wait_descriptor): Call
clear_fd_callback_data. (bug#79201)
(delete_read_fd): Remove duplicated clearing code.
(deactivate_process): Remove duplicate recompute_max_desc.
2025-08-16 12:51:35 +03:00
Eli Zaretskii
406140df33 ; Skip a process-test that is unreliable on MS-Windows
* test/src/process-tests.el
(process-tests/multiple-threads-waiting): Skip on MS-Windows.
2025-08-16 12:04:59 +03:00
john muhl
ff05a689e3 (diff--font-lock-prettify): Fix fringe width test
* lisp/vc/diff-mode.el (diff--font-lock-prettify):
Use 'window-fringes' instead of the 'left-fringe' frame parameter
since the former returns an integer on both GUI and TTY frames.
2025-08-16 04:59:49 -04:00
Eli Zaretskii
01e351de60 Reject non-nil non-number REPEAT in 'run-with-timer'
* lisp/emacs-lisp/timer.el (run-at-time, run-with-timer): Reject
non-nil REPEAT if it is not a non-negative number.  (Bug#79227)
Doc fixes.

* test/lisp/emacs-lisp/timer-tests.el (timer-test-repeat-arg): New
test.
2025-08-16 10:53:12 +03:00
Matthew Tromp
2987022976 Delete overlays from Flymake backends that no longer exist
Fix for bug#78862: previously, when starting eglot, existing flymake
diagnostics in the buffer would persist until flymake was completely
restarted (like by running 'flymake-mode' twice).  This change adds
logic to 'flymake-start' to delete all diagnostics and their overlays
from any backend that is no longer in 'flymake-diagnostic-functions'.
* lisp/progmodes/flymake.el (flymake-start): Remove overlays from
backends that no longer exist.
2025-08-15 17:46:42 +03:00
Eli Zaretskii
764999bd8d ; * lisp/register.el (register-alist, jump-to-register): Doc fix (bug#79243). 2025-08-15 17:40:46 +03:00
Eli Zaretskii
46b22304b0 Update description of buffer-in-register
* doc/lispref/text.texi (Registers): Update register-in-buffer
form.  (Bug#79243)
2025-08-15 13:46:40 +03:00
Juri Linkov
d99354720b ; * test/infra/Dockerfile.emba: Fix warning about casing not matching. 2025-08-14 20:59:15 +03:00
Juri Linkov
0ac3a1f26c New user option 'treesit-enabled-modes' (bug#79180)
* lisp/treesit.el (treesit-enabled-modes): New user option.
* src/treesit.c (treesit-major-mode-remap-alist): New variable.

* lisp/progmodes/c-ts-mode.el:
* lisp/progmodes/csharp-mode.el:
* lisp/progmodes/java-ts-mode.el:
* lisp/progmodes/js.el:
* lisp/progmodes/json-ts-mode.el:
* lisp/progmodes/ruby-ts-mode.el:
* lisp/progmodes/sh-script.el:
* lisp/textmodes/css-mode.el:
* lisp/textmodes/mhtml-ts-mode.el:
* lisp/textmodes/toml-ts-mode.el:
Add ts-mode mapping to 'treesit-major-mode-remap-alist'
for ts-modes that already have the corresponding non-ts mode
association in 'auto-mode-alist'.

* lisp/progmodes/cmake-ts-mode.el (cmake-ts-mode-maybe):
* lisp/progmodes/dockerfile-ts-mode.el (dockerfile-ts-mode-maybe):
* lisp/progmodes/elixir-ts-mode.el (elixir-ts-mode-maybe):
* lisp/progmodes/go-ts-mode.el (go-ts-mode-maybe)
(go-mod-ts-mode-maybe, go-work-ts-mode-maybe):
* lisp/progmodes/heex-ts-mode.el (heex-ts-mode-maybe):
* lisp/progmodes/lua-ts-mode.el (lua-ts-mode-maybe):
* lisp/progmodes/php-ts-mode.el (php-ts-mode-maybe):
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode-maybe):
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode-maybe)
(tsx-ts-mode-maybe):
* lisp/textmodes/markdown-ts-mode.el (markdown-ts-mode-maybe):
* lisp/textmodes/yaml-ts-mode.el (yaml-ts-mode-maybe):
Add a wrapper function to 'auto-mode-alist'
for ts-modes that have no corresponding non-ts mode.
Also add a mapping to 'treesit-major-mode-remap-alist'
for the case when a non-ts mode is installed from an external
source to be able to customize it with 'treesit-enabled-modes'.
2025-08-14 19:40:08 +03:00
Elijah Gabe Pérez
97e2e90519 Fix lua-ts-mode-tests.el
* test/lisp/progmodes/lua-ts-mode-tests.el
(lua-ts-test-auto-close-block-comments): Skip when needed.
2025-08-14 16:29:45 +02:00
Sean Whitton
fb5e6c6bb7 vc-git-modify-change-comment: Bind c-s-f-w for command arguments too
* lisp/vc/vc-git.el (vc-git-modify-change-comment): Bind
coding-system-for-write to locale-coding-system around the call
to vc-git-command on MS-Windows.  The temporary file name could
contain non-ASCII, e.g. the user's username.
2025-08-14 14:56:07 +01:00
Sean Whitton
ea7aee894d vc-buffer-sync-fileset: Reorder some checks for speed (bug#79137)
* lisp/vc/vc.el (vc-buffer-sync-fileset): Check whether a
buffer's file is in one of our directories before checking
whether it exists on disk.  This should mean far fewer system
calls overall (bug#79137).
2025-08-14 14:50:09 +01:00
Po Lu
e9800cabff Fix generation of defvars defined by easy-mmode and company in loaddefs.el
* lisp/emacs-lisp/loaddefs-gen.el
(loaddefs-generate--make-autoload): Restore previously existing
conditions for recursing on macroexpansions when processing
easy-mmode and related macros.
2025-08-14 19:34:28 +08:00
Sean Whitton
02f5a075dc vc-hg-checkin-patch: Fix several issues
* lisp/vc/vc-hg.el (vc-hg-checkin-patch): Use
make-nearby-temp-file.  Protect the async process with
vc-wait-for-process-before-save.  Don't call vc-checkin-hook
here, instead return a (async . #<process>) list so that
vc-finish-logentry does it.
2025-08-14 11:54:33 +01:00
Eli Zaretskii
34f35407eb Bump Emacs version to 30.2.50
* README:
* configure.ac:
* exec/configure.ac:
* java/AndroidManifest.xml.in (Version-code):
* nt/README.W32:
* msdos/sed2v2.inp: Bump Emacs version to 30.2.50.

* etc/NEWS: Add headers for Emacs 30.2.
2025-08-14 06:46:32 -04:00
Eli Zaretskii
636f166cfc ; * make-dist: Include ELisp hierarchy diagram in tarballs (bug#76441). 2025-08-14 05:04:03 -04:00
Eli Zaretskii
1514695b7d ; Update lisp/ldefs-boot.el. Do not merge to master. 2025-08-14 04:24:11 -04:00
Eli Zaretskii
8960e3af81 Update files for Emacs 30.2
* ChangeLog.5:
* etc/AUTHORS:
* etc/HISTORY: Update for Emacs 30.2.

* admin/admin.el (set-version): Fix handling of official releases.
2025-08-14 04:05:28 -04:00
Eli Zaretskii
ebeca61755 * admin/admin.el (set-version): Fix handling of official releases. 2025-08-14 03:54:52 -04:00
Eli Zaretskii
8ddef0ad4d Bump Emacs version
* README:
* configure.ac:
* exec/configure.ac:
* java/AndroidManifest.xml.in (Version-code):
* nt/README.W32:
* msdos/sed2v2.inp: Bump Emacs version to 30.2.
2025-08-14 03:52:16 -04:00
Eli Zaretskii
49d64bfb1a ; * etc/NEWS: Update for Emacs 30.2. 2025-08-14 03:03:07 -04:00
Eshel Yaron
9351fad650
; * lisp/completion-preview.el: Fix race condition.
* lisp/completion-preview.el (completion-preview--update):
Bind 'inhibit-quit' to non-nil around completion preview
overlay initialization.  This binding prevents the
surrounding 'while-no-input' from interrupting the overlay
initialization, which yields an inconsistent state wherein
the overlay is visible but completion-preview-active-mode
wasn't enabled.
2025-08-13 21:48:18 +02:00
Michael Albinus
7856dd557a Limit size of Tramp debug buffer
* doc/misc/tramp.texi (Traces and Profiles): Add
tramp-debug-buffer-limit to index.  Describe it.

* lisp/net/tramp-message.el (tramp-debug-buffer-limit): New defcustom.
(tramp-debug-message): Use it.  (Bug#79182)
2025-08-13 17:33:37 +02:00
Michael Albinus
40e4394f87 Fix file notification problem on Windows.
* src/inotify.c (inotify_callback): Set event.frame_or_window to Qnil.

* src/keyboard.c (make_lispy_event): Make a better check for the
HAVE_W32NOTIFY case when creating a Qfile_notify event.
2025-08-12 22:05:44 +02:00
Sean Whitton
bb1c737531 vc-test--other-working-trees: Export env vars so Git finds an author
* test/lisp/vc/vc-tests/vc-tests.el
(vc-test--with-author-identity): New macro, factored out of
vc-test--version-diff.
(vc-test--version-diff, vc-test--other-working-trees): Use it.
2025-08-12 20:35:49 +01:00
Sean Whitton
e48592ef3b * lisp/vc/vc-hg.el (vc-hg-checkin): Pass '-A' to 'hg commit'. 2025-08-12 20:27:09 +01:00
Eli Zaretskii
56bfd63bb8 ; Fix documentation of a recent commit
* lisp/tab-line.el (tab-line-tabs-window-buffers-filter-function):
Fix wording of option value :tags.
(tab-line-tabs-non-excluded): Doc fix.  (Bug#79159)
2025-08-12 21:25:56 +03:00
Juri Linkov
d487591edb * lisp/tab-bar.el: Revert caching in 'tab-bar-format-align-right'.
(tab-bar--align-right-cache): Remove variable.
(tab-bar-format-align-right): Remove uses of
'tab-bar--align-right-cache' (bug#79141).
2025-08-12 20:49:02 +03:00
Elías Gabriel Pérez
8f08cb386e tab-line: Allow to hide excluded buffers in the tab line. (Bug#79159)
* etc/NEWS: Announce changes.
* lisp/tab-line.el (tab-line-tabs-window-buffers-filter-function):
New user option.
(tab-line-tabs-non-excluded): New function.
(tab-line-tabs-window-buffers): Update.
2025-08-12 20:30:37 +03:00
Sean Whitton
c75c95ad58 vc-buffer-sync-fileset: Optimization when NOT-ESSENTIAL is non-nil
* lisp/vc/vc.el (vc-buffer-sync-fileset): When NOT-ESSENTIAL is
non-nil, use string-prefix-p instead of file-in-directory-p
(bug#79137).
2025-08-12 16:01:12 +01:00
Sean Whitton
2923d244a3 vc-test--other-working-trees: Fix a skip condition
* test/lisp/vc/vc-tests/vc-tests.el
(vc-test--other-working-trees): For Git, don't try moving the
first working tree unless we have Git>=2.29.
2025-08-12 14:36:15 +01:00
Sean Whitton
81aa814e59 vc-do-command: In batch mode, print the output of failed commands
* lisp/vc/vc-dispatcher.el (vc-do-command): In batch mode, when
the command fails, print its output.
2025-08-12 14:34:45 +01:00
Sean Whitton
c687756ce2 vc-test-git07-other-working-trees: Widen scope of skip on Git<=2.17
* test/lisp/vc/vc-tests/vc-tests.el
(vc-test--other-working-trees): Delete condition to skip
'move-working-tree' tests on Git<=2.17.
(vc-test-git07-other-working-trees): Skip this whole test on
Git<=2.17 (discussion in bug#79024).
2025-08-12 14:11:13 +01:00
Eshel Yaron
ae5287c37b
; Fix bug#79212.
* lisp/help-fns.el (describe-mode): Fix output when we do not find
the definition source.
2025-08-12 13:31:12 +02:00
Po Lu
498b2b6d2a Fix build without tree-sitter
* lisp/textmodes/mhtml-ts-mode.el
(mhtml-ts-mode--range-settings): Don't invoke
`treesit-language-available-p' unless bound.
2025-08-12 09:34:57 +08:00
Dr.Sc.KAWAMOTO,Takuji
5b9f4ee76e Fix NS frame position update after resize/move
Fixes bug#74074, bug#79164.

* src/nsterm.m ([EmacsView windowDidEndLiveResize:]):
([EmacsView updateFramePosition]): New functions.
([EmacsView windowDidMove:]): Move contents of this function into
updateFramePosition and call it.

Copyright-paperwork-exempt: yes
2025-08-11 21:54:58 +01:00
Eli Zaretskii
4293a7678b ; Fix last change in mhtml-ts-mode.el
* lisp/textmodes/mhtml-ts-mode.el (mhtml-ts-mode--range-settings):
Avoid asking about grammar installation when loading.  (Bug#79215)
2025-08-11 21:44:26 +03:00
Dmitry Gutov
fd5866cae4 ; Coding style fix 2025-08-11 02:33:53 +03:00
JD Smith
a15a4fa94b Do not include interactive args in autoload files
(Bug#78995)

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--make-autoload):
Do not include `interactive' ARG-DESCRIPTOR in generated autoload forms
for function-defining macros, but only modes.
2025-08-10 18:14:43 -04:00
JD Smith
7486e5c368 Implement new autoload macro expansion declare form
Currently, a hard-coded set of macros is automatically expanded
during generation of autoloads.  To allow user macros to request
such expansion, this implements a new declare form
`autoload-macro' (Bug#78995), with supported value `expand'.
For example, macros which wrap `define-minor-mode', can declare
`(autoload-macro expand)' to request that ;;;###autoload-adorned
calls to the macro are expanded during generation, such that an
autoload for the resulting function is created.

* lisp/emacs-lisp/byte-run.el (byte-run--set-autoload-macro):
Handle autoload-macro declare forms.
(macro-declarations-alist) Add handler for 'autoload-macro
declare forms.
(defmacro, defun):
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric, cl-defun)
(cl-iter-defun, cl-defmacro, cl-defstruct):
* lisp/emacs-lisp/easy-mmode.el
(define-minor-mode, define-globalized-minor-mode, iter-defun):
* lisp/emacs-lisp/inline.el (define-inline):
* lisp/emacs-lisp/pcase.el (pcase-defmacro):
Declare (autoload-macro expand) to request expansion of the
macro during autoload generation.

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--make-autoload):
Handle the `autoload-macro=expand' property for macros.  Load
the ;;;###autoload-containing file if an unknown symbol is
encountered in the car of the following form, to give packages a
chance to define their macros and request expansion.  Factor
list of special function-defining macros out as a constant
variable: `loaddefs--defining-macros'.

* doc/lispref/functions.texi (Declare Form):
* doc/lispref/loading.texi (Autoload): Document `autoload-macro'.
2025-08-10 18:14:23 -04:00