Make leiningens checkout feature work with rings wrap-reload
Using leiningens checkout feature is pretty cool. You can split your application into some modules and still retain the development workflow.
However, when you are running a ring application the hot code reloading wont work out of the box. For this you have to add the extra source paths to the wrap-reload method (generated in core.clj when using luminus).
Mine looks like this:
(if (dev? args) (reload/wrap-reload app {:dirs [„src“ „checkouts/subproject/src“]}) app)
In the :dirs value you can add us much paths as you want and the ring middleware will keep watching the changes there.