DJB Redo
Created on 2020-11-15T16:46:58-06:00
DJB Redo is the original spec for "redo." But you will need apenwarr/redo to actually use it.
- redo: always rebuild a target
- redo-ifchange: rebuild target if out of date
- Build to new temp file and replace: otherwise the file on the system is trunacated, out of date, incorrect. On system failure it looks like the unfinished file still exists.
- Use normal binaries to talk to the system: redo-ifchange is just an executable run from shell scripts.
- Let shell scripts handle any special logic: they run redo-ifchange and friends as needed.
- Put environment configs in files, add redo-ifchange before importing them.