[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#53843: 27.2; unknown function used in flymake
From: |
Robert Pluim |
Subject: |
bug#53843: 27.2; unknown function used in flymake |
Date: |
Mon, 07 Feb 2022 16:05:18 +0100 |
>>>>> On Mon, 07 Feb 2022 15:50:03 +0100, Nicolas Martyanoff
>>>>> <khaelin@gmail.com> said:
Nicolas> Robert Pluim <rpluim@gmail.com> writes:
>>>>>>> On Mon, 07 Feb 2022 13:54:23 +0100, Nicolas Martyanoff
<khaelin@gmail.com> said:
>>
Nicolas> Hi,
>>
Nicolas> Using eglot with python-mode (with pyright) causes regular errors
Nicolas> involving flymake caused by calls to an unknown "string-replace"
Nicolas> function:
>>
>> `string-replace' was added in emacs-28, so it looks like your flymake
>> package needs adjusting. (the version shipped with emacs-28 has ;;
>> Package-Requires: ((emacs "28.1") (eldoc "1.1.0") (project "0.7.1")))
Nicolas> I am using eglot which references a flymake copy from
Nicolas> https://github.com/emacs-straight/flymake.
Hmm, is that the canonical upstream? I donʼt think so.
Nicolas> The author of eglot told me to report the bug here, but I guess the
Nicolas> problem comes from eglot (which requires 26.1+) using a copy of
flymake
Nicolas> which requires (28.1+).
Nicolas> I do not understand why emacs loads this copy of flymake without
Nicolas> signaling an error given the constraint in Package-Requires, or
why is
Nicolas> eglot using a copy of flymake altogether, but these problems are
Nicolas> unrelated to string-replace.
I think Package-Requires is used by package.el to prevent you
*installing* incompatible versions of packages, not running them.
As a workaround you could copy the definition of `string-replace' from
emacs-28's subr.el.
Robert
--