clj-on-windows

2023-05-10T12:33:51.368839Z

I have a regression that I'm having difficulty figuring out the cause of. I posted this to the spacemacs group but it doesn't seem to be spacemacs related. I rebooted my updated spacemacs and the elpa packages and rebooted my system. Now I can't jack-in with any simple test project.

2023-05-10T12:34:44.530059Z

Here is my *messages*output:

Starting new CIDER session ...
[nREPL] Starting server via "c:/Users/Paul Dumais/scoop/shims/clojure.exe" -Sdeps '{:deps {nrepl/nrepl {:mvn/version "1.0.0"} cider/cider-nrepl {:mvn/version "0.30.0"}} :aliases {:cider/nrepl {:main-opts ["-m" "nrepl.cmdline" "--middleware" "[cider.nrepl/cider-middleware]"]}}}' -M:cider/nrepl
error in process sentinel: nrepl-server-sentinel: Could not start nREPL server: Error building classpath. Don't know how to create ISeq from: clojure.lang.Symbol

java.lang.IllegalArgumentException: Don't know how to create ISeq from: clojure.lang.Symbol

	at clojure.lang.RT.seqFrom(RT.java:557)

	at clojure.lang.RT.seq(RT.java:537)

	at clojure.core$seq__5467.invokeStatic(core.clj:139)

	at clojure.core$merge_with$merge2__6033.invoke(core.clj:3083)

	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:3076)

	at clojure.core$merge_with.doInvoke(core.clj:3068)

	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:141)

	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)

 ("exited abnormally with code 1")
error in process sentinel: Could not start nREPL server: Error building classpath. Don't know how to create ISeq from: clojure.lang.Symbol

java.lang.IllegalArgumentException: Don't know how to create ISeq from: clojure.lang.Symbol

	at clojure.lang.RT.seqFrom(RT.java:557)

	at clojure.lang.RT.seq(RT.java:537)

	at clojure.core$seq__5467.invokeStatic(core.clj:139)

	at clojure.core$merge_with$merge2__6033.invoke(core.clj:3083)

	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:3076)

	at clojure.core$merge_with.doInvoke(core.clj:3068)

	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:141)

	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)

 ("exited abnormally with code 1")

2023-05-10T12:36:04.602919Z

Well not a real regression 🙂 - just that I had things working 2 days ago.

2023-05-10T12:36:45.952519Z

I can launch a repl from the command-line though.

borkdude 2023-05-10T12:38:51.350389Z

You still have the space in your user folder right?

2023-05-10T12:39:21.283019Z

yes

borkdude 2023-05-10T12:40:40.366229Z

might be related to that?

Alex Miller (Clojure team) 2023-05-10T12:41:14.880779Z

What version of the CLI?

borkdude 2023-05-10T12:41:17.603839Z

another possibility is the powershell shim that isn't properly working

2023-05-10T12:43:04.078259Z

I'm on spacemacs develop.

2023-05-10T12:43:37.060089Z

It could be that scoop clojure on windows only works after installing but not after reboot.

2023-05-10T12:43:55.112089Z

how do I check version of CLI?

borkdude 2023-05-10T12:44:15.882729Z

clojure --version

2023-05-10T12:45:09.399039Z

Clojure CLI version (deps.clj) 1.11.1.1273

borkdude 2023-05-10T12:46:30.461189Z

since you speak of a regression, when did it start happening? what did you change?

2023-05-10T12:47:01.685269Z

I'm going to try launching from cmd line again but with the same args as in emacs.

2023-05-10T12:48:13.333839Z

That works.

2023-05-10T12:48:31.371549Z

So it's just jacking-in that's broken suddenly.

borkdude 2023-05-10T12:48:38.177259Z

note that quoting of strings will be different depending on: • you're shelling out from Java • you're shelling out from Powershell • you're shelling out cmd.exe

2023-05-10T12:48:58.089489Z

I tried rolling back packages and the spacemacs repo but that didn't help.

borkdude 2023-05-10T12:50:19.019699Z

I think I would try shelling out from java to reproduce this

2023-05-10T12:50:41.641709Z

How would I do that?

borkdude 2023-05-10T12:50:54.123209Z

let me whip up an example... just a minute

borkdude 2023-05-10T13:01:43.905159Z

@pauld Like this:

(let [process-builder (java.lang.ProcessBuilder. ["clojure.exe" "-Spath" "-Sdeps" (pr-str '{:deps {org.clojure/clojure {:mvn/version "1.12.0-alpha2"}}})])
      process (.start process-builder)
      output (slurp (.getInputStream process))
      error (slurp (.getErrorStream process))]
  (println output)
  (println error))

borkdude 2023-05-10T13:01:53.564559Z

and then adapt the clojure.exe invocation

borkdude 2023-05-10T13:02:52.887469Z

or wait, CIDER isn't shelling out from Java, right, it's doing this from elisp?

2023-05-10T13:04:13.923189Z

Not sure... it is calling clojure.exe.

borkdude 2023-05-10T13:06:05.649709Z

but from where?

2023-05-10T13:07:44.715379Z

Yeah, elisp command I suppose. Not sure how emacs cider internals work that well. There is a variable that holds the command that gets launched.

2023-05-10T13:08:22.659599Z

That command runs fine in my git bash shell but not from emacs-jack-in (any longer).

2023-05-10T13:08:38.812099Z

I might try posting this over in the cider group.

👍 1
littleli 2023-05-11T07:45:39.696079Z

@pauld so you're using scoop? which package? clj-deps?

2023-05-11T12:01:56.748959Z

Yeah scoop clojure via clj-deps package. It was working fine earlier. Not sure what I could have done to break it.

borkdude 2023-05-11T12:08:45.574179Z

@pauld did you upgrade clj-deps? or did you upgrade CIDER? Are you using a unstable version of CIDER from melpa?

2023-05-11T12:27:16.670229Z

Did not upgrade anything via scoop yet. Maybe I should! As for cider - It's whichever version in spacemacs develop branch. Not sure how to check.

2023-05-11T12:27:52.177179Z

trying emacs list-packages

2023-05-11T12:28:43.933369Z

it just shows <tel:202201291149|20220129.1149> as version there.

2023-05-11T12:29:34.236329Z

which was required by helm-cider-20220706.944

2023-05-11T12:31:00.274659Z

Woops thats wrong <tel:202304261815|20230426.1815>

2023-05-11T12:31:09.525039Z

is the version of cider I have

2023-05-11T12:32:51.789449Z

I had upgraded cider, but I also reverted those upgrades to see if that would help but it did not.