From c7eae79ec3aa8913a18b58bb6435f9fae9fd6867 Mon Sep 17 00:00:00 2001 From: Daniel Compton Date: Thu, 13 Apr 2017 11:19:55 +1200 Subject: [PATCH] Move preload ns to day8.re-frame.trace.preload --- README.md | 6 +++--- src/day8/re_frame/{ => trace}/preload.cljs | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) rename src/day8/re_frame/{ => trace}/preload.cljs (65%) diff --git a/README.md b/README.md index 2721d1b..d0a0b70 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ re-frame has instrumentation to collect traces throughout various important poin There are two requirements to use re-frame-trace: -1. Compile your app with `:closure-defines: "re_frame.trace.trace_enabled_QMARK_" true` and `:preloads [day8.re-frame.preload]`, e.g. +1. Compile your app with `:closure-defines: "re_frame.trace.trace_enabled_QMARK_" true` and `:preloads [day8.re-frame.trace.preload]`, e.g. ```cljs {:builds @@ -24,12 +24,12 @@ There are two requirements to use re-frame-trace: :source-paths ["src" "dev"] :compiler {... :closure-defines {"re_frame.trace.trace_enabled_QMARK_" true} - :preloads [day8.re-frame.preload]}}]} + :preloads [day8.re-frame.trace.preload]}}]} ``` By default, re-frame tracing is compiled out, so it won't impose a performance cost in production. The trade-off here is that you need to explicitly enable it in development. - The [preloads](https://github.com/clojure/clojurescript/wiki/Compiler-Options#preloads) option (`:preloads [day8.re-frame.preload]`) has to be set in order to automatically monkeypatch Reagent to add appropriate lifecycle hooks. Yes this is gross, and yes we will try and make a PR to reagent to add proper hooks, once we know exactly what we need. + The [preloads](https://github.com/clojure/clojurescript/wiki/Compiler-Options#preloads) option (`:preloads [day8.re-frame.trace.preload]`) has to be set in order to automatically monkeypatch Reagent to add appropriate lifecycle hooks. Yes this is gross, and yes we will try and make a PR to reagent to add proper hooks, once we know exactly what we need. 2. In your app's view code, add in `day8.re-frame.trace/devtools` as a sibling to the root application view. For example, if your app looks like this: ```cljs diff --git a/src/day8/re_frame/preload.cljs b/src/day8/re_frame/trace/preload.cljs similarity index 65% rename from src/day8/re_frame/preload.cljs rename to src/day8/re_frame/trace/preload.cljs index 4e56937..3612eed 100644 --- a/src/day8/re_frame/preload.cljs +++ b/src/day8/re_frame/trace/preload.cljs @@ -1,7 +1,7 @@ -(ns day8.re-frame.preload +(ns day8.re-frame.trace.preload (:require [day8.re-frame.trace :as trace])) ;; Use this namespace with the :preloads compiler option to perform the necessary setup for enabling tracing: -;; {:compiler {:preloads [day8.re-frame.preload] ...}} +;; {:compiler {:preloads [day8.re-frame.trace.preload] ...}} (trace/init-tracing!)