From: Michael <sp1ff@runbox.com>
To: Lars Ingebrigtsen <larsi@gnus.org>
Cc: gazally@runbox.com, 51037@debbugs.gnu.org
Subject: bug#51037: [PATCH] Make `print-level` & `print-length` customizable in ERT batch tests
Date: Tue, 26 Oct 2021 14:10:01 -0700 [thread overview]
Message-ID: <86bl3blcgm.fsf@runbox.com> (raw)
In-Reply-To: <87y26hz24c.fsf@gnus.org>
Lars Ingebrigtsen <larsi@gnus.org> writes:
> Michael <sp1ff@runbox.com> writes:
>
>> The issue: stack traces are printed by the `backtrace`
>> package. backtrace.el was authored by Gemini (which is why I've
>> added him to this thread). backtrace.el doesn't directly work
>> in
>> terms of `print-le{ngth,vel}`: it defines a custom variable
>> `backtrace-line-length` and then adjusts print-level &
>> print-length in let bindings in order to:
>>
>> 1. try to respect the desired line length
>> 2. not trigger bug 31919 (Lisp Debugger doesn't work when at
>> stack limit)
>
> [...]
>
>> For myself, I was quite surprised to all learn this: I had to
>> spend a fair bit of time digging through the source to find out
>> what was happening to my settings for print-length &
>> print-level.
>
> Yeah, I didn't remember `backtrace-line-length' either. Perhaps
> it
> should be linked to from the doc strings of print-length and
> print-level...
I was thinking to augment the docstring for
`backtrace-line-lenght' to note that print-level & print-length
will be overiden to honor it.
>> My personal incliniation is to remove the
>> `backtrace-line-length`
>> variable entirely, and make the `debug` package responsible for
>> controlling print-level so as to avoid 31919. But that's me: is
>> there a compelling use-case for backtrace.el working in terms
>> of
>> limiting line length rather than just using
>> `print-le{ve,ength}`?
>
> Well... if we're talking in an ert context, it could increase
> both the
> backtrace-line-length and max-lisp-eval-depth variables when
> gathering
> the backtrace, I think?
The problem is that I can't know a priori how big I have to set
them in order to honor print-level & print-length. I think I can
short-circuit this entirely by setting `backtrace-line-length' to
nil or zero before printing the backtrace from ert. eval-level
shouldn't enter into it I think; the concern was that if code
exceeded max-lisp-eval-depth, and the debugger was triggered,
*then* backtrace.el might have problems. Do you see a reason to
be concerned outside of that corner case?
--
Michael <sp1ff@runbox.com>
next prev parent reply other threads:[~2021-10-26 21:10 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-05 14:28 bug#51037: [PATCH] Make `print-level` & `print-length` customizable in ERT batch tests Michael
2021-10-06 9:30 ` Lars Ingebrigtsen
2021-10-06 12:52 ` Eli Zaretskii
2021-10-07 7:59 ` Lars Ingebrigtsen
2021-10-07 8:25 ` Eli Zaretskii
2021-10-07 19:03 ` Lars Ingebrigtsen
2021-10-12 13:52 ` Michael
2021-10-13 11:07 ` Lars Ingebrigtsen
2021-10-13 13:41 ` Michael
2021-10-13 14:06 ` Lars Ingebrigtsen
2021-10-24 19:50 ` Michael
2021-10-25 13:03 ` Gemini Lasswell
2021-10-26 21:02 ` Michael
2021-10-27 13:13 ` Lars Ingebrigtsen
2021-10-25 13:05 ` Lars Ingebrigtsen
2021-10-26 21:10 ` Michael [this message]
2021-10-27 13:15 ` Lars Ingebrigtsen
2021-11-14 2:55 ` Michael
2021-11-14 7:05 ` Eli Zaretskii
2021-11-14 15:42 ` Michael
2021-11-14 18:04 ` Eli Zaretskii
2021-11-15 23:11 ` Michael
2021-11-14 14:39 ` Lars Ingebrigtsen
2021-11-14 14:42 ` Lars Ingebrigtsen
2021-11-14 17:45 ` Michael
2021-11-14 17:50 ` Lars Ingebrigtsen
2021-11-15 23:32 ` Michael
2021-11-16 7:48 ` Lars Ingebrigtsen
2021-11-17 16:22 ` Filipp Gunbin
2021-11-18 9:27 ` Lars Ingebrigtsen
2021-11-18 13:51 ` Filipp Gunbin
2021-11-19 15:24 ` Michael
2021-11-19 18:46 ` Filipp Gunbin
2021-11-20 16:49 ` Michael
2021-11-20 22:19 ` Filipp Gunbin
2021-11-22 14:07 ` Michael
2021-11-22 17:29 ` Filipp Gunbin
2021-11-24 16:29 ` Michael
2021-11-24 19:53 ` Filipp Gunbin
2021-11-29 16:16 ` Michael
2021-10-07 21:04 ` Andy Moreton
2021-10-07 22:04 ` Lars Ingebrigtsen
2021-10-08 13:49 ` Andy Moreton
2021-10-08 15:24 ` Michael
2021-10-09 11:19 ` Lars Ingebrigtsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86bl3blcgm.fsf@runbox.com \
--to=sp1ff@runbox.com \
--cc=51037@debbugs.gnu.org \
--cc=gazally@runbox.com \
--cc=larsi@gnus.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).