Fork me on GitHub
#cider
<
2018-08-20
>
plexus15:08:48

Today after upgrading CIDER I can't jack in any more, it shows "[nrepl] Direct connection established ..." in the minibuffer, and then Emacs sits there frozen

plexus15:08:48

If I interrup it with SIGUSR2 (which I recently learned you can do, very useful :)) it shows this stack trace

plexus15:08:13

No implementation of method: :send of protocol: #'clojure.tools.nrepl.transport/Transport found for class: nrepl.transport.FnTransport
java.lang.IllegalArgumentException: No implementation of method: :send of protocol: #'clojure.tools.nrepl.transport/Transport found for class: nrepl.transport.FnTransport
 at clojure.core$_cache_protocol_fn.invokeStatic (core_deftype.clj:583)
    clojure.core$_cache_protocol_fn.invoke (core_deftype.clj:575)
    clojure.tools.nrepl.transport$eval1554$fn__1555$G__1545__1562.invoke (transport.clj:16)
    refactor_nrepl.middleware$version_reply.invokeStatic (middleware.clj:144)
    refactor_nrepl.middleware$version_reply.invoke (middleware.clj:143)
    refactor_nrepl.middleware$wrap_refactor$fn__9261.invoke (middleware.clj:214)

plexus15:08:24

Sorry, I deleted the stack trace again, a bit too much noise, here it is in a gist https://gist.github.com/87aa21a04b296374b7f7af42db51f173

plexus16:08:22

Anyone know how I can tell clj-refactor not to inject its middleware on cider-jack-in? seems that would be a good thing to try

pauld16:08:14

(setq cljr-inject-dependencies-at-jack-in nil)

pauld16:08:36

might be worth a try

pauld16:08:14

not sure if that is spacemacs-only

bozhidar16:08:35

@plexus Also seems that sayid got injected for you, which is not compatible with nREPL 0.4 yet.

bozhidar16:08:07

Not sure what’s the version of refactor-nrepl you’re using - the newest snapshot should work with nREPL 0.4.

bozhidar16:08:57

You’ve definitely hit some middleware compatibility issues.

pauld16:08:39

(setq sayid-inject-dependencies-at-jack-in nil)

bozhidar16:08:20

Yeah, a closer look in the stacktrace reveals that nREPL 0.4 was started, but sayid required something from nREPL 0.2 and broke everything.

plexus19:08:04

thanks @bozhidar @pauld, I'll try that. Seems the spacemacs Clojure layer is pulling in Sayid.

pauld19:08:47

yes it does. if you put the setq line I showed you under .spacemacs file's user-config section, things will be good again

pauld19:08:26

you shouldn't need the line that disables clj-refactor as it has been updated

👍 4
bozhidar21:08:06

That’s the relevant spacemacs issue.