Fork me on GitHub
#leiningen
<
2019-04-03
>
sgerguri13:04:29

Hello, I am seeing

[WARNING] No nREPL middleware descriptor in metadata of #'clojure.tools.nrepl.middleware.render-values/render-values, see nrepl.middleware/set-descriptor!
shortly followed by
ERROR: Unhandled REPL handler exception processing message {:id 432c9e56-70c3-4890-bd76-4ecd77472f8a, :op clone}
java.lang.IllegalArgumentException: No implementation of method: :send of protocol: #'nrepl.transport/Transport found for class: clojure.tools.nrepl.middleware.render_values$wrap_renderer$reify__23919
when doing lein repl on a project using version 2.9.1 of leiningen. Has anyone run into this? Version of Clojure is 1.10.0. (edited)

sgerguri14:04:56

Happens on 2.8.3 as well. Rolled back to leiningen version 2.8.1 and things work just fine. Any chance someone else bumped into this?

mikerod14:04:23

@sgerguri do you have an old cider-nrepl middleware dependency

mikerod14:04:50

Either from your project.clj or lein ~/profiles.clj

sgerguri14:04:30

@mikerod I ran lein ancient on the project and it's not reporting anything outdated. This also happens outside of a project - when I do lein repl from within my home directory I hit the same issue.

sgerguri14:04:38

Here's the contents of my ~/.lein/profiles.clj:

{:user {:plugins [[com.jakemccrary/lein-test-refresh "0.23.0"]
                  [jonase/eastwood "0.3.5"]
                  [lein-ancient "0.6.15"]
                  [lein-bikeshed "0.5.1"]
                  [lein-cljfmt "0.6.4"]
                  [lein-kibit "0.1.6"]
                  [venantius/ultra "0.5.4"]]}
        :aliases {"omni" ["do" ["clean"] ["with-profile" "production" "deps" ":tree"] ["ancient"] ["kibit"] ["bikeshed"]]}
 :repl [nrepl "0.3.1"]}

mikerod14:04:11

Maybe look at your lein deps :tree just to see if it reveals something.

rahul08032714:04:26

@sgerguri I suspect ultra 0.5.4 could be be reason. Lein went through a major nREPL upgrade post 2.8.1 . Try 0.6.0 of it

rahul08032714:04:43

that should have the fixes

sgerguri14:04:09

That does not tell me anything when run outside of a project folder. This issue happens outside of any project as well. @rahul080327 Thanks, will try bumping that.

sgerguri14:04:38

venantius/ultra was the culprit. Thanks for the suggestion, bumping to 0.6.0 fixed the problem. 🙇

mikerod14:04:35

@sgerguri this is what I was getting at

mikerod14:04:58

you may be write that lein deps :tree wouldn’t capture those dependencies, but I think it would in the :dev profile for a repl

mikerod14:04:16

outside of a project, your ~/lein/profiles.clj still loads and I think it’ll show that EDIT: I do see that lein deps :tree doesn’t work outside a project still though, so would have to use it from within on to see these things. Also, :plugins are going to be different still. I don’t know of a fast way to look at those I guess, other then temporarily make them real :dependencies in a project just to check their tree out.

mikerod14:04:59

It is good @rahul080327 knew the specific dep though.