This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
Dear Calva friends. In trying to solve an issue with deps.edn jack-in on Windows sometimes using Powershell and failing on the quoting (which is tailored for cmd.exe), I have a version of Calva in development that changes how deps.edn jack-in on Windows works. Basically removing the special case and doing what we do in Unix-like systems. (For reasons this wasn’t possible before, but now it is.) Anyway, I have tested the changes on Windows. and it seems to work. Would appreciate some help with testing from Windows users. And I do not have a WSL setup, so would very much appreciate help with that too.
• Download and install this https://output.circle-artifacts.com/output/job/2c7da4c1-f49b-4672-941a-bc0e4934b611/artifacts/0/tmp/artifacts/calva-2.0.461-2586-cmd-exe-ee3e31b5.vsix. (You probably will have to rename the downloaded file ending from .zip
to .vsix
.
• Test jack-in to your projects, especially deps.edn, but if you have Leiningen projects, that is valuable to test as well.
• Test the Create a “Getting Sterted” REPL project (and similar) commands.
• Test with clojure
on the PATH, and without it. Both should work. (Takes a reload of the VS Code window, because Calva checks this in activation.)
Thanks in advance for any help! ❤️ 🙏
I'm on v2.0.461
:
• with clojure.exe
not in path, the jack-in process just hangs.
• with clojure.exe
(installed via scoop
in path, I get the following:
Error building classpath. class java.lang.Character cannot be cast to class java.util.Map$Entry (java.lang.Character and java.util.Map$Entry are in module java.base of loader 'bootstrap')
java.lang.ClassCastException: class java.lang.Character cannot be cast to class java.util.Map$Entry (java.lang.Character and java.util.Map$Entry are in module java.base of loader 'bootstrap')
at clojure.core$key.invokeStatic(core.clj:1582)
at clojure.core$merge_with$merge_entry__6031.invoke(core.clj:3078)
at clojure.core$reduce1.invokeStatic(core.clj:946)
at clojure.core$merge_with$merge2__6033.invoke(core.clj:3084)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:63)
at clojure.core$reduce1.invokeStatic(core.clj:944)
at clojure.core$reduce1.invokeStatic(core.clj:936)
at clojure.core$merge_with.invokeStatic(core.clj:3077)
at clojure.core$merge_with.doInvoke(core.clj:3069)
at clojure.lang.RestFn.applyTo(RestFn.java:139)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.tools.deps$merge_edns.invokeStatic(deps.clj:143)
at clojure.tools.deps.script.make_classpath2$run_core.invokeStatic(make_classpath2.clj:86)
at clojure.tools.deps.script.make_classpath2$run.invokeStatic(make_classpath2.clj:153)
at clojure.tools.deps.script.make_classpath2$_main.invokeStatic(make_classpath2.clj:203)
at clojure.tools.deps.script.make_classpath2$_main.doInvoke(make_classpath2.clj:174)
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)
Jack-in process exited. Status: 1
however, the command which is launched:
pushd c:\Users\#####\AppData\Local\Temp\betterthantomorrow.calva\zd86gy4 & clojure -Sdeps "{:deps {nrepl/nrepl {:mvn/version,""1.1.1""},cider/cider-nrepl {:mvn/version,""0.47.1""}}}" -M:test -m nrepl.cmdline --middleware "[cider.nrepl/cider-middleware]" & popd
does work when launched on cmd
I’ve just created an issue with what we currently know about this, here: https://github.com/BetterThanTomorrow/calva/issues/2592
Please add your observation on that issue, @U074Z2B4FGA.