figwheel-main
figwheel-main copied to clipboard
Setting goog.DEBUG to false crashes figwheel-main
I've got the following stacktrace in the browser while starting figwheel
at figwheel$repl$set_log_level (repl.cljc?rel=1582907261370:608)
at figwheel$repl$init_log_level_BANG_ (repl.cljc?rel=1582907261370:617)
at figwheel$repl$connect_STAR_ (repl.cljc?rel=1582907261370:620)
at repl.cljc?rel=1582907261370:629
at Function.cljs$core$IFn$_invoke$arity$variadic (repl.cljc?rel=1582907261370:629)
at figwheel$repl$connect (repl.cljc?rel=1582907261370:627)
at preload.cljs?rel=1582907261426:5
figwheel$repl$set_log_level @ repl.cljc?rel=1582907261370:608
figwheel$repl$init_log_level_BANG_ @ repl.cljc?rel=1582907261370:617
figwheel$repl$connect_STAR_ @ repl.cljc?rel=1582907261370:620
(anonymous) @ repl.cljc?rel=1582907261370:629
(anonymous) @ repl.cljc?rel=1582907261370:629
figwheel$repl$connect @ repl.cljc?rel=1582907261370:627
(anonymous) @ preload.cljs?rel=1582907261426:5
load (async)
(anonymous) @ preload.cljs?rel=1582907261426:5
It is produced by the following piece of code
(if-let [lvl (get log-levels level)]
(do
(.setLevel logger' lvl)
(debug (str "setting log level to " level)))
(glog/warn (str "Log level " (pr-str level) " doesn't exist must be one of "
(pr-str '("severe" "warning" "info" "config" "fine" "finer" "finest"))))))
(defn init-log-level! []
(doseq [logger' (cond-> [logger]
(exists? js/figwheel.core)
(conj js/figwheel.core.logger))]
(set-log-level logger' client-log-level)))
As far as I can see from the browser console - figwheel.core.logger
is null
I did some further exploration. This has happened because I had goog.DEBUG
set to false
in which case goog.log.getLogger
returns null
as per doc https://google.github.io/closure-library/api/goog.log.html#getLogger
getLogger
return depends on goog.log.ENABLED
which depends on goog.debug.LOGGING_ENABLED
which depends on goog.DEBUG