]> Cypherpunks.ru repositories - goredo.git/blob - features.texi
Texinfo-ed documentation and tarballs preparation
[goredo.git] / features.texi
1 @node Features
2 @unnumbered Features
3
4 @itemize
5
6 @item explicit useful and convenient checks from @command{apenwarr/redo}:
7     @itemize
8     @item check that @file{$1} was not touched during .do execution
9     @item check that @file{stdout} and @file{$3} are not written simultaneously
10     @item check that generated target was not modified "externally" outside
11       the redo, preventing its overwriting, but continuing the build
12     @end itemize
13 @item targets, dependency information and their directories are explicitly
14   synced (can be disabled, should work faster)
15 @item file's change is detected by comparing its @code{ctime} and BLAKE3 hash
16 @item files creation is @code{umask}-friendly (unlike @code{mkstemp()}
17     used in @command{redo-c})
18 @item parallel build with jobs limit, optionally in infinite mode
19 @item coloured messages (can be disabled)
20 @item verbose debug messages, including out-of-date determination, PIDs,
21   lock and jobserver acquirings/releases
22 @item displaying of each target's execution time
23 @item each target's @file{stderr} can be prefixed with the PID
24 @item optional statusline with currently running/waiting/done jobs
25 @item target's @file{stderr} can be stored on the disk with
26     @url{http://cr.yp.to/libtai/tai64.html, TAI64N} timestamp prefixes
27     for each line. To convert them to localtime you can use either
28     tai64nlocal utility from @url{http://cr.yp.to/daemontools.html,
29     daemontools}, or similar one:
30     @code{go get go.cypherpunks.ru/tai64n/cmd/tai64nlocal}
31
32 @end itemize