Most major task runners have the concept of target dependencies. It would be great if we supported this via an annotation. All it is is a list of methods to call before the actual target method is called.
We already have an implicit dependency: init(), how about adding a depends annotation
This will call build(), then compile() and then if success, call all()