Use a proper tree data structure to prune redundant tasks. For example, when task `build` depends on `test` and users invoke `tinyrick build test`, then the code inside of `test` should only be executed once.
Use a proper tree data structure to prune redundant tasks.
For example, when task
builddepends ontestand users invoketinyrick build test, then the code inside oftestshould only be executed once.