Hi,
This is something that I am struggling for some time and I still don't know
how to solve it.
For dynamic reloading in web development there is this common pattern:
(def app (app-handler
[home-routes user-routes base-routes]
:middleware (load-middleware)
:ring-defaults (mk-defaults false)
:access-rules []
:formats [:json-kw :edn :transit-json]))
(defn get-handler []
(-> #'app
(wrap-file "resources")
(wrap-file-info)))
This works nice, but does not give me components. With components I would
do something like this:
(defn app [] (app-handler
[home-routes user-routes base-routes]
:middleware (load-middleware)
:ring-defaults (mk-defaults false)
:access-rules []
:formats [:json-kw :edn :transit-json]))
(defn dev-system []
(component/system-map
:web (new-web-server (env :http-port) (app)))
Reloading all components takes a bit more time and ceremony than just
having it all reloaded by itself. (I don't wanna say it takes long, but for
me this are 2 keystrokes more + ~1 second wait time versus no keystrokes
and almost no wait time with dynamic var reloading).
Is there a way to combine both approaches to get the best of both worlds?
Thanks,
Sven
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.