Anybody has a hint on why this error would happen for one of the people starting our leiningen-based project?
nREPL server started on port 59689 on host 127.0.0.1 -
Exception in thread "nREPL-session-10b9f94a-428b-429c-9ed7-4e61ff12304f" java.lang.IllegalArgumentException: No implementation of method: :send of protocol: #'nrepl.transport/Transport found for class: cider.nrepl.middleware.track_state$make_transport$reify__85791
at clojure.core$_cache_protocol_fn.invokeStatic(core_deftype.clj:584)
at clojure.core$_cache_protocol_fn.invoke(core_deftype.clj:576)
at nrepl.transport$eval76374$fn__76392$G__76365__76399.invoke(transport.clj:23)
at nrepl.middleware.print$send_nonstreamed.invokeStatic(print.clj:157)
at nrepl.middleware.print$send_nonstreamed.invoke(print.clj:138)
at nrepl.middleware.print$printing_transport$reify__76906.send(print.clj:174)
at nrepl.middleware.caught$caught_transport$reify__76941.send(caught.clj:58)
at nrepl.middleware.print$replying_PrintWriter$fn__76867.invoke(print.clj:115)
at nrepl.middleware.print.proxy$java.io.Writer$ff19274a.write(Unknown Source)
at java.base/java.io.BufferedWriter.flushBuffer(BufferedWriter.java:120)
at java.base/java.io.BufferedWriter.flush(BufferedWriter.java:256)
at java.base/java.io.PrintWriter.flush(PrintWriter.java:396)
at nrepl.middleware.interruptible_eval$evaluate.invokeStatic(interruptible_eval.clj:136)
at nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:56)
at nrepl.middleware.interruptible_eval$interruptible_eval$fn__77017$fn__77021.invoke(interruptible_eval.clj:152)
at clojure.lang.AFn.run(AFn.java:22)
at nrepl.middleware.session$session_exec$main_loop__77087$fn__77091.invoke(session.clj:218)
at nrepl.middleware.session$session_exec$main_loop__77087.invoke(session.clj:217)
at clojure.lang.AFn.run(AFn.java:22)
at java.base/java.lang.Thread.run(Thread.java:835) The person uses Cursive if that's relevant.
UPDATE: he seem to be getting the same error with lein repl
I guess that Lein and Cider (note cider.nrepl.middleware) expect different nREPL versions
Perhaps bump both?
I was wondering why there’s cider in the output at all since he only uses lein repl, But regardless, it works for all the other people and used to work for him a couple of months ago too. I’ll deep dive into dependencies but didn’t notice anything strange before
Make sure they do not have something in ~/.lein/profiles.clj
The problem was in obsolete dependency in user profiles.clj
Sounds about right!
Some weird behavior I don't understand running in gitlab CI:
running tests with lein update-in :local-repo str ".m2' -- test and caching the .m2 directory, lein caches all the dependencies but doesn't cache plugins' dependencies
Any ideas what's going on here?
lein update-in isn't as generalized as one might wish and can leave these sorts of corner cases
Here's the kicker - locally it works as expected