apenwarr-redo/bin/all.do
Avery Pennarun 63230a1ae3 builder.py: atomically replace the log for a given target.
Previously we were truncating the log if it existed.  This would cause
redo-log to produce invalid output if you had the following (admittedly
rare) sequence in a single session:
- start building X
- redo-log starts showing the log for X
- finish building X
- redo-log has not finished showing the log for X yet
- start building X again for some reason
- redo-log sees a truncated logfile.

Now, redo-log can finish reading the original file (which no longer has
a filename since it was overwritten) while the new file is being
created.
2019-03-02 04:05:36 -05:00

3 lines
96 B
Text

exec >&2
redo-ifchange ../redo/version/all ../redo/py ../redo/sh list
xargs redo-ifchange <list