On some occasions when using a figwheel CLJS repl with sidecare, emacs, and piggieback I see some mysterious behavior.
I try to observe state held in an atom by just evaluating it to let it print. However, it prints nil as if nothing is there. However, if I start prodding at it with details, like keys
, count
, etc, there are results. There is actually something there. I can see it in the running web page in the browser too. It is as if the CLJS repl has two versions of state and it is able to print both depending on what operations you do.
Anything similar ever happen to anyone?
Example would be like:
(-> @my-state :something :foo) ;;= nil
(-> @my-state :something :foo keys) ;;= (:a :b :c)
when no reloading has happened and the browser continues to show me the state with the keys
I also think what comes with this behavior is the repl having a name showing up like
v------- app!{:conn 2} -------
Which isn’t there typicallyFigwheel + cider is dramatically slow for me. Could you please give me some directions to investigate and solve that issue?
@achikin same problem here...
connecting via lein repl :connect
is also quite slow
however, starting via lein figwheel
it is quite fast
yeah, starting a fresh nrepl session:
$ lein repl
user=> (fig-start)
user=> (cljs-repl)
cljs.user=> (println "hello")
"hello" takes about ~3ish seconds to print@mikerod I think I've deduced that the app!{:conn 2}
message shows up when you have two browser windows open pointing to the figwheel page