REDO-STAMP(1)
π¦ REDO-STAMP(1) π¦
okay bestie, welcome to the General Commands Manual page for redo-stamp β itβs giving build-tool bestie energy, and the whole point is: feed it data on standard input and it stamps that data as a dependency of the current redo(1) target. π
π NAME π
redo-stamp β rebuild target files depending on data given on standard input. literally the whole name-and-one-liner, periodt. β¨
πΈ SYNOPSIS πΈ
[command] | redo-stamp
β¨ DESCRIPTION β¨
okay so redo(1) is the tool for building files and rebuilding them whenever any of their dependencies changed. π
redo-stamp, when itβs invoked from a dofile, adds a dependency of the current redo(1) target on the data given on standard input. so yes: stdin data becomes build-dependency material, no cap. π
If the data given on standard input to redo-stamp has not changed since the last build, the current redo(1) target is not rebuilt and is marked as up to date. cute, efficient, slay. π¦
And if you need to make sure redo-stamp actually checks the current targetβs validity? You can use redo-always(1) to mark the current target as always out of date. thatβs the move. π₯
π EXAMPLES π
consider these two files, all.do and b.do β build-script besties:
all.do
#!/bin/sh
redo-ifchange b
b.do
#!/bin/sh
redo-always
echo 'input a line of text:' >&2
line | redo-stamp
date +%s
Invoking redo(1) in a directory with these files will build a file named b containing a timestamp. β°
The next time redo(1) is invoked, it will only rebuild b if the output of line(1) changed since the last build. You can verify that by invoking redo(1) repeatedly and examining the timestamp b after each invocation, then changing the input to line(1), invoking redo(1) again, and examining the timestamp again. see? main character build behavior. π«
π§ HISTORY π§
redo-stamp was designed by Avery Pennarun and implemented by Γlla Chiana Moskopp. iconic collaboration, honestly. π«Ά
π AUTHOR π
redo-stamp and this man page were written by Γlla Chiana Moskopp. periodt. π
π COPYRIGHT π
Copyright Β© 2014-2017 Γlla Chiana Moskopp. License AGPLv3+: GNU Affero GPL version 3 or later <http://www.gnu.org/licenses/agpl-3.0.html>. This is free software: you are free to create and redistribute it. There is NO WARRANTY, to the extent permitted by law. β οΈ
β SEE ALSO β
redo(1)redo-always(1)redo-dot(1)redo-ifchange(1)redo-ifcreate(1)redo-ood(1)redo-sources(1)redo-targets(1)
π BUGS π
None so far. genuinely none on the board, bestie. π
sign-off, bestie: that was REDO-STAMP(1) from the General Commands Manual π¦ the page doesnβt list a separate version or date, so no cap, weβre not inventing one β bye! π
β¨
π¦ where this page comes from
- arch rolling: redo-sh 4.0.7-1 Β· AGPL-3.0-or-later
- nixos 26.05: redo-sh 4.0.7
- nixpkgs unstable: redo-sh 4.0.7
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms