Subject: Re: bug#76131: 30.0.93; vlf: advice for abort-if-file-too-large seems broken in Emacs 30

From: Stefan Kangas <[email-masked]>
Date: Fri, 7 Feb 2025 13:14:13 -0800

fap via "Bug reports for GNU Emacs, the Swiss army knife of text
editors" <[email-masked]> writes:

> After upgrading to Emacs 30 I couldn't open files anymore
> with (vlf-setup) applied / required.

For context, this bug report is about:
    https://elpa.gnu.org/packages/vlf.html

Andrey, do you have any comments?

> The backtrace is as follows:
>
> Debugger entered--Lisp error: (void-variable always)
>    ad-Advice-abort-if-file-too-large(#f(compiled-function (size op-type
> filename &optional offer-raw) "If file SIZE larger than
> `large-file-warning-threshold', allow user to abort.\nOP-TYPE specifies
> the file operation being performed (for message\nto user).  If OFFER-RAW
> is true, give user the additional option\nto open the file literally.
> If the user chooses this option,\n`abort-if-file-too-large' returns the
> symbol `raw'.  Otherwise,\nit returns nil or exits non-locally."
> #<bytecode -0x118b121ca418257d>) 16007 "open"
> "~/.local/share/chezmoi/emacs/github-pandoc.css" t)
>    apply(ad-Advice-abort-if-file-too-large #f(compiled-function (size
> op-type filename &optional offer-raw) "If file SIZE larger than
> `large-file-warning-threshold', allow user to abort.\nOP-TYPE specifies
> the file operation being performed (for message\nto user).  If OFFER-RAW
> is true, give user the additional option\nto open the file literally.
> If the user chooses this option,\n`abort-if-file-too-large' returns the
> symbol `raw'.  Otherwise,\nit returns nil or exits non-locally."
> #<bytecode -0x118b121ca418257d>) (16007 "open"
> "~/.local/share/chezmoi/emacs/github-pandoc.css" t))
>    abort-if-file-too-large(16007 "open"
> "~/.local/share/chezmoi/emacs/github-pandoc.css" t)
>
> find-file-noselect("/home/fap/.local/share/chezmoi/emacs/github-pandoc.css"
> nil nil t)
>    find-file("/home/fap/.local/share/chezmoi/emacs/github-pandoc.css" t)
>    funcall-interactively(find-file
> "/home/fap/.local/share/chezmoi/emacs/github-pandoc.css" t)
>    call-interactively(find-file nil nil)
>    command-execute(find-file)
>
> I looked at the code, but I don't really get how 'always could get
> interpreted as a variable?
>
> In GNU Emacs 30.0.93 (build 1, x86_64-pc-linux-gnu, GTK+ Version
>   3.24.41, cairo version 1.18.0) of 2025-02-07 built on T580
> Repository revision: 6cfab9154ddec0adc5b8a6701019c9c066c3f9f9
> Repository branch: pretest
> System Description: Ubuntu 24.04.1 LTS