This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-12-16
Channels
- # adventofcode (43)
- # announcements (31)
- # aws (2)
- # babashka (58)
- # babashka-sci-dev (4)
- # beginners (107)
- # calva (11)
- # cider (25)
- # clj-commons (8)
- # clj-kondo (24)
- # clojure (35)
- # clojure-argentina (1)
- # clojure-europe (25)
- # clojure-italy (5)
- # clojure-nl (11)
- # clojure-norway (39)
- # clojure-spec (11)
- # clojure-uk (3)
- # conjure (2)
- # core-async (19)
- # cursive (33)
- # data-science (2)
- # datomic (50)
- # deps-new (1)
- # emacs (3)
- # events (4)
- # figwheel-main (10)
- # fulcro (63)
- # graalvm (7)
- # holy-lambda (17)
- # introduce-yourself (1)
- # java (15)
- # jobs (1)
- # jobs-discuss (7)
- # malli (24)
- # meander (16)
- # nextjournal (19)
- # off-topic (2)
- # polylith (4)
- # portal (10)
- # re-frame (3)
- # reagent (19)
- # reitit (14)
- # releases (2)
- # remote-jobs (1)
- # reveal (19)
- # shadow-cljs (1)
- # sql (21)
- # testing (4)
- # xtdb (22)
Any clues as to why the CIDER repl doesn't include everything that is printed to out? I understand this might be a hairy issue, but it's becoming a problem for us when we no longer see cljs compilation errors. Any help would be appreciated. (more details in thread)
Note how all the [Figwheel] logging is omitted. When the compile is successful, it's merely an inconvenience. But when it hides compilation errors, cue headaches.
Have you checked in the Fig source the difference between strings prefixed with [Figwheel]
, and strings without?
I'll look into that. I'd still like for CIDER to capture everything going to standard out, tho. Maybe that is naive.
that diagnostic might be mistaken though, there's a good chance cider doesn't randomly decide to not relay certain lines from out
In particular, I am confused as to how a process writes to my terminal without printing to out
, I guess.
These same log messages do show up in older versions of figwheel-main. So there's something there. Thanks for pointing me in the right direction.
And with inconsistency came the new theory: It's a timing issue. The log statements appear if I do it manually (ie. slower).
That might well make sense, perhaps the initial cljs compilation errors happen before a connection is established? (Don't quote me on that)
It seems like something along those lines. Maybe the CLJS REPL-starting commands should wait for a connection to be established.
Btw, if in a rush you can always use the cider-connect*
family of functions, i.e. start the repl from the terminal
To summarise: (require 'figwheel.main)
sets up its own logger. If this is done too early, it is set up to print somewhere CIDER doesn't look. Postponing the require to after CIDER is ready fixes all these issues. I would say this is a figwheel issue, not a CIDER-issue. Thanks for sparring with me, @vemv.

Cheers! Is there anything that we could improve cider side? Or should an issue be created in Fig?
A workaround would be postponing the (do (require 'figwheel.main) ...)
during jack-in-clojurescript
, but it does not really solve the issue. If I place (:require [figwheel.main])
somewhere in my project code, that too would require it too soon - with no recourse for CIDER that I can think of. I've asked in the #figwheel-main channel here.
âšī¸ since this week cider.el master (snapshot) includes our latest tech (cider-nrepl, orchard, enrich-classpath) that makes Java jump-to-definition and other similarly core Java features finally possible.
This works for the JDK core classes (`Thread` , File
etc), third-party dependencies, and your own sources alike.
Experience reports are very much welcome, before we cut a stable release.
It's a Lein-only feature for the time being, more context here https://clojurians.slack.com/archives/C6QH853H8/p1639467484052200
To summarise: (require 'figwheel.main)
sets up its own logger. If this is done too early, it is set up to print somewhere CIDER doesn't look. Postponing the require to after CIDER is ready fixes all these issues. I would say this is a figwheel issue, not a CIDER-issue. Thanks for sparring with me, @vemv.
