GNU bug report logs - #75592
29.4; Eglot Invalid Slot Name Error

Previous Next

Package: emacs;

Reported by: Заболотько <zabolotko <at> gmail.com>

Date: Wed, 15 Jan 2025 18:49:02 UTC

Severity: normal

Found in version 29.4

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 75592 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Заболотько <zabolotko <at> gmail.com>,
 João Távora <joaotavora <at> gmail.com>
Cc: 75592 <at> debbugs.gnu.org
Subject: Re: bug#75592: 29.4; Eglot Invalid Slot Name Error
Date: Sat, 18 Jan 2025 12:35:09 +0200
> From: Заболотько
>  <zabolotko <at> gmail.com>
> Date: Wed, 15 Jan 2025 19:33:47 +0300
> 
> 1. Start 'emacs -Q'.
> 2. M-x toggle-debug-on-error
> 3. C-x d (open with dired directory with one file only) ~/development/temp/
> 4. Open with dired the `hello.hs`file with following content:
> main :: IO ()
> main = putStrLn "Hello, World!"
> 5. M-x eglot
> 6. On prompt:
> "[eglot] Couldn't guess LSP server for `fundamental-mode'
> Enter program to execute (or <host>:<port>):" insert  (without double quotes):
> "haskell-language-server-wrapper" (I use language server 2.9.0.1 installed from
> https://www.haskell.org/ghcup/ )
> 7. See *Backtrace* buffer with following content:
> Debugger entered--Lisp error: (invalid-slot-name "#<eglot-lsp-server eglot-lsp-server-622e880>" :
> events-buffer-config)
>   signal(invalid-slot-name ("#<eglot-lsp-server eglot-lsp-server-622e880>" :events-buffer-config))
>   slot-missing(#<eglot-lsp-server eglot-lsp-server-622e880> :events-buffer-config oset (:size 2000000 :
> format full))
>   #f(compiled-function (obj slots) "Set slots of OBJ with SLOTS which is a list of name/value pairs.\nCalled
> from the constructor routine." #<bytecode 0x4d3c53d9d153c9d>)(#<eglot-lsp-server
> eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :
> notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>)))
>   apply(#f(compiled-function (obj slots) "Set slots of OBJ with SLOTS which is a list of name/value
> pairs.\nCalled from the constructor routine." #<bytecode 0x4d3c53d9d153c9d>) #<eglot-lsp-server
> eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :
> notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>)))
>   shared-initialize(#<eglot-lsp-server eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :
> events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f(compiled-function (server method
> params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f(compiled-function (server method
> params) #<bytecode -0xa304164fd190761>) :on-shutdown eglot--on-shutdown :process #f
> (compiled-function () #<bytecode 0x150da166786d1c9>)))
>   #f(compiled-function (this &optional args) "Construct the new object THIS based on ARGS.\nARGS is a
> property list where odd numbered elements are tags, and\neven numbered elements are the values to store
> in the tagged slot.\nIf you overload the `initialize-instance', there you will need to\ncall `shared-initialize'
> yourself, or you can call `call-next-method'\nto have this constructor called automatically.  If these steps
> are\nnot taken, then new objects of your class will not have their values\ndynamically set from ARGS."
> #<bytecode -0xc0e7c8a2fa1d037>)(#<eglot-lsp-server eglot-lsp-server-622e880> (:name "EGLOT
> (temp/nil)" :events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f(compiled-function
> (server method params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f(compiled-function
> (server method params) #<bytecode -0xa304164fd190761>) :on-shutdown eglot--on-shutdown :process #f
> (compiled-function () #<bytecode 0x150da166786d1c9>)))
>   apply(#f(compiled-function (this &optional args) "Construct the new object THIS based on ARGS.\nARGS is
> a property list where odd numbered elements are tags, and\neven numbered elements are the values to
> store in the tagged slot.\nIf you overload the `initialize-instance', there you will need to\ncall
> `shared-initialize' yourself, or you can call `call-next-method'\nto have this constructor called automatically. 
> If these steps are\nnot taken, then new objects of your class will not have their values\ndynamically set from
> ARGS." #<bytecode -0xc0e7c8a2fa1d037>) (#<eglot-lsp-server eglot-lsp-server-622e880> (:name "EGLOT
> (temp/nil)" :events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f(compiled-function
> (server method params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f(compiled-function
> (server method params) #<bytecode -0xa304164fd190761>) :on-shutdown eglot--on-shutdown :process #f
> (compiled-function () #<bytecode 0x150da166786d1c9>))))
>   #f(compiled-function (&rest args) #<bytecode -0x7469b45b80f08a1>)()
>   #f(compiled-function (cl--cnm conn slots) #<bytecode -0x14404b963fc58a34>)(#f(compiled-function (&rest
> args) #<bytecode -0x7469b45b80f08a1>) #<eglot-lsp-server eglot-lsp-server-622e880> (:name "EGLOT
> (temp/nil)" :events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f(compiled-function
> (server method params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f(compiled-function
> (server method params) #<bytecode -0xa304164fd190761>) :on-shutdown eglot--on-shutdown :process #f
> (compiled-function () #<bytecode 0x150da166786d1c9>)))
>   apply(#f(compiled-function (cl--cnm conn slots) #<bytecode -0x14404b963fc58a34>) #f(compiled-function
> (&rest args) #<bytecode -0x7469b45b80f08a1>) (#<eglot-lsp-server eglot-lsp-server-622e880> (:name
> "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f
> (compiled-function (server method params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f
> (compiled-function (server method params) #<bytecode -0xa304164fd190761>) :on-shutdown
> eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>))))
>   #f(compiled-function (conn slots) #<bytecode 0x1a07daaf8f3cb5bc>)(#<eglot-lsp-server
> eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :
> notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>)))
>   apply(#f(compiled-function (conn slots) #<bytecode 0x1a07daaf8f3cb5bc>) (#<eglot-lsp-server
> eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :
> notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>))))
>   #f(compiled-function (&rest args) #<bytecode -0x1621c4701db306c8>)(#<eglot-lsp-server
> eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :
> notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>)))
>   apply(#f(compiled-function (&rest args) #<bytecode -0x1621c4701db306c8>) #<eglot-lsp-server
> eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :
> notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>)))
>   initialize-instance(#<eglot-lsp-server eglot-lsp-server-622e880> (:name "EGLOT (temp/nil)" :
> events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f(compiled-function (server method
> params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f(compiled-function (server method
> params) #<bytecode -0xa304164fd190761>) :on-shutdown eglot--on-shutdown :process #f
> (compiled-function () #<bytecode 0x150da166786d1c9>)))
>   #f(compiled-function (class &rest slots) "Default constructor for CLASS `eieio-default-superclass'.\nSLOTS
> are the initialization slots used by `initialize-instance'.\nThis static method is called when an object is
> constructed.\nIt allocates the vector used to represent an EIEIO object, and then\ncalls `initialize-instance'
> on that object." #<bytecode -0xba659127071561a>)(eglot-lsp-server :name "EGLOT (temp/nil)" :
> events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f(compiled-function (server method
> params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f(compiled-function (server method
> params) #<bytecode -0xa304164fd190761>) :on-shutdown eglot--on-shutdown :process #f
> (compiled-function () #<bytecode 0x150da166786d1c9>))
>   apply(#f(compiled-function (class &rest slots) "Default constructor for CLASS
> `eieio-default-superclass'.\nSLOTS are the initialization slots used by `initialize-instance'.\nThis static method
> is called when an object is constructed.\nIt allocates the vector used to represent an EIEIO object, and
> then\ncalls `initialize-instance' on that object." #<bytecode -0xba659127071561a>) eglot-lsp-server (:name
> "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full) :notification-dispatcher #f
> (compiled-function (server method params) #<bytecode -0xa304162ee590761>) :request-dispatcher #f
> (compiled-function (server method params) #<bytecode -0xa304164fd190761>) :on-shutdown
> eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>)))
>   make-instance(eglot-lsp-server :name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :format full)
> :notification-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304162ee590761>) :
> request-dispatcher #f(compiled-function (server method params) #<bytecode -0xa304164fd190761>) :
> on-shutdown eglot--on-shutdown :process #f(compiled-function () #<bytecode 0x150da166786d1c9>))
>   apply(make-instance eglot-lsp-server :name "EGLOT (temp/nil)" :events-buffer-config (:size 2000000 :
> format full) :notification-dispatcher #f(compiled-function (server method params) #<bytecode -
> 0xa304162ee590761>) :request-dispatcher #f(compiled-function (server method params) #<bytecode -
> 0xa304164fd190761>) :on-shutdown eglot--on-shutdown (:process #f(compiled-function () #<bytecode
> 0x150da166786d1c9>)))
>   eglot--connect(nil (transient . "/home/nop/development/temp/") eglot-lsp-server
> ("haskell-language-server-wrapper") nil)
>   eglot(nil (transient . "/home/nop/development/temp/") eglot-lsp-server ("haskell-language-server-wrapper")
> nil t)
>   funcall-interactively(eglot nil (transient . "/home/nop/development/temp/") eglot-lsp-server
> ("haskell-language-server-wrapper") nil t)
>   command-execute(eglot record)
>   execute-extended-command(nil "eglot" "eglot")
>   funcall-interactively(execute-extended-command nil "eglot" "eglot")
>   command-execute(execute-extended-command)

João, could you please look into this?




This bug report was last modified 111 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.