Fork me on GitHub
#joyride
<
2023-05-04
>
alpox21:05:43

I just wanted to try something out with joyride but couldn’t get it running. I newly installed the extension and wanted to start a REPL through Start a Joyride REPL and Connect. It opened the REPL output window with some stuff and among it:

; Failed connecting.
; Jack-in done.
In the dev-tools I saw:
Failed connecting: #error {:message "Could not resolve symbol: clojure.main/repl-requires", :data {:type :sci/error, :line 1, :column 1, :message "Could not resolve symbol: clojure.main/repl-requires", :sci.impl/callstack #object[cljs.core.Volatile {:val ({:line 1, :column 1, :ns #object[XV user-activate], :file nil} {:line 1, :column 1, :ns #object[XV user-activate], :file nil, :sci.impl/f-meta {:name apply, :arglists ([f args] [f x args] [f x y args] [f x y z args] [f a b c d & args]), :doc "Applies fn f to the argument list formed by prepending intervening arguments to args.", :sci/built-in true, :ns #object[XV clojure.core]}})}], :file nil, :phase "analysis"}, :cause #error {:message "Could not resolve symbol: clojure.main/repl-requires", :data {:type :sci/error, :line nil, :column nil, :file nil, :phase "analysis"}}}
The nrepl seems to be running after that but the REPL never connected. Is there some specific step I missed to get it running?

alpox21:05:58

PS. i’m not in a hurry, gotta go get some sleep in soon anyway 😉

borkdude21:05:20

Maybe a Calva issue, clojure.main/repl-requires isn't in joyride I think

pez21:05:20

It might be a recently introduced bug in Calva. Try disabling the Auto-refer REPL utilities in settings and see if that helps.

pez21:05:46

We probably should add those requires in Joyride too. But Calva shouldn’t crash like that when they’re missing.

borkdude21:05:07

requiring-resolve to the rescue

alpox21:05:21

@U0ETXRFEW Thanks, that worked (after a vscode restart) 🙂 I don’t really know what that auto-refer is doing but I’m happy when things work 😄

alpox21:05:17

Ah did it try to resolve the repl helpers on connect but couldn’t because they were not required yet?

pez21:05:20

It’s Calva trying to deliver on the promise from clojure.main/repl-requires: >

A sequence of lib specs that are applied to `require`
> by default when a new command-line REPL is started.

pez21:05:07

… but couldn’t because they are not there in Joyride, I think is more what happens.

1
alpox09:05:58

Thanks for the fast fix

🙏 2