[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#987683: crashes with "Wrong type argument: (or eieio-object class), nil, obj"



Ср 28 апр 2021 @ 14:30 Antoine Beaupré <anarcat@debian.org>:

> On 2021-04-28 23:07:26, Lev Lamberov wrote:
>> Ср 28 апр 2021 @ 11:44 Antoine Beaupré <anarcat@debian.org>:
>>
>>> On 2021-04-28 20:34:26, Lev Lamberov wrote:
>>>> It makes it a bit trickier. There another package, elpa-bug-hunter
>>>> [elpa-bug-hunter], which automatically debug and bisect your init.el or
>>>> .emacs file. It may be worth t try it with your config.
>>>>
>>>> [elpa-bug-hunter] https://tracker.debian.org/pkg/elisp-bug-hunter
>>>
>>> Actually, do you know how I would use bug-hunter and esup together? It
>>> seems they *both* start a separate emacs process to debug the startup,
>>> and thus would be in conflict with each other...
>>
>> Guess, you may start Emacs as usual, then edit your configuration to run
>> esup (that is, run it as a last line of your config), and then run
>> bug-hunter. Probably, it will work. Or not. At least, it's worth a try.
>
> That didn't work, but I manually bisected my .emacs.d/init.el file and
> came up with this minimal reproducer:
>
> (when (require 'package nil t)
>   (setq-default
>    load-prefer-newer t
>    package-enable-at-startup nil)
>   (package-initialize)
>   (setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/";)
> 			  ("melpa" . "https://melpa.org/packages/";)))
>   ;; in elpa-use-package debian package since stretch
>   (unless (package-installed-p 'use-package)
>     (package-refresh-contents)
>     (package-install 'use-package)))
>
> (eval-when-compile
>   (require 'use-package)
>   (setq-default
>    use-package-always-defer nil
>    use-package-always-ensure t))
>
> (use-package lsp-mode
>   :commands (lsp lsp-deferred)
>   :demand t
>   ;;:init
>   ;;(setq lsp-keymap-prefix "C-c l")
>   ;; TODO: https://emacs-lsp.github.io/lsp-mode/page/performance/
>   ;; also note re "native compilation": <+varemara> it's the
>   ;; difference between lsp-mode being usable or not, for me
>   :config
>   (setq lsp-auto-configure t))
>
> It could probably be trimmed down more, and i suspect the 'lsp-mode' bit
> is a red-herring: any package would probably trigger it.

I installed elpa-lsp-mode and tried the config you provided and I can
confirm the bug. In *Messages* I can see the following:

esup process started on port 44801
at 1
error in process sentinel: slot-value: Wrong type argument: (or eieio-object class), nil, obj
error in process sentinel: Wrong type argument: (or eieio-object class), nil, obj

But when I tried with other packages (both one by one and together) I
cannot reproduce the bug. That is, I commented out lsp-mode part of your
config and tried, then tried with several other packages (namely,
ansi-color, eyebrowse, anzu, beacon, and undo-tree). I cannot reproduce
the bug with any of the mentioned packages neither when I use just one
of them instead of lsp-mode, nor any set of these packages instead of
lsp-mode. And I tried to remove my custom.el and started with sane
configuration of GNU Emacs.

Cheers!
Lev


Reply to: