* bug#72811: 28.2; global-display-line-numbers-mode with debbugs package cause Lisp nesting exceeds ‘max-lisp-eval-depth’
@ 2024-08-25 22:19 Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-08-29 12:00 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-08-25 22:19 UTC (permalink / raw)
To: 72811; +Cc: Robert Weiner
Hi,
With Emacs 27.2 and 28.2 using global-display-line-numbers-mode after fetching a bug with debbugs leads to Lisp nesting exceeds ‘max-lisp-eval-depth’. With Emacs 29.4 or Emacs 30 there is no error.
The recipe used is this:
(setq debug-on-error t)
(require 'package)
(package-refresh-contents)
(package-install 'debbugs)
(debbugs-gnu-bugs 100)
(global-display-line-numbers-mode)
Tested by putting the recipe in a file "dot-emacs" in the current folder and running with docker for the different Emacs versions: (Example for 28.2)
> docker run -v $(pwd):/emacs -it silex/emacs:28.2 emacs -Q -l /emacs/dot-emacs
The backtrace:
Debugger entered--Lisp error: (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
window-normalize-window(#<window 1 on *Bugs*> t)
set-window-buffer-start-and-point(#<window 1 on *Bugs*> #<buffer *scratch*> #<marker at 1 in *scratch*> #<marker at 1 in *scratch*>)
switch-to-prev-buffer(#<window 1 on *Bugs*> kill)
replace-buffer-in-windows(#<buffer *Bugs*>)
kill-buffer("*Bugs*")
debbugs-gnu-show-reports()
debbugs-gnu-rescan()
run-hooks(tabulated-list-revert-hook)
tabulated-list-revert()
run-hooks(display-line-numbers-mode-hook display-line-numbers-mode-on-hook)
display-line-numbers-mode()
display-line-numbers--turn-on()
global-display-line-numbers-mode-enable-in-buffers()
run-hooks(after-change-major-mode-hook)
run-mode-hooks(debbugs-gnu-mode-hook)
debbugs-gnu-mode()
debbugs-gnu-show-reports()
debbugs-gnu-rescan()
run-hooks(tabulated-list-revert-hook)
tabulated-list-revert()
run-hooks(display-line-numbers-mode-hook display-line-numbers-mode-on-hook)
display-line-numbers-mode()
display-line-numbers--turn-on()
global-display-line-numbers-mode-enable-in-buffers()
run-hooks(after-change-major-mode-hook)
run-mode-hooks(debbugs-gnu-mode-hook)
debbugs-gnu-mode()
debbugs-gnu-show-reports()
[...repeating lines deleted...]
debbugs-gnu-rescan()
run-hooks(tabulated-list-revert-hook)
tabulated-list-revert()
run-hooks(display-line-numbers-mode-hook display-line-numbers-mode-on-hook)
display-line-numbers-mode()
display-line-numbers--turn-on()
global-display-line-numbers-mode()
eval-buffer(#<buffer *load*> nil "/emacs/dot-emacs" nil t) ; Reading at buffer position 155
load-with-code-conversion("/emacs/dot-emacs" "/emacs/dot-emacs" nil t)
load("/emacs/dot-emacs" nil t)
command-line-1(("-l" "/emacs/dot-emacs"))
command-line()
normal-top-level()
Yours
--
%% Mats
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#72811: 28.2; global-display-line-numbers-mode with debbugs package cause Lisp nesting exceeds ‘max-lisp-eval-depth’
2024-08-25 22:19 bug#72811: 28.2; global-display-line-numbers-mode with debbugs package cause Lisp nesting exceeds ‘max-lisp-eval-depth’ Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-08-29 12:00 ` Eli Zaretskii
2024-08-29 20:12 ` Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2024-08-29 12:00 UTC (permalink / raw)
To: Mats Lidell; +Cc: rswgnu, 72811
> Cc: Robert Weiner <rswgnu@gmail.com>
> Date: Mon, 26 Aug 2024 00:19:16 +0200
> From: Mats Lidell via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>
> With Emacs 27.2 and 28.2 using global-display-line-numbers-mode after fetching a bug with debbugs leads to Lisp nesting exceeds ‘max-lisp-eval-depth’. With Emacs 29.4 or Emacs 30 there is no error.
I guess we already fixed this, so we could close this bug. Still...
> debbugs-gnu-rescan()
> run-hooks(tabulated-list-revert-hook)
> tabulated-list-revert()
> run-hooks(display-line-numbers-mode-hook display-line-numbers-mode-on-hook)
> display-line-numbers-mode()
> display-line-numbers--turn-on()
> global-display-line-numbers-mode()
...can you figure out which Lisp caused display-line-numbers-mode or
display-line-numbers-mode-on-hook to run tabulated-list-revert? I
couldn't find that anywhere in Emacs, and also not in debbugs. I do
see that debbugs-gnu adds to tabulated-list-revert-hook the function
debbugs-gnu-rescan, which then changes the major mode, which causes
display-line-numbers-mode to be turned on again, so what happens after
that is clear: infinite recursion. But I cannot understand why was
tabulated-list-revert called in the first place.
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#72811: 28.2; global-display-line-numbers-mode with debbugs package cause Lisp nesting exceeds ‘max-lisp-eval-depth’
2024-08-29 12:00 ` Eli Zaretskii
@ 2024-08-29 20:12 ` Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-09-14 7:31 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-08-29 20:12 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: rswgnu, 72811
> Eli Zaretskii writes:
> I guess we already fixed this, so we could close this bug. Still...
Yes. But I was curious since I could not find any commit in Emacs that looked
related to fixing this.
> ...can you figure out which Lisp caused display-line-numbers-mode or
> display-line-numbers-mode-on-hook to run tabulated-list-revert? I
> couldn't find that anywhere in Emacs, and also not in debbugs. I do
> see that debbugs-gnu adds to tabulated-list-revert-hook the function
> debbugs-gnu-rescan, which then changes the major mode, which causes
> display-line-numbers-mode to be turned on again, so what happens after
> that is clear: infinite recursion. But I cannot understand why was
> tabulated-list-revert called in the first place.
I could not either so I filed the bug report. ;-) And hoped someone could
figure it out. \o/
%% Mats
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#72811: 28.2; global-display-line-numbers-mode with debbugs package cause Lisp nesting exceeds ‘max-lisp-eval-depth’
2024-08-29 20:12 ` Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-09-14 7:31 ` Eli Zaretskii
0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2024-09-14 7:31 UTC (permalink / raw)
To: Mats Lidell; +Cc: rswgnu, 72811-done
> From: Mats Lidell <mats.lidell@lidells.se>
> Cc: 72811@debbugs.gnu.org, rswgnu@gmail.com
> Date: Thu, 29 Aug 2024 22:12:16 +0200
>
> > Eli Zaretskii writes:
> > I guess we already fixed this, so we could close this bug. Still...
>
> Yes. But I was curious since I could not find any commit in Emacs that looked
> related to fixing this.
>
> > ...can you figure out which Lisp caused display-line-numbers-mode or
> > display-line-numbers-mode-on-hook to run tabulated-list-revert? I
> > couldn't find that anywhere in Emacs, and also not in debbugs. I do
> > see that debbugs-gnu adds to tabulated-list-revert-hook the function
> > debbugs-gnu-rescan, which then changes the major mode, which causes
> > display-line-numbers-mode to be turned on again, so what happens after
> > that is clear: infinite recursion. But I cannot understand why was
> > tabulated-list-revert called in the first place.
>
> I could not either so I filed the bug report. ;-) And hoped someone could
> figure it out. \o/
No further comments, so I'm closing this bug.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-09-14 7:31 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-25 22:19 bug#72811: 28.2; global-display-line-numbers-mode with debbugs package cause Lisp nesting exceeds ‘max-lisp-eval-depth’ Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-08-29 12:00 ` Eli Zaretskii
2024-08-29 20:12 ` Mats Lidell via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-09-14 7:31 ` Eli Zaretskii
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).