Hi Joao,

On 08/09/2024 18:51, João Távora wrote:
So, for the record, before this patch with the latest emacs-30, I get the
results in failure1.txt

I've taken some more looks at the test output.

[eglot-tests] contents of `*EGLOT (cmpl-project/(rust-mode rust-ts-mode)) output*':
[eglot-tests] contents of `nil':
[eglot-tests] Killing (main.rs), wiping /tmp/eglot--fixture-XCmCqo
Test eglot-test-rust-completion-exit-function backtrace:
   set-buffer(#<killed buffer>)  eglot--call-with-fixture((("cmpl-project" ("main.rs" . 
"fn test() ->Test eglot-test-rust-completion-exit-function condition:
     (error "Selecting deleted buffer")

This error comes from eglot--call-with-fixture, where one of the last

  (with-current-buffer buffer (buffer-string))

calls results in "Selecting deleted buffer" error. I'm not sure where that comes from (for the duration of the log the contents of stdout buffer are printed twice, and stderr and events just once -- somehow there are two elements inside the 'new-servers' var).

That hid the original problem, which was just that in the bare session yasnippet is not available. Not sure what to do about it - monkeypatching a replacements does not seem wise - but if we adjust the "expected" at the end not to have parens, then the test finally passes. It will fail interactively, though, when yasnippet is installed.

I've pushed that fix as https://git.savannah.gnu.org/cgit/emacs.git/commit/?h=emacs-30&id=818c0cc9a51a1d678749404cdacdf640d6f32d6e now.

It makes that test more similar to 'eglot-test-try-completion-inside-symbol', but testing rust-analyzer separately still seems like a plus.



Reply via email to