This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-05-07
Channels
- # announcements (7)
- # beginners (123)
- # calva (27)
- # cider (23)
- # clj-kondo (4)
- # cljsrn (7)
- # clojure (29)
- # clojure-dev (7)
- # clojure-europe (4)
- # clojure-italy (4)
- # clojure-nl (16)
- # clojure-uk (47)
- # clojurescript (1)
- # code-reviews (4)
- # cursive (4)
- # data-science (4)
- # datomic (30)
- # duct (4)
- # fulcro (4)
- # graphql (1)
- # kaocha (4)
- # mount (8)
- # off-topic (13)
- # overtone (1)
- # pedestal (2)
- # planck (3)
- # re-frame (9)
- # reagent (50)
- # ring (12)
- # shadow-cljs (38)
- # spacemacs (5)
- # testing (13)
- # tools-deps (55)
- # vim (30)
- # xtdb (13)
Hi all
Is mount/start
asynchronous?
I have an error in mount/start
ing one component and I try start the Sentry component first, but no errors are logged to it…
(defn -main [& args]
(mount/start #'app.config/env)
(mount/start #'app.core/sentry)
(log/error "This error prints! But not to Sentry, while it should be initialized above")
(System/exit 1)
(.addShutdownHook (Runtime/getRuntime) (Thread. stop-app)))
So logging works and we see the log/error
, but Sentry is not initialized still somehowOkay db in Luminus is loaded before
So makes sense, only don’t know why it is required first
It was because I included a dynamic variable in a require with :refer [*db*]
, it works when I use :alias db
and then db/*db*
in the code
Mount takes the order of the compiler and the Clojure compiler probably gets explicit refers always, and refers via an alias in another way