vouch-opensource / krell

Simple ClojureScript React Native Tooling
Eclipse Public License 1.0
679 stars 36 forks source link

ClojureScript 1.11.51 Incompatibility #149

Open zonotope opened 2 years ago

zonotope commented 2 years ago

Krell does not seem to work with ClojureScript 1.11.51. It looks like Krell has an implicit dependency on clojure.data.json, and this library has been vendored in the new ClojureScript version

Downloading: org/clojure/clojurescript/1.11.51/clojurescript-1.11.51.pom from central
Downloading: com/cognitect/transit-java/1.0.362/transit-java-1.0.362.pom from central
Downloading: com/google/javascript/closure-compiler-unshaded/v20220502/closure-compiler-unshaded-v20220502.pom from central
Downloading: com/google/javascript/closure-compiler-main/v20220502/closure-compiler-main-v20220502.pom from central
Downloading: com/google/javascript/closure-compiler-parent/v20220502/closure-compiler-parent-v20220502.pom from central
Downloading: org/clojure/clojurescript/1.11.51/clojurescript-1.11.51.jar from central
Downloading: com/cognitect/transit-java/1.0.362/transit-java-1.0.362.jar from central
Downloading: com/google/javascript/closure-compiler-unshaded/v20220502/closure-compiler-unshaded-v20220502.jar from central
clojure.lang.ExceptionInfo: Failed to load REPL namespace krell.repl {:repl-ns krell.repl}
    at cljs.main$get_js_opt.invokeStatic(main.clj:34)
    at cljs.main$get_js_opt.invoke(main.clj:18)
    at cljs.main$_main.invokeStatic(main.clj:63)
    at cljs.main$_main.doInvoke(main.clj:56)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invokeStatic(core.clj:667)
    at clojure.core$apply.invoke(core.clj:662)
    at krell.main$_main.invokeStatic(main.clj:9)
    at krell.main$_main.doInvoke(main.clj:7)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.lang.Var.applyTo(Var.java:705)
    at clojure.core$apply.invokeStatic(core.clj:667)
    at clojure.main$main_opt.invokeStatic(main.clj:514)
    at clojure.main$main_opt.invoke(main.clj:510)
    at clojure.main$main.invokeStatic(main.clj:664)
    at clojure.main$main.doInvoke(main.clj:616)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.lang.Var.applyTo(Var.java:705)
    at clojure.main.main(main.java:40)
Caused by: Syntax error macroexpanding at (krell/repl.clj:1:1).
    at clojure.lang.Compiler.load(Compiler.java:7665)
    at clojure.lang.RT.loadResourceScript(RT.java:381)
    at clojure.lang.RT.loadResourceScript(RT.java:372)
    at clojure.lang.RT.load(RT.java:459)
    at clojure.lang.RT.load(RT.java:424)
    at clojure.core$load$fn__6908.invoke(core.clj:6161)
    at clojure.core$load.invokeStatic(core.clj:6160)
    at clojure.core$load.doInvoke(core.clj:6144)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invokeStatic(core.clj:5933)
    at clojure.core$load_one.invoke(core.clj:5928)
    at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
    at clojure.core$load_lib.invokeStatic(core.clj:5974)
    at clojure.core$load_lib.doInvoke(core.clj:5953)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invokeStatic(core.clj:669)
    at clojure.core$load_libs.invokeStatic(core.clj:6016)
    at clojure.core$load_libs.doInvoke(core.clj:6000)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invokeStatic(core.clj:669)
    at clojure.core$require.invokeStatic(core.clj:6038)
    at clojure.core$require.doInvoke(core.clj:6038)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at cljs.main$get_js_opt.invokeStatic(main.clj:26)
    ... 18 more
Caused by: java.io.FileNotFoundException: Could not locate clojure/data/json__init.class, clojure/data/json.clj or clojure/data/json.cljc on classpath.
    at clojure.lang.RT.load(RT.java:462)
    at clojure.lang.RT.load(RT.java:424)
    at clojure.core$load$fn__6908.invoke(core.clj:6161)
    at clojure.core$load.invokeStatic(core.clj:6160)
    at clojure.core$load.doInvoke(core.clj:6144)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.core$load_one.invokeStatic(core.clj:5933)
    at clojure.core$load_one.invoke(core.clj:5928)
    at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
    at clojure.core$load_lib.invokeStatic(core.clj:5974)
    at clojure.core$load_lib.doInvoke(core.clj:5953)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invokeStatic(core.clj:669)
    at clojure.core$load_libs.invokeStatic(core.clj:6016)
    at clojure.core$load_libs.doInvoke(core.clj:6000)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invokeStatic(core.clj:669)
    at clojure.core$require.invokeStatic(core.clj:6038)
    at clojure.core$require.doInvoke(core.clj:6038)
    at clojure.lang.RestFn.invoke(RestFn.java:1523)
    at krell.repl$eval220$loading__6789__auto____221.invoke(repl.clj:1)
    at krell.repl$eval220.invokeStatic(repl.clj:1)
    at krell.repl$eval220.invoke(repl.clj:1)
    at clojure.lang.Compiler.eval(Compiler.java:7194)
    at clojure.lang.Compiler.eval(Compiler.java:7183)
    at clojure.lang.Compiler.load(Compiler.java:7653)
    ... 41 more
apostolou commented 2 years ago

Hi @zonotope , for what it is worth, I had the same issue with clojurescript version 1.11.60. So I added in my deps.edn file the following dependency and it fixed it. org.clojure/data.json {:mvn/version "2.4.0"}

Hope this helps