Skip to content

Connecting to a Clojure nREPL server with clojure-connect causes lem to freeze #2154

@negatethis

Description

@negatethis
  • OS: NixOS 25.11
  • lem Installation Type: lem-ncurses via Nix Flake overlay
  • lem Version: lem 2.3.0-Return lem's git hash. (X86-64-localhost). Git revision 2ce4362a92932fbe30417b2f757caeb579e215d0.

Steps to reproduce:

  1. Start a Clojure nREPL server. Tested both lein repl :headless in an existing project and bb nrepl-server.
  2. Open a .clj file with lem.
  3. Run Alt-x clojure-connect-to-localhost
  4. Input nREPL port number
  5. Press <enter> to confirm port number

After pressing <enter>, lem completely freezes on the port input window and will not respond to any input.

Debug logs

Here are the debug logs generated while reproducing this error.

 <INFO> [10:20:54] lem-core lem.lisp (top level form launch) - Starting Lem
 <WARN> [10:20:54] lem-core interface.lisp (top level form get-default-implementation) -
  User specified non-existant interface NIL; Using #<STANDARD-CLASS LEM-NCURSES::NCURSES> instead.
Available interfaces: (#<STANDARD-CLASS LEM-NCURSES::NCURSES>)
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-BOOLEAN actual: #<HASH-TABLE :TEST EQUAL :COUNT 1 {1209EBF503}>
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-BOOLEAN actual: #<HASH-TABLE :TEST EQUAL :COUNT 1 {120C7E8F33}>
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-BOOLEAN actual: #<HASH-TABLE :TEST EQUAL :COUNT 1 {120C7EEEE3}>
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:55] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: clojure-lsp/unused-public-var
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: clojure-lsp/unused-public-var
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: clojure-lsp/unused-public-var
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: clojure-lsp/unused-public-var
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: refer-all
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: refer-all
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: missing-else-branch
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-namespace
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: unused-binding
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: clojure-lsp/unused-public-var
 <WARN> [10:20:56] lem-lsp-base/converter converter.lisp (top level form assert-type) - type mismatch: expected: LSP-INTEGER actual: clojure-lsp/unused-public-var

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions