Description
Expected behavior
Same as older version of Cider, probably before cider-clojure-compilation-error-phases
was introduced.
Actual behavior
When evaluating sexp or buffer with enabled cider-clojure-compilation-error-phases
I get an exception
Debugger entered--Lisp error: (wrong-type-argument listp t)
cider--handle-stacktrace-response((dict "id" "18" "session" "051e38ac-65e6-495f-9101-e1..." "status" ("done")) ((dict "class" "java.lang.RuntimeException" "compile-like" "false" "id" "18" "message" "Unable to resolve symbol: ..." "phase" nil "session" "051e38ac-65e6-495f-9101-e1..." "stacktrace" (... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...)) (dict "class" "clojure.lang.Compiler$Comp..." "column" 1 "compile-like" "false" "data" "#:clojure.error{:phase :co..." "file" "/Users/akiz/Code/Clojure/d..." "file-url" "file:/Users/akiz/Code/Cloj..." "id" "18" "line" 8 "location" (dict "clojure.error/column" 1 "clojure.error/line" 8 "clojure.error/phase" "compile-syntax-check" "clojure.error/source" "/Users/akiz/Code/Clojure/d...") "message" "Syntax error compiling at ..." "path" "src/deleteme/core.clj" "phase" "compile-syntax-check" "session" ...)) "compile-syntax-check")
#f(compiled-function (response) #<bytecode 0x166c3faa4716d242>)((dict "id" "18" "session" "051e38ac-65e6-495f-9101-e1b232f70ee6" "status" ("done")))
nrepl--dispatch-response((dict "id" "18" "session" "051e38ac-65e6-495f-9101-e1b232f70ee6" "status" ("done")))
nrepl-client-filter(#<process nrepl-connection> "tible_eval$evaluate4:file22:interruptible_eval.clj...")
nrepl-send-sync-request(("op" "analyze-last-stacktrace" "nrepl.middleware.print/stream?" "1" "nrepl.middleware.print/print" "cider.nrepl.pprint/pprint" "nrepl.middleware.print/quota" 1048576 "nrepl.middleware.print/buffer-size" 4096 "nrepl.middleware.print/options" (dict "right-margin" 70)) #<buffer *cider-repl Clojure/deleteme:localhost:64281(clj)*>)
cider--error-phase-of-last-exception(#<buffer core.clj>)
#f(compiled-function (buffer err) #<bytecode 0xd9568613f25944b>)(#<buffer core.clj> "Syntax error compiling at (src/deleteme/core.clj:8...")
#f(compiled-function (response) #<bytecode 0x63342be919beaaf>)((dict "err" "Syntax error compiling at (src/deleteme/core.clj:8..." "id" "16" "session" "051e38ac-65e6-495f-9101-e1b232f70ee6"))
nrepl--dispatch-response((dict "err" "Syntax error compiling at (src/deleteme/core.clj:8..." "id" "16" "session" "051e38ac-65e6-495f-9101-e1b232f70ee6"))
nrepl-client-filter(#<process nrepl-connection> "d3:err102:Syntax error compiling at (src/deleteme/...")
Sometimes (I guess it depends on buffer / function size) it takes a very long time and I get a timeout =>
error in process filter: Sync nREPL request timed out (op analyze-last-stacktrace nrepl.middleware.print/stream? 1 nrepl.middleware.print/print cider.nrepl.pprint/porint nrepl.middleware.print/auota 1048576 nrepl.middleware.print/buffer-size 4996 ….) after 30 secs
In those cases, the overlay error sometimes shows up but it dissapears again after +-1sec.
Steps to reproduce the problem
lein new something
- Open emacs, run
toggle-debug-on-error
, open project and start jack-in new repl. - write
(defz)
and evaluate a buffer
Environment & Version information
CIDER version information
;; Startup: bash /Users/akiz/.emacs.akiz/straight/build/cider/lein.sh /opt/homebrew/bin/lein update-in :dependencies conj \[nrepl/nrepl\ \"1.0.0\"\] -- update-in :dependencies conj \[refactor-nrepl/refactor-nrepl\ \"3.9.0\"\] -- update-in :plugins conj \[refactor-nrepl/refactor-nrepl\ \"3.9.0\"\] -- update-in :plugins conj \[cider/cider-nrepl\ \"0.43.3\"\] -- update-in :plugins conj \[mx.cider/lein-enrich-classpath\ \"1.18.4\"\] -- update-in :middleware conj cider.enrich-classpath.plugin-v2/middleware -- repl :headless :host localhost
;; CIDER 1.12.0-snapshot (package: 1.12.0-snapshot), nREPL 1.0.0
;; Clojure 1.11.1, Java 17.0.8.1
Lein / Clojure CLI version
Leiningen 2.10.0 on Java 17.0.8.1 OpenJDK 64-Bit Server VM
Emacs version
- Gcemacs 29.1
Operating system
OSX Sonoma 14.0
JDK distribution
openjdk version "17.0.8.1" 2023-08-24
OpenJDK Runtime Environment Homebrew (build 17.0.8.1+0)
OpenJDK 64-Bit Server VM Homebrew (build 17.0.8.1+0, mixed mode, sharing)