Fork me on GitHub
#calva
<
2021-10-10
>
Jakub Holý (HolyJak)17:10:42

Hi! Any tips for why jack-in with deps + shadow fails with > Failed starting cljs repl for build: :todomvc. Is the build running and connected? It is this project, and these instructions: https://github.com/holyjak/fulcro-intro-wshop#running-the-app-from-vs-code-with-calva 🙏

👀 1
1
pez07:10:59

We really need to make a quality cleanup of this part of Calva. A horrible mix of bad Ux and bugs. Anyway, I submitted a PR with working instructions. I hope you will find it working and helping!

Jakub Holý (HolyJak)08:10:38

BTW I selected deps + shadow b/c my thinking, based on our last conversation, was that I indeed wanted to use just "shadow" for the frontend build, but I also wanted to start a deps-based repl for the backend. I had no idea that just selecting "shadow" would also start a backend repl in addition to the frontend build + cljs repl.

pez09:10:52

It is not so much about “selecting shadow” as it is how shadow-cljs works. If the :deps entry is non-nil it will use clojure to launch the REPL. If you look at the start of the Jack-in output you will see a message that this is happening. To my understanding (since I built the jack-in feature), deps + shadow-cljs should also work. Only that then the deps will need to include shadow dependencies and also it just is known to be tricky to get to work. The way you have set up the project is to prefer, because then shadow just does the right thing.

Jakub Holý (HolyJak)11:10:54

That is fine but that only explain why the frontend build works. If you look at my DIY instructions for the terminal, there I need to use two terminals, one to start the backend repl via deps and once to start the frontend build and repl via shadow. So in my mind, these are two completely separate things. Since shadow runs via clojure CLI in this case, as you point out, it seems I can hijack the deps process/repl it started to execute my backend code, which is I assume what is happening. But what if I wanted to use different aliases for shadow and for the backend? Which, I think, may make perfect sense. How would I run these two REPLs/processes from Calva?

pez11:10:36

You can create two workspaces. One in which you work with the front end and one for the backend. See https://calva.io/workspace-layouts/ There is currently a conflict then with both workspaces writing to the same output file, see https://github.com/BetterThanTomorrow/calva/issues/1313

Jakub Holý (HolyJak)11:10:04

I see, thank you! Anyway I will stick to just running "shadow-cljs" since it works and will be simplest for the workshop participants 🙂

pez11:10:06

It is very convenient. I always do it like that.

💯 1
pez19:10:36

Dear Calva friends. A new version is out, v2.0.216. It fixes some issues with inline results display and also sports a shiny new command for quickly creating Rich Comments. • Fix: https://github.com/BetterThanTomorrow/calva/issues/1329 • Fix: https://github.com/BetterThanTomorrow/calva/issues/872https://github.com/BetterThanTomorrow/calva/issues/1324

❤️ 7