Closed ToBeReplaced closed 10 years ago
I have versioning issues -- closing.
Change austin to version 0.1.3
and clojurescript to version 0.0-2060
in the browser-connected-repl-sample and you get the following error when attempting to attach the browser:
java.util.concurrent.ExecutionException: java.lang.AssertionError: Assert failed: :output-dir cannot be specified without also specifying :output-to (contains? opts :output-to) at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at clojure.core$deref_future.invoke(core.clj:2108) at clojure.core$future_call$reify__6267.deref(core.clj:6308) at clojure.core$deref.invoke(core.clj:2128) at cemerick.austin$repl_client_js.invoke(austin.clj:144) at cemerick.austin$send_repl_client_page.invoke(austin.clj:158) at cemerick.austin$eval4256$fn4258.invoke(austin.clj:271) at clojure.lang.MultiFn.invoke(MultiFn.java:227) at cemerick.austin$handle_request.invoke(austin.clj:279) at cemerick.austin$create_server$reify4134.handle(austin.clj:25) at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:77) at sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:83) at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:80) at sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(ServerImpl.java:677) at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:77) at sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:649) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:744) Caused by: java.lang.AssertionError: Assert failed: :output-dir cannot be specified without also specifying :output-to (contains? opts :output-to) at cljs.closure$check_output_dir.invoke(closure.clj:1007) at cljs.closure$build.invoke(closure.clj:1064) at cljs.closure$build.invoke(closure.clj:1049) at cemerick.austin$compile_client_js.invoke(austin.clj:340) at cemerick.austin$create_client_js_file.invoke(austin.clj:345) at cemerick.austin$repl_env$fn4295.invoke(austin.clj:412) at clojure.core$binding_conveyor_fn$fn4107.invoke(core.clj:1836) at clojure.lang.AFn.call(AFn.java:18) at java.util.concurrent.FutureTask.run(FutureTask.java:262) ... 3 more
Okay, thanks for the report. I haven't used Austin in conjunction with 2060 yet, I wouldn't be surprised if there was some breakage.
Just wanted to report that I have the same issue after updating to 0.0.2060, except I was disrupted in a more puzzling manner - after running cemerick.austin.repls/exec, the headless browser repl would appear to instantiate error-free, but if you entered any expressions it would not evaluate them. Unfortunately it prints no error.
So I just updated both Piggieback and Austin to the latest ClojureScript version, installed them locally, then created a minimal project just to test out the repl again. (Hey, it's worth a shot, right?) This time upon running exec, I got an error!
Browser-REPL ready @ http://localhost:50987/7768/repl/start IllegalStateException Can't change/establish root binding of: cljs-repl-options with set clojure.lang.Var.set (Var.java:233)
@aamedina This might be unrelated. I saw this error when I tried to spawn a cljs-repl without the suitable nrepl middleware in place (in my case, nrepl wasn't started via lein but programmatically).
Confirmed as an upstream ClojureScript issue; apparently a fix is forthcoming. Updating the issue title to reflect the concrete problem.
@aamedina I believe @the-kenny is correct re: your last msg, any errors talking about root bindings are caused by nREPL middleware being misconfigured or absent.
Yep, that was the case for the error. I had mistakenly put Austin in the dependencies instead of the plugins vector inside project.clj. That being said, when I configured it correctly I had the same issue with a non-responsive repl. Hope it gets fixed upstream soon!
Fix has landed on master. Will close with an update when it's available from maven central.
Anything >= 0.0-2069
resolves this problem: http://search.maven.org/#search|gav|1|g%3A%22org.clojure%22%20AND%20a%3A%22clojurescript%22
e.g.
(cemerick.austin.repls/exec)
yieldsAssert failed: :output-dir cannot be specified without also specifying :output-to
.