This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-08-04
Channels
- # beginners (90)
- # boot (5)
- # cider (89)
- # cljsrn (27)
- # clojure (33)
- # clojure-dev (2)
- # clojure-italy (3)
- # clojure-spec (35)
- # clojure-uk (17)
- # clojurescript (93)
- # code-reviews (1)
- # datascript (2)
- # datomic (14)
- # defnpodcast (6)
- # emacs (11)
- # figwheel (8)
- # figwheel-main (6)
- # hyperfiddle (14)
- # jobs-rus (1)
- # nrepl (3)
- # off-topic (13)
- # onyx (6)
- # reagent (6)
- # reitit (4)
- # shadow-cljs (110)
- # spacemacs (1)
- # tools-deps (10)
- # vim (17)
When calling (cast/initialize-redirect :stdout)
so cast will output messages to stdout instead of ignoring the calls, my application crashes when calling said functions 😕
It only happens when using cider, and I haven't yet been able to see what exception get's thrown 😞
@rhansen I’m reasonably sure you’ve hit https://github.com/clojure-emacs/cider-nrepl/issues/542
https://github.com/clojure-emacs/cider-nrepl/commit/15d87747f790d300b0f13eef2e5bdc87b9dfd4ec
So, yeah - mainline cider-nrepl 0.18 now support nREPL 0.4! That’s a very big success!
I restarted my shadow-cljs watch
and I saw it downloaded a [cider-nrepl "0.18.0-SNAPSHOT"]
dep, which I had previously installed locally. Now my cider-connect-cljs
doesn't work anymore. I've tried updating my emacs cider dep and removing any cider packages and re-installing cider-nrepl
from a fresh clone. After entering host+port+repl-type shadow I get asked which shadow build I want to use (as usual). But after that I don't see the repl switch to cljs as it used to do before. Any evals time out.
@bbss Likely you experienced this https://github.com/clojure-emacs/cider-nrepl/commit/6727f9fd59836d0c22bea21b895c3d833f4c53f3
I’ve cut a new snapshot. I tested only with 0.4 locally, that’s why I didn’t notice the problem.
@rhansen https://github.com/clojure-emacs/cider-nrepl/commit/54bef72c29d9f01f5e109fa515f06595c454438f
@bozhidar awesome! Does this mean that I just need to update my melpa packages and I should be all good?
Getting problems with Cider. Trying to do a cider-jack-in starts a repl but throws an error like this:
2018-08-04 20:42:24,140 [clojure-agent-send-off-pool-5] ERROR clojure.tools.nrepl.server - Unhandled REPL handler exception processing message {:op init-debugger, :print-level 10, :print-length 10, :session 8dd8ceb1-2573-46d3-8f52-84ea5b8890f5, :id 8}
clojure.lang.Compiler$CompilerException: java.lang.IllegalStateException: response-for already refers to: #'nrepl.misc/response-for in namespace: cider.nrepl.middleware.inspect, compiling:(cider/nrepl/middleware/inspect.clj:10:1)
This is with a luminus/swagger project that has been working fine for some time now. Just tried building a new one with lein new luminus +swagger +mongodb
and I get the same error. Could this be something to do with the recent changes to cider-nrepl?Looks like it is the latest cider-nrepl. I can start a repl via lein, and connect to it using cider-connect
. This works, but complains about cider and cider-nrepl versions not matching. If I add this to profiles: :repl {:plugins [[cider/cider-nrepl "0.18.0-SNAPSHOT"]]}
I get the error again and the repl won't start. Reverting to cider/cider-nrepl "0.17.0"
makes the error go away.
yeah, the same here:
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-apropos, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-classpath, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-complete, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-debug, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-enlighten, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-format, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-info, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-inspect, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-macroexpand, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-slurp, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-ns, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-out, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-content-type, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-slurp, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-pprint, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-pprint-fn, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-profile, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-refresh, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-resource, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-spec, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-stacktrace, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-test, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-trace, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-tracker, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-undef, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-version, see clojure.tools.middleware/set-descriptor!
@bozhidar that came with the latest snapshot of cider/cider-nrepl (0.18.0-SNAPSHOT). any clue where is the problem?
Seems like some mismatch between the nREPL versions, but I can’t understand how something like this can be happening.
@soulflyer’s problems seems like what I fixed here https://github.com/clojure-emacs/cider-nrepl/commit/6727f9fd59836d0c22bea21b895c3d833f4c53f3
Very simply put - after the most recent update cider-nrepl
assumes you’re running nREPL 0.4.x unless it can find that clojure.tools.nrepl
is loaded (which is true if you’re running lein repl
or boot repl
).
The middleware descriptor problems are a complete mystery - they imply that set-descriptor
was set with the nREPL 0.4 function, but it’s trying to be resolved by nREPL 0.2, which should not be happening.
Anyways, the bulk of the changes are here https://github.com/clojure-emacs/cider-nrepl/commit/15d87747f790d300b0f13eef2e5bdc87b9dfd4ec
I get similar errors trying to jack-in to my clojurescript project. Here is the trace in my *nrepl-server buffer:
my emacs just straight-up freezes (also using spacemacs develop) with cider-jack-in in brand new deps.edn project. I was able to stop it from freezing by removing refactor-nrepl.middleware/wrap-refactor
from the startup params, now I get the same error as @pauld
I guess the next step is to rule out spacemacs (it does some dependency injections of it's own).
adding the refactor (without the sayid middleware) middleware reintroduces the freeze
is there a way to print the whole command that CIDER uses to start the nREPL process for cider-jack-in
?
in the past I deleted the sayid import at the top to stop it from loading sayid middleware
FYI to fix this in the interim I added this to dotspacemacs/user-config
:
(setq cider-jack-in-nrepl-middlewares '("cider.nrepl/cider-middleware"))
it looks like at least sayid has a `sayid-inject-dependencies-at-jack-in var you can set to nil
okay. adding
;; sayid and refactor-nrepl are broken right now QQ
(setq sayid-inject-dependencies-at-jack-in nil)
(setq cljr-inject-dependencies-at-jack-in nil)
to my user-config worked