Fork me on GitHub
#leiningen
<
2023-05-02
>
jumar09:05:58

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)

jumar09:05:16

The person uses Cursive if that's relevant.

jumar10:05:52

UPDATE: he seem to be getting the same error with lein repl

vemv11:05:49

I guess that Lein and Cider (note cider.nrepl.middleware) expect different nREPL versions Perhaps bump both?

jumar12:05:43

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

mikerod14:05:05

Make sure they do not have something in ~/.lein/profiles.clj

jumar14:05:26

The problem was in obsolete dependency in user profiles.clj

mikerod00:05:40

Sounds about right!

Ben Sless14:05:17

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?

vemv14:05:27

lein update-in isn't as generalized as one might wish and can leave these sorts of corner cases

Ben Sless14:05:53

Here's the kicker - locally it works as expected

👀 2