Fix a exception that happens after some seconds of repl running:
If it's a long-running mostly idle daemon process, consider overriding OSProcessHandler#readerOptions with 'BaseOutputReader.Options.forMostlySilentProcess()' to reduce CPU usage.
Command line: lein update-in :dependencies conj "[nrepl/nrepl \"1.0.0\"]" -- update-in :plugins conj "[cider/cider-nrepl \"0.45.0\"]" -- repl :headless :host localhost
java.lang.Throwable: Process creation:
at com.intellij.execution.process.BaseOSProcessHandler.<init>
This PR refactors how we communicate with NREPL, the major problem is that nrepl is a server so it can send messages at any time through the socket, and we were ignoring those messages, only caring by the ones we sent sync.
This PR refactors how we communicate with NREPL, the major problem is that nrepl is a server so it can send messages at any time through the socket, and we were ignoring those messages, only caring by the ones we sent sync.
Code snippets to test: