From: Stefan Kangas <stefankangas@gmail.com>
To: "João Távora" <joaotavora@gmail.com>, emacs-devel@gnu.org
Subject: Re: emacs-29 9c0d7bb73b 2/2: Add automated tests for Eglot
Date: Mon, 12 Dec 2022 00:34:30 -0800 [thread overview]
Message-ID: <CADwFkmnN6DRtqdpnD-9LHyEDsWooeDx4WDV-thHPT5NEA_2Rmw@mail.gmail.com> (raw)
In-Reply-To: <20221212001223.E9A9DC004BE@vcs2.savannah.gnu.org>
[-- Attachment #1: Type: text/plain, Size: 503 bytes --]
João Távora <joaotavora@gmail.com> writes:
> branch: emacs-29
> commit 9c0d7bb73bb6a8d81b476d3fa497569c3061bdca
> Author: João Távora <joaotavora@gmail.com>
> Commit: João Távora <joaotavora@gmail.com>
>
> Add automated tests for Eglot
I'm seeing some test failures:
SUMMARY OF TEST RESULTS
-----------------------
Files examined: 463
Ran 7070 tests, 6976 results as expected, 5 unexpected, 89 skipped
1 files contained unexpected results:
lisp/progmodes/eglot-tests.log
[-- Attachment #2: eglot-tests.log --]
[-- Type: application/octet-stream, Size: 34320 bytes --]
Running 50 tests (2022-12-12 09:10:56+0100, selector ‘(not (or (tag :expensive-test) (tag :unstable)))’)
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode c-ts-mode c++-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (cena.c coiso.c merdix.c), wiping /tmp/eglot--fixtureKJKS9O, restoring nil
passed 1/50 auto-detect-running-server (0.323126 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `project'.
[jsonrpc] Server exited with status 9
[eglot] (warning) Reconnecting after unexpected server exit.
Warning (eglot): Reconnecting after unexpected server exit.
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `project'.
[eglot] Reconnected!
[jsonrpc] Server exited with status 9
[eglot] (warning) Not auto-reconnecting, last one didn't last long.
Warning (eglot): Not auto-reconnecting, last one didn't last long.
[eglot] Test body was OK
[eglot] Killing (thingy.c), wiping /tmp/eglot--fixtureJWSU9J, restoring nil
passed 2/50 auto-reconnect (2.348442 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `project'.
[eglot] Asking EGLOT (project/(c-mode c-ts-mode c++-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Test body was OK
[eglot] Killing nil, wiping /tmp/eglot--fixturerheXZq, restoring nil
passed 3/50 auto-shutdown (0.141519 sec)
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Non-critical shutdown error after test: (jsonrpc-error "request id=7 failed:" (jsonrpc-error-message . "Timed out"))
[eglot] Killing (something.py), wiping /tmp/eglot--fixturehz1FzJ, restoring nil
passed 4/50 basic-completions (5.267488 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `diag-project'.
[eglot] Waiting a bit...
[eglot] Event detected:
(:jsonrpc "2.0" :method "textDocument/publishDiagnostics" :params
(:diagnostics
[(:code "undeclared_var_use_suggest" :message "Use of undeclared identifier 'froat'; did you mean 'float'? (fix available)" :range
(:end
(:character 16 :line 0)
:start
(:character 11 :line 0))
:severity 1 :source "clang")]
:uri "file:///tmp/eglot--fixture7CbD51/diag-project/main.c" :version 0))
[eglot] Test body was OK
[eglot] Asking EGLOT (diag-project/(c-mode c-ts-mode c++-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (main.c), wiping /tmp/eglot--fixture7CbD51, restoring nil
passed 5/50 basic-diagnostics (0.342727 sec)
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (something.py), wiping /tmp/eglot--fixturepkAN9D, restoring nil
passed 6/50 basic-xref (1.731290 sec)
/bin/bash: line 1: cargo: command not found
[eglot] Test body was A FAILURE
[eglot] Killing (main.rs), wiping /tmp/eglot--fixtureEUaOvq, restoring nil
Test diagnostic-tags-unnecessary-code backtrace:
signal(ert-test-failed (((should (zerop (shell-command "cargo init")
ert-fail(((should (zerop (shell-command "cargo init"))) :form (= 0 1
#f(compiled-function () #<bytecode -0x8a8f76411610a21>)()
eglot--call-with-fixture((("diagnostic-tag-project" ("main.rs" . "fn
#f(compiled-function () #<bytecode -0x1f963e3a32b08def>)()
ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
ert-run-test(#s(ert-test :name diagnostic-tags-unnecessary-code :doc
ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/eglot-test
command-line()
normal-top-level()
Test diagnostic-tags-unnecessary-code condition:
(ert-test-failed
((should
(zerop
(shell-command "cargo init")))
:form
(= 0 127)
:value nil))
FAILED 7/50 diagnostic-tags-unnecessary-code (0.008564 sec) at lisp/progmodes/eglot-tests.el:431
skipped 8/50 eclipse-connect (0.000291 sec)
passed 9/50 eglot--glob-test (0.018594 sec)
skipped 10/50 eglot--path-to-uri-windows (0.000083 sec)
[eglot] Connected! Server `clangd' now managing `(c++-mode c-mode c-ts-mode c++-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c++-mode c-mode c-ts-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (foo.cpp foolib.h foolib.c), wiping /tmp/eglot--fixture7AHwRT, restoring nil
passed 11/50 eglot--same-server-multi-mode (0.148467 sec)
Tramp: Sending command ‘exec /bin/sh’
Tramp: Found remote shell prompt on ‘joffe’
Tramp: Sending command ‘exec /bin/sh’
Tramp: Found remote shell prompt on ‘joffe’
Tramp: Sending command ‘exec /bin/sh’
Tramp: Found remote shell prompt on ‘joffe’
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode c-ts-mode c++-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (cena.c coiso.c merdix.c), wiping /loopback:joffe:/tmp/eglot--fixtureEsbEW8, restoring nil
passed 12/50 eglot--tramp-test (0.863837 sec)
Tramp: Sending command ‘exec /bin/sh’
Tramp: Found remote shell prompt on ‘joffe’
Tramp: Sending command ‘exec /bin/sh’
Tramp: Found remote shell prompt on ‘joffe’
Tramp: Sending command ‘exec /bin/sh’
Tramp: Found remote shell prompt on ‘joffe’
[eglot] Connected! Server `clangd' now managing `(c-mode)' buffers in project `project'.
[eglot] Event detected:
(:jsonrpc "2.0" :method "textDocument/didChange" :params
(:textDocument
(:uri "file:///tmp/eglot--fixtureqeONNk/project/foo.c" :version 1)
:contentChanges
[(:range
(:start
(:line 0 :character 71)
:end
(:line 0 :character 71))
:rangeLength 0 :text "p ")]))
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (foo.c), wiping /loopback:joffe:/tmp/eglot--fixtureqeONNk, restoring nil
File is missing: /loopback:joffe:/tmp/eglot--fixtureqeONNk/project/foo.c~
passed 13/50 eglot--tramp-test-2 (0.476373 sec)
passed 14/50 eglot-capabilities (0.000094 sec)
passed 15/50 eglot-dcase (0.000098 sec)
passed 16/50 eglot-dcase-issue-452 (0.000081 sec)
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Non-critical shutdown error after test: (jsonrpc-error "request id=10 failed:" (jsonrpc-error-message . "Timed out"))
[eglot] Killing (something.py), wiping /tmp/eglot--fixtureAgUev4, restoring nil
passed 17/50 eglot-eldoc-after-completions (5.346342 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode c-ts-mode c++-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (foo.c bar.c), wiping /tmp/eglot--fixture6ETUlV, restoring (c-mode-hook)
passed 18/50 eglot-ensure (0.262567 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode)' buffers in project `project'.
[eglot] Event detected:
(:jsonrpc "2.0" :method "textDocument/didChange" :params
(:textDocument
(:uri "file:///tmp/eglot--fixtureg0Yjoa/project/foo.c" :version 1)
:contentChanges
[(:range
(:start
(:line 0 :character 71)
:end
(:line 0 :character 71))
:rangeLength 0 :text "p ")]))
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (foo.c), wiping /tmp/eglot--fixtureg0Yjoa, restoring nil
passed 19/50 eglot-lsp-abiding-column (0.141156 sec)
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (hover-first.py), wiping /tmp/eglot--fixtureQdnauc, restoring nil
passed 20/50 eglot-multiline-eldoc (3.299877 sec)
passed 21/50 eglot-server-programs-class-name-and-contact-spec (0.002112 sec)
passed 22/50 eglot-server-programs-class-name-and-plist (0.000214 sec)
passed 23/50 eglot-server-programs-executable-multiple-major-modes (0.000197 sec)
passed 24/50 eglot-server-programs-executable-with-arg (0.000180 sec)
passed 25/50 eglot-server-programs-executable-with-args-and-autoport (0.000169 sec)
passed 26/50 eglot-server-programs-function (0.000186 sec)
passed 27/50 eglot-server-programs-guess-lang (0.000298 sec)
passed 28/50 eglot-server-programs-host-and-port (0.000161 sec)
passed 29/50 eglot-server-programs-host-and-port-and-tcp-args (0.000168 sec)
passed 30/50 eglot-server-programs-simple-executable (0.000180 sec)
passed 31/50 eglot-server-programs-simple-missing-executable (0.000194 sec)
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (hover-first.py), wiping /tmp/eglot--fixtureOnXekx, restoring nil
passed 32/50 eglot-single-line-eldoc (2.559164 sec)
passed 33/50 eglot-strict-interfaces (0.000322 sec)
[jsonrpc] Server exited with status 9
[eglot] Test body was A FAILURE
[eglot] *EGLOT (project/(js-mode)) output*:
[eglot] *EGLOT (project/(js-mode)) stderr*:
Process EGLOT (project/(js-mode)) stderr finished
[eglot] *EGLOT (project/(js-mode)) events*:
[internal] Mon Dec 12 09:11:19 2022:
(:message "Running language server: typescript-language-server --stdio")
[client-request] (id:1) Mon Dec 12 09:11:19 2022:
(:jsonrpc "2.0" :id 1 :method "initialize" :params
(:processId 1771677 :rootPath "/tmp/eglot--fixtureb788i9/project/" :rootUri "file:///tmp/eglot--fixtureb788i9/project" :initializationOptions #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())
:capabilities
(:workspace
(:applyEdit t :executeCommand
(:dynamicRegistration :json-false)
:workspaceEdit
(:documentChanges t)
:didChangeWatchedFiles
(:dynamicRegistration t)
:symbol
(:dynamicRegistration :json-false)
:configuration t :workspaceFolders t)
:textDocument
(:synchronization
(:dynamicRegistration :json-false :willSave t :willSaveWaitUntil t :didSave t)
:completion
(:dynamicRegistration :json-false :completionItem
(:snippetSupport :json-false :deprecatedSupport t :resolveSupport
(:properties
["documentation" "details" "additionalTextEdits"])
:tagSupport
(:valueSet
[1]))
:contextSupport t)
:hover
(:dynamicRegistration :json-false :contentFormat
["plaintext"])
:signatureHelp
(:dynamicRegistration :json-false :signatureInformation
(:parameterInformation
(:labelOffsetSupport t)
:activeParameterSupport t))
:references
(:dynamicRegistration :json-false)
:definition
(:dynamicRegistration :json-false :linkSupport t)
:declaration
(:dynamicRegistration :json-false :linkSupport t)
:implementation
(:dynamicRegistration :json-false :linkSupport t)
:typeDefinition
(:dynamicRegistration :json-false :linkSupport t)
:documentSymbol
(:dynamicRegistration :json-false :hierarchicalDocumentSymbolSupport t :symbolKind
(:valueSet
[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26]))
:documentHighlight
(:dynamicRegistration :json-false)
:codeAction
(:dynamicRegistration :json-false :codeActionLiteralSupport
(:codeActionKind
(:valueSet
["quickfix" "refactor" "refactor.extract" "refactor.inline" "refactor.rewrite" "source" "source.organizeImports"]))
:isPreferredSupport t)
:formatting
(:dynamicRegistration :json-false)
:rangeFormatting
(:dynamicRegistration :json-false)
:rename
(:dynamicRegistration :json-false)
:publishDiagnostics
(:relatedInformation :json-false :codeDescriptionSupport :json-false :tagSupport
(:valueSet
[1 2])))
:experimental #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
:workspaceFolders
[(:uri "file:///tmp/eglot--fixtureb788i9/project" :name "/tmp/eglot--fixtureb788i9/project/")]))
[server-reply] (id:1) ERROR Mon Dec 12 09:11:22 2022:
(:jsonrpc "2.0" :id 1 :error
(:code -32603 :message "Request initialize failed with message: Could not find a valid tsserver version. Exiting."))
[internal] Mon Dec 12 09:11:22 2022:
(:message "Connection state changed" :change "killed\n")
----------b---y---e---b---y---e----------
[stderr]
[stderr]
[stderr] nil
[stderr] nil
[stderr] Process EGLOT (project/(js-mode)) stderr finished
[eglot] Killing (hello.js), wiping /tmp/eglot--fixtureb788i9, restoring nil
Test javascript-basic backtrace:
error("[eglot] %s" "-32603: Request initialize failed with message:
eglot--error("-32603: Request initialize failed with message: Co..."
eglot--connect((js-mode) (transient . "/tmp/eglot--fixtureb788i9/pro
apply(eglot--connect ((js-mode) (transient . "/tmp/eglot--fixtureb78
eglot--tests-connect()
apply(eglot--tests-connect nil)
#f(compiled-function () #<bytecode 0xe5c8480dcb27b>)()
eglot--call-with-fixture((("project" ("hello.js" . "console.log('Hel
#f(compiled-function () #<bytecode 0xf760de60d51bd60>)()
ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
ert-run-test(#s(ert-test :name javascript-basic :documentation "Test
ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/eglot-test
command-line()
normal-top-level()
Test javascript-basic condition:
(error "[eglot] -32603: Request initialize failed with message: Could not find a valid tsserver version. Exiting.")
FAILED 34/50 javascript-basic (3.135755 sec) at lisp/progmodes/eglot-tests.el:723
skipped 35/50 json-basic (0.000317 sec)
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
Complete, but not unique
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (something.py), wiping /tmp/eglot--fixturej5dyPN, restoring nil
passed 36/50 non-unique-completions (3.915684 sec)
/bin/bash: line 1: cargo: command not found
[eglot] Test body was A FAILURE
[eglot] Killing (other-file.rs), wiping /tmp/eglot--fixtureCVZOqZ, restoring nil
Test project-wide-diagnostics-rust-analyzer backtrace:
signal(ert-test-failed (((should (zerop (shell-command "cargo init")
ert-fail(((should (zerop (shell-command "cargo init"))) :form (= 0 1
#f(compiled-function () #<bytecode -0xd049d4dc592f371>)()
eglot--call-with-fixture((("project" ("main.rs" . "fn main() -> () {
#f(compiled-function () #<bytecode -0x1f963e3a3d43edef>)()
ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
ert-run-test(#s(ert-test :name project-wide-diagnostics-rust-analyze
ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/eglot-test
command-line()
normal-top-level()
Test project-wide-diagnostics-rust-analyzer condition:
(ert-test-failed
((should
(zerop
(shell-command "cargo init")))
:form
(= 0 127)
:value nil))
FAILED 37/50 project-wide-diagnostics-rust-analyzer (0.016784 sec) at lisp/progmodes/eglot-tests.el:780
[jsonrpc] Server exited with status 9
[eglot] Test body was A FAILURE
[eglot] *EGLOT (eglot--fixtureUsREZP/(typescript-mode)) output*:
[eglot] *EGLOT (eglot--fixtureUsREZP/(typescript-mode)) stderr*:
Process EGLOT (eglot--fixtureUsREZP/(typescript-mode)) stderr finished
[eglot] *EGLOT (eglot--fixtureUsREZP/(typescript-mode)) events*:
[internal] Mon Dec 12 09:11:27 2022:
(:message "Running language server: typescript-language-server --stdio")
[client-request] (id:1) Mon Dec 12 09:11:27 2022:
(:jsonrpc "2.0" :id 1 :method "initialize" :params
(:processId 1771677 :rootPath "/tmp/eglot--fixtureUsREZP/" :rootUri "file:///tmp/eglot--fixtureUsREZP" :initializationOptions #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())
:capabilities
(:workspace
(:applyEdit t :executeCommand
(:dynamicRegistration :json-false)
:workspaceEdit
(:documentChanges t)
:didChangeWatchedFiles
(:dynamicRegistration t)
:symbol
(:dynamicRegistration :json-false)
:configuration t :workspaceFolders t)
:textDocument
(:synchronization
(:dynamicRegistration :json-false :willSave t :willSaveWaitUntil t :didSave t)
:completion
(:dynamicRegistration :json-false :completionItem
(:snippetSupport :json-false :deprecatedSupport t :resolveSupport
(:properties
["documentation" "details" "additionalTextEdits"])
:tagSupport
(:valueSet
[1]))
:contextSupport t)
:hover
(:dynamicRegistration :json-false :contentFormat
["plaintext"])
:signatureHelp
(:dynamicRegistration :json-false :signatureInformation
(:parameterInformation
(:labelOffsetSupport t)
:activeParameterSupport t))
:references
(:dynamicRegistration :json-false)
:definition
(:dynamicRegistration :json-false :linkSupport t)
:declaration
(:dynamicRegistration :json-false :linkSupport t)
:implementation
(:dynamicRegistration :json-false :linkSupport t)
:typeDefinition
(:dynamicRegistration :json-false :linkSupport t)
:documentSymbol
(:dynamicRegistration :json-false :hierarchicalDocumentSymbolSupport t :symbolKind
(:valueSet
[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26]))
:documentHighlight
(:dynamicRegistration :json-false)
:codeAction
(:dynamicRegistration :json-false :codeActionLiteralSupport
(:codeActionKind
(:valueSet
["quickfix" "refactor" "refactor.extract" "refactor.inline" "refactor.rewrite" "source" "source.organizeImports"]))
:isPreferredSupport t)
:formatting
(:dynamicRegistration :json-false)
:rangeFormatting
(:dynamicRegistration :json-false)
:rename
(:dynamicRegistration :json-false)
:publishDiagnostics
(:relatedInformation :json-false :codeDescriptionSupport :json-false :tagSupport
(:valueSet
[1 2])))
:experimental #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
:workspaceFolders
[(:uri "file:///tmp/eglot--fixtureUsREZP" :name "/tmp/eglot--fixtureUsREZP/")]))
[server-reply] (id:1) ERROR Mon Dec 12 09:11:27 2022:
(:jsonrpc "2.0" :id 1 :error
(:code -32603 :message "Request initialize failed with message: Could not find a valid tsserver version. Exiting."))
[internal] Mon Dec 12 09:11:27 2022:
(:message "Connection state changed" :change "killed\n")
----------b---y---e---b---y---e----------
[stderr]
[stderr]
[stderr] nil
[stderr] nil
[stderr] Process EGLOT (eglot--fixtureUsREZP/(typescript-mode)) stderr finished
[eglot] Killing (hello2.ts), wiping /tmp/eglot--fixtureUsREZP, restoring nil
Test project-wide-diagnostics-typescript backtrace:
error("[eglot] %s" "-32603: Request initialize failed with message:
eglot--error("-32603: Request initialize failed with message: Co..."
eglot--connect((typescript-mode) (vc Git "/tmp/eglot--fixtureUsREZP/
apply(eglot--connect ((typescript-mode) (vc Git "/tmp/eglot--fixture
eglot--tests-connect()
#f(compiled-function () #<bytecode 0x5d937f73c973338>)()
eglot--call-with-fixture((("project" ("hello.ts" . "const thing = 5;
#f(compiled-function () #<bytecode 0xf760de60d521160>)()
ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
ert-run-test(#s(ert-test :name project-wide-diagnostics-typescript :
ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/eglot-test
command-line()
normal-top-level()
Test project-wide-diagnostics-typescript condition:
(error "[eglot] -32603: Request initialize failed with message: Could not find a valid tsserver version. Exiting.")
FAILED 38/50 project-wide-diagnostics-typescript (0.478075 sec) at lisp/progmodes/eglot-tests.el:752
[eglot] Connected! Server `pylsp' now managing `(python-mode python-ts-mode)' buffers in project `project'.
[eglot] applying 1 edits to `something.py'...
[eglot] applying 1 edits to `something.py'...done
[eglot] Test body was A FAILURE
[eglot] Asking EGLOT (project/(python-mode python-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] *EGLOT (project/(python-mode python-ts-mode)) output*:
[eglot] *EGLOT (project/(python-mode python-ts-mode)) stderr*:
2022-12-12 09:11:28,534 CET - WARNING - pylsp.config.config - Failed to load pylsp entry point 'yapf': No module named 'whatthepatch'
2022-12-12 09:11:28,645 CET - WARNING - matplotlib - Matplotlib created a temporary config/cache directory at /tmp/matplotlib-4cjuat2i because the default path (/dev/null/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
Process EGLOT (project/(python-mode python-ts-mode)) stderr finished
[eglot] *EGLOT (project/(python-mode python-ts-mode)) events*:
[internal] Mon Dec 12 09:11:27 2022:
(:message "Running language server: /bin/pylsp")
[client-request] (id:1) Mon Dec 12 09:11:27 2022:
(:jsonrpc "2.0" :id 1 :method "initialize" :params
(:processId 1771677 :rootPath "/tmp/eglot--fixture2r4nUz/project/" :rootUri "file:///tmp/eglot--fixture2r4nUz/project" :initializationOptions #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())
:capabilities
(:workspace
(:applyEdit t :executeCommand
(:dynamicRegistration :json-false)
:workspaceEdit
(:documentChanges t)
:didChangeWatchedFiles
(:dynamicRegistration t)
:symbol
(:dynamicRegistration :json-false)
:configuration t :workspaceFolders t)
:textDocument
(:synchronization
(:dynamicRegistration :json-false :willSave t :willSaveWaitUntil t :didSave t)
:completion
(:dynamicRegistration :json-false :completionItem
(:snippetSupport :json-false :deprecatedSupport t :resolveSupport
(:properties
["documentation" "details" "additionalTextEdits"])
:tagSupport
(:valueSet
[1]))
:contextSupport t)
:hover
(:dynamicRegistration :json-false :contentFormat
["plaintext"])
:signatureHelp
(:dynamicRegistration :json-false :signatureInformation
(:parameterInformation
(:labelOffsetSupport t)
:activeParameterSupport t))
:references
(:dynamicRegistration :json-false)
:definition
(:dynamicRegistration :json-false :linkSupport t)
:declaration
(:dynamicRegistration :json-false :linkSupport t)
:implementation
(:dynamicRegistration :json-false :linkSupport t)
:typeDefinition
(:dynamicRegistration :json-false :linkSupport t)
:documentSymbol
(:dynamicRegistration :json-false :hierarchicalDocumentSymbolSupport t :symbolKind
(:valueSet
[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26]))
:documentHighlight
(:dynamicRegistration :json-false)
:codeAction
(:dynamicRegistration :json-false :codeActionLiteralSupport
(:codeActionKind
(:valueSet
["quickfix" "refactor" "refactor.extract" "refactor.inline" "refactor.rewrite" "source" "source.organizeImports"]))
:isPreferredSupport t)
:formatting
(:dynamicRegistration :json-false)
:rangeFormatting
(:dynamicRegistration :json-false)
:rename
(:dynamicRegistration :json-false)
:publishDiagnostics
(:relatedInformation :json-false :codeDescriptionSupport :json-false :tagSupport
(:valueSet
[1 2])))
:experimental #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
:workspaceFolders
[(:uri "file:///tmp/eglot--fixture2r4nUz/project" :name "/tmp/eglot--fixture2r4nUz/project/")]))
[stderr] 2022-12-12 09:11:28,534 CET - WARNING - pylsp.config.config - Failed to load pylsp entry point 'yapf': No module named 'whatthepatch'
[stderr] 2022-12-12 09:11:28,645 CET - WARNING - matplotlib - Matplotlib created a temporary config/cache directory at /tmp/matplotlib-4cjuat2i because the default path (/dev/null/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
[server-reply] (id:1) Mon Dec 12 09:11:28 2022:
(:jsonrpc "2.0" :id 1 :result
(:capabilities
(:codeActionProvider t :codeLensProvider
(:resolveProvider :json-false)
:completionProvider
(:resolveProvider t :triggerCharacters
["."])
:documentFormattingProvider t :documentHighlightProvider t :documentRangeFormattingProvider t :documentSymbolProvider t :definitionProvider t :executeCommandProvider
(:commands
[])
:hoverProvider t :referencesProvider t :renameProvider t :foldingRangeProvider t :signatureHelpProvider
(:triggerCharacters
["(" "," "="])
:textDocumentSync
(:change 2 :save
(:includeText t)
:openClose t)
:workspace
(:workspaceFolders
(:supported t :changeNotifications t))
:experimental nil)
:serverInfo
(:name "pylsp" :version "1.5.0")))
[client-notification] Mon Dec 12 09:11:28 2022:
(:jsonrpc "2.0" :method "initialized" :params #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
()))
[client-notification] Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :method "textDocument/didOpen" :params
(:textDocument
(:uri "file:///tmp/eglot--fixture2r4nUz/project/something.py" :version 0 :languageId "python" :text "def a():pass\n\ndef b():pass")))
[client-notification] Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :method "workspace/didChangeConfiguration" :params
(:settings #s(hash-table size 1 test eql rehash-size 1.5 rehash-threshold 0.8125 data
())))
[client-request] (id:2) Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :id 2 :method "textDocument/rangeFormatting" :params
(:textDocument
(:uri "file:///tmp/eglot--fixture2r4nUz/project/something.py")
:options
(:tabSize 8 :insertSpaces t :insertFinalNewline t :trimFinalNewlines t)
:range
(:start
(:line 2 :character 0)
:end
(:line 2 :character 12))))
[server-reply] (id:2) Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :id 2 :result
[(:range
(:start
(:line 0 :character 0)
:end
(:line 3 :character 0))
:newText "def a():pass\n\ndef b(): pass")])
[client-request] (id:3) Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :id 3 :method "shutdown" :params nil)
[server-reply] (id:3) Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :id 3 :result nil)
[client-notification] Mon Dec 12 09:11:29 2022:
(:jsonrpc "2.0" :method "exit" :params nil)
[internal] Mon Dec 12 09:11:29 2022:
(:message "Connection state changed" :change "killed\n")
----------b---y---e---b---y---e----------
[stderr]
[stderr]
[stderr] nil
[stderr] nil
[stderr] Process EGLOT (project/(python-mode python-ts-mode)) stderr finished
[eglot] Killing (something.py), wiping /tmp/eglot--fixture2r4nUz, restoring nil
Test python-autopep-formatting backtrace:
signal(ert-test-failed (((should (string= (buffer-string) "def a():p
ert-fail(((should (string= (buffer-string) "def a():pass\n\n\ndef b(
#f(compiled-function () #<bytecode 0x100b52a9229872e>)()
eglot--call-with-fixture((("project" ("something.py" . "def a():pass
#f(compiled-function () #<bytecode 0x1521b0156d1dc18d>)()
ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
ert-run-test(#s(ert-test :name python-autopep-formatting :documentat
ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/eglot-test
command-line()
normal-top-level()
Test python-autopep-formatting condition:
(ert-test-failed
((should
(string=
(buffer-string)
"def a():pass\n\n\ndef b(): pass\n"))
:form
(string= "def a():pass\n\ndef b(): pass" "def a():pass\n\n\ndef b(): pass\n")
:value nil :explanation
(arrays-of-different-length 27 29 "def a():pass\n\ndef b(): pass" "def a():pass\n\n\ndef b(): pass\n" first-mismatch-at 14)))
FAILED 39/50 python-autopep-formatting (1.429933 sec) at lisp/progmodes/eglot-tests.el:658
skipped 40/50 python-yapf-formatting (0.000162 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode c-ts-mode c++-mode c++-ts-mode)' buffers in project `rename-project'.
[eglot] applying 2 edits to `main.c'...
[eglot] applying 2 edits to `main.c'...done
[eglot] Edit successful!
[eglot] Test body was OK
[eglot] Asking EGLOT (rename-project/(c-mode c-ts-mode c++-mode c++-ts-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (main.c), wiping /tmp/eglot--fixture4RV9iR, restoring nil
passed 41/50 rename-a-symbol (0.155775 sec)
skipped 42/50 rust-analyzer-hover-after-edit (0.000675 sec)
skipped 43/50 rust-analyzer-watches-files (0.000644 sec)
skipped 44/50 rust-on-type-formatting (0.000667 sec)
[eglot] Waiting in background for server `EGLOT (project/(c-mode))'
[eglot] Connected! Server `clangd' now managing `(c-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (something.c), wiping /tmp/eglot--fixture4zQ4os, restoring nil
passed 45/50 slow-async-connection (2.216443 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (something.c), wiping /tmp/eglot--fixturehDDt2e, restoring nil
passed 46/50 slow-sync-connection-intime (1.159687 sec)
[eglot] Connected! Server `clangd' now managing `(c-mode)' buffers in project `project'.
[eglot] Test body was OK
[eglot] Asking EGLOT (project/(c-mode)) politely to terminate
[jsonrpc] Server exited with status 9
[eglot] Killing (something.c), wiping /tmp/eglot--fixtureZh52RI, restoring nil
passed 47/50 slow-sync-connection-wait (1.156091 sec)
[jsonrpc] Server exited with status 9
[eglot] Test body was OK
[eglot] Killing (something.c), wiping /tmp/eglot--fixtureEIjSp4, restoring nil
passed 48/50 slow-sync-timeout (1.129866 sec)
skipped 49/50 snippet-completions (0.000305 sec)
skipped 50/50 snippet-completions-with-company (0.000267 sec)
Ran 50 tests, 36 results as expected, 5 unexpected, 9 skipped (2022-12-12 09:11:35+0100, 38.597245 sec)
5 unexpected results:
FAILED diagnostic-tags-unnecessary-code
FAILED javascript-basic
FAILED project-wide-diagnostics-rust-analyzer
FAILED project-wide-diagnostics-typescript
FAILED python-autopep-formatting
9 skipped results:
SKIPPED eclipse-connect
SKIPPED eglot--path-to-uri-windows
SKIPPED json-basic
SKIPPED python-yapf-formatting
SKIPPED rust-analyzer-hover-after-edit
SKIPPED rust-analyzer-watches-files
SKIPPED rust-on-type-formatting
SKIPPED snippet-completions
SKIPPED snippet-completions-with-company
next parent reply other threads:[~2022-12-12 8:34 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <167080394233.4339.5863353994038854528@vcs2.savannah.gnu.org>
[not found] ` <20221212001223.E9A9DC004BE@vcs2.savannah.gnu.org>
2022-12-12 8:34 ` Stefan Kangas [this message]
2022-12-12 9:52 ` emacs-29 9c0d7bb73b 2/2: Add automated tests for Eglot João Távora
2022-12-12 11:26 ` Stefan Kangas
2022-12-12 11:56 ` João Távora
2022-12-12 21:52 ` Stefan Kangas
2022-12-13 8:49 ` Michael Albinus
2022-12-13 19:23 ` Stefan Kangas
2022-12-14 9:55 ` Michael Albinus
2022-12-12 10:32 ` Michael Albinus
2022-12-12 10:37 ` João Távora
2022-12-13 19:10 ` Michael Albinus
2022-12-13 20:18 ` João Távora
2022-12-14 9:57 ` Michael Albinus
2022-12-14 12:58 ` João Távora
2022-12-14 14:11 ` Michael Albinus
2022-12-14 15:46 ` João Távora
2022-12-14 17:41 ` Stefan Monnier
2022-12-14 21:42 ` Stefan Kangas
2022-12-15 9:12 ` Michael Albinus
2022-12-15 12:08 ` João Távora
2022-12-12 10:59 ` Michael Albinus
2022-12-12 11:03 ` João Távora
2022-12-12 11:08 ` Michael Albinus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CADwFkmnN6DRtqdpnD-9LHyEDsWooeDx4WDV-thHPT5NEA_2Rmw@mail.gmail.com \
--to=stefankangas@gmail.com \
--cc=emacs-devel@gnu.org \
--cc=joaotavora@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.