boot-cljs
boot-cljs copied to clipboard
Alternative integration with other tasks, without .cljs.edn
Currently boot-reload and boot-cljs-repl use .cljs.edn
files to tell boot-cljs about namespaces that have to be included in the build. Without .cljs.edn
file Boot-cljs falls back to compiling EVERY .cljs
file in the fileset. This is usually bad choice.
I think this could be solved by adding another way for other tasks to contribute to Boot-cljs, in addition to the file. Fileset metadata (meta
) should be easy way to solve this (Clojure metadata on the fileset object, not Boot Fileset metadata, which is tied to files). This will need some testing...
Things to consider:
- How will this work with several cljs builds in the pipeline?
- What if
reload
is only enabled for some of the builds?
Also, can :ids
be replaced with something else? Maybe the ID could be set manually instead of using the path of the file. That would allow tasks to communicate without .cljs.edn files, and would be even simpler than using the paths.
Agree that adding meta
with clear semantic on what is merged into what, can be a good option (actually the only one left :smile:). About build ids, probably some sort of sanity check should make sure we build and reload the same things?