Every build, even with zero changes, calls shutil.rmtree() on the output directory and rewrites every file.
For large projects, this causes:
- Unnecessary disk I/O
- Pain for incremental tooling: file watchers and others tools see every file as "modified" and do unnecessary work
- Output speed being slower
Every build, even with zero changes, calls
shutil.rmtree()on the output directory and rewrites every file.For large projects, this causes: