@pez What’s the failure?
> Exception in thread "nREPL-worker-2" java.lang.IllegalArgumentException: No implementation of method: :send of protocol: #'clojure.tools.nrepl.transport/Transport found for class: nrepl.transport.FnTransport
According to this stacktrace you’ve got a mixture of tools.nrepl and nrepl in your project.
Are you sure you don’t have tools.nrepl
somewhere in its dependency tree?
@bozhidar The failure related to the :repl-options
map in the project file?
You're right, it says tools.nrepl
right there. I'll print out the dependency tree and see if I can see it lurking around there. But I really shouldn't have that. I used the broomstick to chase everything like that out!
It must be there, otherwise you can’t get such a stacktrace.
As for the :repl-options
problem - I don’t know.
I don’t have time to play with lein master myself. I just use the lein-nrepl
plugin instead.
When using that plugin my user namespace didn't load as it does with a ”normal” repl.
I got in a hurry since I had been thinking Calva was ready for 0.4.5 and now when you made me see that I hadn't even tested that, I want to make it as painless as possible for the users when leiningen upgrades and 0.4.5 starts to be used.
What’s in your user.clj
, btw?
That’s often the reason for problems like yours.
In the project I tried the plugin with, user.clj
contains just this:
(ns routing-example.user
(:use [figwheel-sidecar.repl-api :as ra]))
(defn start []
(ra/start-figwheel!)
(ra/cljs-repl "dev"))
(defn stop []
(ra/stop-figwheel!))
I’ll have to check figwheel-sidecar deps then. Likely it’s pulling the wrong version of nREPL.
https://github.com/bhauman/lein-figwheel/blob/master/sidecar/project.clj#L31
Yep, that’s messing everything up. If you remove this file all will be good.
This loads tools.nrepl, which makes cider-nrepl believe you’re using tools.nrepl
(as it checks if it’s loaded to decide which nREPL version to use).
I’m pretty sure everything will work fine for you without this file.