ejholmes / walk

A fast, general purpose, graph based build and task execution utility.
http://ejholmes.github.io/walk/
MIT License
137 stars 1 forks source link

Ability to use a single Walkfile #24

Open ngirard opened 5 years ago

ngirard commented 5 years ago

walk currently forces the user to split the dependency/build rules in multiple Walkfile files.

Could you consider, as a different or alternative mode of operation, that there is one Walkfile per project ?

If I understood correctly, it would solve #20 as a side effect.

Cheers !

ejholmes commented 5 years ago

This is something I've struggled with for a while. On one side, a single Walkfile (like a single Makefile) can be nice for readability, and makes building "generic" targets that work in subdirectories easier (and like you mention, would fix https://github.com/ejholmes/walk/issues/20).

On the other side, it severely limits one of the main design goals of walk, which is composability; you should be able to enter into any directory, and execute walk. This is one of the major benefits of walk over something like make for really large build systems, since you can decompose components into smaller self contained build phases at still keep a relatively small and simple top-level Walkfile.

I'm definitely not opposed to this, but I just haven't come up with a simple design that still maintains the design goals above.