This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-04-16
Channels
- # announcements (1)
- # babashka (23)
- # beginners (157)
- # boot (3)
- # calva (2)
- # chlorine-clover (12)
- # cider (14)
- # clara (5)
- # clj-kondo (6)
- # cljs-dev (61)
- # cljsrn (30)
- # clojure (65)
- # clojure-argentina (8)
- # clojure-berlin (2)
- # clojure-europe (13)
- # clojure-france (9)
- # clojure-germany (2)
- # clojure-italy (4)
- # clojure-nl (6)
- # clojure-portugal (2)
- # clojure-romania (2)
- # clojure-uk (76)
- # clojurescript (56)
- # conjure (52)
- # core-async (37)
- # datomic (209)
- # duct (17)
- # emacs (17)
- # exercism (1)
- # fulcro (26)
- # graalvm (5)
- # instaparse (2)
- # jackdaw (9)
- # jobs-discuss (27)
- # joker (2)
- # juxt (23)
- # leiningen (4)
- # malli (11)
- # midje (3)
- # pedestal (2)
- # quil (2)
- # re-frame (78)
- # reagent (8)
- # reitit (18)
- # remote-jobs (1)
- # ring (2)
- # ring-swagger (1)
- # shadow-cljs (29)
- # sql (11)
- # test-check (12)
- # tools-deps (5)
- # xtdb (16)
- # yada (4)
I'd love pretty printing, I think that may be more of an nREPL thing than a Conjure thing at his point, I'll have a google!
Maybe use something like this? https://github.com/venantius/ultra
I'm trying to see if CIDER provides good pretty print out of the box :thinking_face: also on the fence about using CIDER, it does provide a bunch of good stuff. I could lean on it for autocompletion etc, so if you didn't have it you could still eval you just lose some features.
I think so? I still don't understand orchard, is it just a dep you add to your project then all clients use it?
I'm hoping to find something that's well maintained and shared for this sort of thing before I implement it myself again.
my understanding is that orchard is a library(?) of logic extracted out of cider so that it can be used in other contexts
Yep, I think it'll be cool to lean on all of that work. I just worry some people will be turned off by that. I've been burned by CIDER versions drifting before where fireplace or emacs wouldn't work on different versions. So my colleague and I had to keep fiddling to keep our different environments working.
And yeah, I think pretty print will be super easy with CIDER but also nREPL should get a pprint wrapper soon that makes it really easy for me.
imo, it's good to have the option to easily "not load stuff into my running process" especially when investigating issues in one's codebase.
Or I try to do my own stuff entirely and just sideload dependencies. Although sideloading might not work with babashka nREPL? (@borkdude)
@olical I haven't looked into side-loading operations. I'm a bit unclear about what it's all about
Ah okay, no problem! It's basically a way to say "hey, if someone tries to load a class and you don't have it, ask me" then the client can provide the required classes. This is all to do with JVM class loaders, it'll just be something clients will have to be careful with since some nREPL servers won't have sideloading.
babashka is a closed world when it comes to classes, you can't dynamically add classes
I was trying to be clever with "test this namespace" and have it add a -test
suffix to the namespace if there wasn't one or take it away if there was. So the -test
and non -test
variants of the namespace would both be run. This causes a bunch of issues in CLJS land which sucks. I'll keep it simple and only run the tests for the namespace you're in for now.
Yep, done like that for now. tn is namespace, tN is alternate namespace. It'll either remove the -test suffix from your current one and do that or the other way around.
Next step is "eval the test my cursor is on", but I might refactor how results are displayed from these actions first :thinking_face:
https://asciinema.org/a/JhC1t9tAptOFmifRTuRAlIM3T CLJS is probably wonky but you can now test the form under your cursor!
I think I want to test ClojureScript support against Shadow or Figwheel's CLJS nREPL instead of the piggieback I have right now. I think they're far more representative of how people actually work on CLJS.
Cool, pretty printing via clojure.pprint working! And you can turn it off with :ConjureConfig clojure.nrepl/eval.pretty-print? false
if you so choose.

So unless anyone has any major gripes with them, testing is done (for now) and so is pretty printing.
Namespace refreshing and completion may require an optional CIDER dep but we'll see :thinking_face: