I encountered this while playing around with Quil, reloading files to update a running sketch following this guide - except I'm using C-c C-k to reload my file, not the REPL.
Whenever I introduce a bug that causes an exception in my draw function (happens to the best of us), I'd expect to be notified of the error, but able to continue work and fix it.
Instead, emacs freezes up and displays the line
error in process filter: [nREPL] No response handler with id nil found
in the status bar.
*nrepl-messages* does show some messages without an ID after the outgoing load-file:
(<--
session "04fb5496-2d91-4028-bc95-a2faf083211d"
time-stamp "2018-05-08 20:03:58.555079000"
out "
"
)
(<--
session "04fb5496-2d91-4028-bc95-a2faf083211d"
time-stamp "2018-05-08 20:03:58.563375000"
out "Exception in :draw function: #error {
:cause Wrong numbe..."
)
(<--
session "04fb5496-2d91-4028-bc95-a2faf083211d"
time-stamp "2018-05-08 20:03:59.565288000"
out "[clojure.core$doall invoke core.clj 3140]
[playground.draw..."
)
(<--
session "04fb5496-2d91-4028-bc95-a2faf083211d"
time-stamp "2018-05-08 20:03:59.566469000"
out "applet.clj 217]
[quil.applet$_draw invoke applet.clj 215]
..."
)
(<--
session "04fb5496-2d91-4028-bc95-a2faf083211d"
time-stamp "2018-05-08 20:04:00.575734000"
out "
"
)
Each one of these seems to cause a momentary freeze.
Coupled with Quil's behavior of retrying to call the draw function every 500ms, this makes editing the code to fix the bug nearly impossible without first stopping the sketch, which kind of defeats the purpose of the whole setup.
Even then, moving the cursor inside the draw function intermittently causes more ID-less messages to be sent.
lein repl(run-sketch) in REPLdraw.clj:17 from(q/with-rotation [tilt-angle] to (q/with-rotation;; CIDER 0.17.0 (package: 20180507.1227) (AndalucÃa), nREPL 0.2.12
;; Clojure 1.9.0, Java 1.8.0_66
Leiningen 2.8.1 on Java 1.8.0_66 Java HotSpot(TM) 64-Bit Server VM
GNU Emacs 25.3.1 (x86_64-apple-darwin17.0.0, Carbon Version 158 AppKit 1561) of 2017-11-24
(This is a compile of https://bitbucket.org/mituharu/emacs-mac )
E.g. 24.5 (use M-x emacs-version to check it if unsure)
macOS 10.13.4 (High Sierra)
Looks like a duplicate of https://github.com/clojure-emacs/cider/issues/2138
It is, thanks!
Using :no-bind-output fixed the issue.
However, my focus was slightly different - while #2138 is about the input arriving, my problem was that emacs becomes almost unusable when many of these messages arrive in quick succession.
Is there a way to log this sort of error without momentarily freezing emacs?
Not right now. The fix (workaround) for this is not complex, but I never found time to get to this. I'll try to do something about this later during the week.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contribution and understanding!
This issues been automatically closed due to lack of activity. Feel free to re-open it if you ever come back to it.
Most helpful comment
Not right now. The fix (workaround) for this is not complex, but I never found time to get to this. I'll try to do something about this later during the week.