nrepl / weasel

ClojureScript browser REPL using WebSockets
The Unlicense
324 stars 35 forks source link

Code jumping, autocomplete not working #62

Closed lgrapenthin closed 9 years ago

lgrapenthin commented 9 years ago

[weasel "0.7.0-SNAPSHOT"] [org.clojure/clojurescript "0.0-3196"] [com.cemerick/piggieback "0.2.0"] Cider 8.2

This is what weasel prints when I hit M-. java.lang.NullPointerException: null at clojure.core$deref_future.invoke (core.clj:2184) clojure.core$deref.invoke (core.clj:2205) cider.nrepl.middleware.util.cljs$grab_cljs_env.invoke (cljs.clj:22) cider.nrepl.middleware.info$info.invoke (info.clj:129) cider.nrepl.middleware.info$info_reply.invoke (info.clj:217) cider.nrepl.middleware.info$wrap_info$fn23736.invoke (info.clj:260) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.middleware.session$add_stdin$fn21865.invoke (session.clj:238) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.apropos$wrap_apropos$fn22341.invoke (apropos.clj:102) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.resource$wrap_resource$fn24008.invoke (resource.clj:25) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.undef$wrap_undef$fn24461.invoke (undef.clj:30) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.macroexpand$wrap_macroexpand$fn23946.invoke (macroexpand.clj:79) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.classpath$wrap_classpath$fn22408.invoke (classpath.clj:25) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.inspect$wrap_inspect$fn23908.invoke (inspect.clj:75) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.ns$wrap_ns$fn23982.invoke (ns.clj:61) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cemerick.piggieback$wrap_cljs_repl$fn21369.invoke (piggieback.clj:292) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cljx.repl_middleware$wrap_cljx$fn27782.invoke (repl_middleware.clj:98) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.middleware.session$session$fn21850.invoke (session.clj:192) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.server$handleSTAR.invoke (server.clj:19) clojure.tools.nrepl.server$handle$fn21919.invoke (server.clj:28) clojure.core$binding_conveyor_fn$fn4423.invoke (core.clj:1914) clojure.lang.AFn.call (AFn.java:18) java.util.concurrent.FutureTask.run (FutureTask.java:262) java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:615) java.lang.Thread.run (Thread.java:745) java.lang.NullPointerException: null at clojure.core$deref_future.invoke (core.clj:2184) clojure.core$deref.invoke (core.clj:2205) cider.nrepl.middleware.util.cljs$grab_cljs_env.invoke (cljs.clj:22) cider.nrepl.middleware.info$info.invoke (info.clj:129) cider.nrepl.middleware.info$eldoc.invoke (info.clj:240) cider.nrepl.middleware.info$eldoc_reply.invoke (info.clj:246) cider.nrepl.middleware.info$wrap_info$fn23736.invoke (info.clj:261) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.middleware.session$add_stdin$fn21865.invoke (session.clj:238) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.apropos$wrap_apropos$fn22341.invoke (apropos.clj:102) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.resource$wrap_resource$fn24008.invoke (resource.clj:25) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.undef$wrap_undef$fn24461.invoke (undef.clj:30) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.macroexpand$wrap_macroexpand$fn23946.invoke (macroexpand.clj:79) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.classpath$wrap_classpath$fn22408.invoke (classpath.clj:25) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.inspect$wrap_inspect$fn23908.invoke (inspect.clj:75) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cider.nrepl.middleware.ns$wrap_ns$fn23982.invoke (ns.clj:61) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cemerick.piggieback$wrap_cljs_repl$fn21369.invoke (piggieback.clj:292) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) cljx.repl_middleware$wrap_cljx$fn27782.invoke (repl_middleware.clj:98) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.middleware.session$session$fn21850.invoke (session.clj:192) clojure.tools.nrepl.middleware$wrap_conj_descriptor$fn20893.invoke (middleware.clj:22) clojure.tools.nrepl.server$handleSTAR.invoke (server.clj:19) clojure.tools.nrepl.server$handle$fn21919.invoke (server.clj:28) clojure.core$binding_conveyor_fn$fn4423.invoke (core.clj:1914) clojure.lang.AFn.call (AFn.java:18) java.util.concurrent.FutureTask.run (FutureTask.java:262) java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:615) java.lang.Thread.run (Thread.java:745)

cichli commented 9 years ago

Piggieback 0.2.x support requires [cider-nrepl "0.9.0-SNAPSHOT"] - which means you'll also need the latest CIDER on the emacs-side too (i.e. MELPA rather than MELPA-stable). A stable 0.9.0 of CIDER will hopefully be released sometime this month.

lgrapenthin commented 9 years ago

Code jumping doesn't work with cider 0.9 either, that is why I downgraded it back to stable. Downgrading piggieback to 1.5. results in the ExceptionInfo No such namespace: cljsjs.react, could not locate cljsjs/react.cljs or cljsjs/react.cljc at line 1 file:/home/leon/.m2/repository/org/omcljs/om/0.8.8/om-0.8.8.jar!/om/dom.cljs clojure.core/ex-info (core.clj:4591)

when evaluating a namespace defintion, so it is also not an option.

Is the only option to downgrade ClojureScript?

cichli commented 9 years ago

Yeah, I don't think piggieback 0.5 supports the foreign libs stuff in more recent versions of ClojureScript unfortunately... what was the code jumping issue you were encountering with CIDER 0.9 (and was completion also not working)? If you have an example project, I'll happily clone it and take a look btw.

lgrapenthin commented 9 years ago

Apparently, after upgrading again, it does work. Maybe its due to the latest commits on the nrepl-cider snapshot or I didn't clean up carefully enough.

I still believe that there should be a working setup of stable tooling. Feel free to close this if you disagree or the problem is not weasels fault.

cichli commented 9 years ago

Apparently, after upgrading again, it does work.

Good to hear! :+1:

I still believe that there should be a working setup of stable tooling.

I agree completely - depending on snapshots for your tools is not at all ideal. Unfortunately the decision of when 0.9.0 is released is not mine to make :-).

tomjakubowski commented 9 years ago

I still believe that there should be a working setup of stable tooling. Feel free to close this if you disagree or the problem is not weasels fault.

I completely agree that a stable set of ClojureScript tooling would be great! We can't really have stable tooling, though, as long as ClojureScript itself is unstable. :-)

tomjakubowski commented 9 years ago

Also closing, because I don't think this is Weasel related. Feel free to comment and re-open if you disagree!