This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-09-28
Channels
- # babashka (48)
- # babashka-sci-dev (7)
- # beginners (123)
- # calva (32)
- # cider (5)
- # clara (20)
- # clj-kondo (3)
- # cljdoc (2)
- # cljs-dev (1)
- # clojure (113)
- # clojure-dev (5)
- # clojure-europe (65)
- # clojure-norway (23)
- # clojure-spec (4)
- # clojure-uk (4)
- # clojurescript (33)
- # cursive (3)
- # datalevin (39)
- # datomic (2)
- # emacs (14)
- # events (1)
- # fulcro (10)
- # graphql (5)
- # humbleui (2)
- # integrant (4)
- # introduce-yourself (3)
- # jobs (1)
- # jobs-discuss (11)
- # kaocha (26)
- # leiningen (6)
- # malli (24)
- # nbb (2)
- # off-topic (69)
- # pathom (77)
- # podcasts-discuss (2)
- # reitit (8)
- # remote-jobs (2)
- # sci (17)
- # scittle (8)
- # squint (1)
- # xtdb (43)
I have an interesting problem with a custom repl sequence in https://github.com/holyjak/fulcro-intro-wshop/blob/main/.vscode/settings.json#L12, namely its afterCLJReplJackInCode. It seems to work fine locally but fails in Gitpod (see the button https://github.com/holyjak/fulcro-intro-wshop#running-the-app-with-in-browser-vs-code-and-backend-via-gitpod). I don't see any details other then a line that the afterCLJReplJackInCode failed. Any tips on troubleshooting? 🙏
It is quite strange... As a ways of troubleshooting, what I usually do is to try the commands at the REPL prompt, or in a rich comment. Doing that with this project, I notice something super weird. The REPL prompt is a ClojureScript REPL, regardless if I toggle it to be a Clojure REPL. I am guessing that that is why the evaluation fails. If I load server.clj
, the REPL window prompt gets to be a proper Clojure REPL, and then I can evaluate the afterCLJReplJackInCode
forms.
I can't figure out why this would happen on Gitpod... For now I think the workaround could be to put the forms in a Rich comment in server.clj
and instruct users to load that file and then evaluate the forms from there.
This is notoriously hard to debug. And now when I tried it a second time the afterCLJReplJackInCode
evaluation succeeded... Smells like a race condition.
Thank you very much for looking into this! I have the impression that 1st time it worked for me so a race condition sounds very plausible.
Question two: what is the "defun" in "Calva: Evaluate Top Level Form (defun)"?
I've always thought it's weird to have (defun)
in there. Just ignore it (it's a Lisp-ism). The command is just "Evaluate Top Level Form".
Yes, a Lisp-ism. It's so that Emacs folks should find it when they search the command palette.
@pez: I am loking at rich4clojure and planning to go through the exercise. I noticed some PR's there that I can review for you to merge (if you like). I woul also made a PR to upgrade RCF library to a release + I think we should add the user ns for that to work OOTB: https://github.com/hyperfiddle/rcf#usage > >
(ns user ; user ns is loaded by REPL startup
> (:require [hyperfiddle.rcf]))
>
> (hyperfiddle.rcf/enable!)
As for the other PRs. I have been a bad maintainer... And thing is that I generate the problems from another repo, so it needs to be fixed there. I think that repo might still be private, because very untidy... Let me come back about it when I have checked it out some.
I reviewed all of them and I think they are ok to merge, except the fibo PR, which I am not sure
Yeah. it is not that they are not good to merge. It is that the changes will be overwritten when I regenerate the problems.
For the record, I like the change a lot. Just that it will be confusing if we leave the repl.clj file, and the. instructions to use it, in there.
yeah, I tried it now and evaluated repl and it enabled tests. I can move repl.clj -> user.cljC and mybe it will work. WDYT?
I think that if it works with the user.clj in the PR. Then just removing dev/repl.clj (together with the instructions to load it), should do.
There might be something needed to be done with the Gitpod setup as well, but probably not. I haven't checked, so testing your PR with Gitpod is probably a good idea.
Gitpod is basically VS Code running in the browser. Try the URL: https://gitpod.io/#https://github.com/PEZ/Rich4Clojure (Then that needs to be adjusted to run from your PR, not completely sure how to do it.)
> repl.clj has some CLJS stuff. do we need to keep that ?! I don't think so. I still think just removing the file should work. (Afaiu the PR)
And I just tried with https://gitpod.io/#https://github.com/ieugen/rich4clojure/tree/enable-rcf Works like a charm. 🎉