             [cljs.core.async :as async]
             [cljs.js :as cljs]
             [shadow.xhr :as xhr]
+            [shadow.js]
             [cognitect.transit :as transit]
             [cljs.env :as env]))
 

  (let [ns
        (if macros
          (symbol (str name "$macros"))
          name)]

    ;; FIXME: needs to ensure that deps are loaded first
    (go (let [ana (<! (load-analyzer-data ns))
              js (<! (load-js ns))]
          (js/console.log "boot/load" name macros ns ana (count js))
          (when ana
            (swap! cljs/*loaded* conj ns)
            (cb {:lang :js :source js :cache ana})))
        )))
  (xhr/chan :GET path nil {:body-only true
                           :transform identity}))

(defonce empty-result-helper
  (doto (async/chan)
    (async/close!)))

