adzerk-oss / boot-cljs-repl

Boot task providing a REPL for ClojureScript development.
Eclipse Public License 1.0
72 stars 28 forks source link

0.1.10-SNAPSHOT #20

Closed pkobrien closed 8 years ago

pkobrien commented 9 years ago

I pushed an updated snapshot to clojars with the hope that we can get to a 0.1.10 release that is stable. Please test this snapshot and report any problems here. Thanks. :-)

kul commented 9 years ago

I am still not able to get repl working, keep on hitting this. Any ideas?

boot.user=> clojure.lang.Compiler$CompilerException: java.lang.IllegalArgumentException: No single method: _setup of interface: cljs.repl.IJavaScriptEnv found for function: -setup of protocol: IJavaScriptEnv, compiling:(cemerick/piggieback.clj:144:5)
     java.lang.IllegalArgumentException: No single method: _setup of interface: cljs.repl.IJavaScriptEnv found for function: -setup of protocol: IJavaScriptEnv
pkobrien commented 9 years ago

@kul You have something that is pulling in an older dependency. Can you post your boot.build and boot.properties files?

kul commented 9 years ago

@pkobrien Thanks! Seems like i was doing couple of things wrong first being running repl instead of cljs-repl. But yes there was an old piggieback dep coming from one of the deps. Now i am stuck on

java.util.concurrent.ExecutionException: java.lang.IllegalStateException: var: #'clojure.tools.nrepl.middleware.interruptible-eval/queue-eval is not public, compiling:(cemerick/piggieback.clj:240:3)
clojure.lang.Compiler$CompilerException: java.lang.IllegalStateException: var: #'clojure.tools.nrepl.middleware.interruptible-eval/queue-eval is not public, compiling:(cemerick/piggieback.clj:240:3)
        java.lang.IllegalStateException: var: #'clojure.tools.nrepl.middleware.interruptible-eval/queue-eval is not public
kul commented 9 years ago

Ok there was an older nrepl dep as well. Now I am stuck on how to run the repl. I am doing boot cljs-repl repl. Then (start-repl) gives

java.lang.IllegalStateException: Can't change/establish root binding of: *cljs-repl-env* with set
                             ...                                        
   cemerick.piggieback/cljs-repl                    piggieback.clj:  233
                             ...                                        
adzerk.boot-cljs-repl/start-repl                boot_cljs_repl.clj:  130
                             ...                                        
              boot.user/eval5510  boot.user2491252938845119627.clj:    1
                             ...                                        
               clojure.core/eval                          core.clj: 3081
pkobrien commented 9 years ago

@kul I haven't seen that error before so it is hard for me to debug with the information you have provided. How does your build.boot file differ from this simple example:

(set-env!
  :source-paths   #{"src"}
  :resource-paths #{"html"}
  :dependencies '[
    [adzerk/boot-cljs          "0.0-3308-0"      :scope "test"]
    [adzerk/boot-cljs-repl     "0.1.10-SNAPSHOT" :scope "test"]
    [adzerk/boot-reload        "0.3.1"           :scope "test"]
    [pandeiro/boot-http        "0.6.3-SNAPSHOT"  :scope "test"]
    [org.clojure/clojure       "1.7.0"]
    [org.clojure/clojurescript "0.0-3308"]])

(require
  '[adzerk.boot-cljs      :refer [cljs]]
  '[adzerk.boot-cljs-repl :refer [cljs-repl start-repl]]
  '[adzerk.boot-reload    :refer [reload]]
  '[pandeiro.boot-http    :refer [serve]])

(deftask dev []
  (set-env! :source-paths #{"src"})
  (comp (serve :dir "target/")
        (watch)
        (speak)
        (reload :on-jsload 'app.core/main)
        (cljs-repl)
        (cljs :source-map true :optimizations :none)))

(deftask build []
  (set-env! :source-paths #{"src"})
  (comp (cljs :optimizations :advanced)))
Deraen commented 8 years ago

If there are still problems, please open specific issues.