]> Cypherpunks.ru repositories - goredo.git/blob - doc/news.texi
Ability to rely on mtime, instead of ctime
[goredo.git] / doc / news.texi
1 @node News
2 @unnumbered News
3
4 @anchor{Release 1_21_0}
5 @section Release 1.21.0
6 @itemize
7 @item
8     @env{$REDO_INODE_NO_TRUST} is replaced with @env{$REDO_INODE_TRUST}
9     environment variable, that takes either @code{none}, or @code{ctime}
10     (the default one), or @code{mtime} (new one). Check documentation's
11     separate page about that option.
12 @end itemize
13
14 @anchor{Release 1_20_0}
15 @section Release 1.20.0
16 @itemize
17 @item
18     Print warning message if both ifcreate and ifchange records were
19     discovered after the target is done.
20 @end itemize
21
22 @anchor{Release 1_19_0}
23 @section Release 1.19.0
24 @itemize
25 @item
26     Skip target itself, when searching for corresponding @file{.do}
27     file. For example @file{default.do} must use @file{../default.do}
28     instead of the self.
29 @end itemize
30
31 @anchor{Release 1_18_0}
32 @section Release 1.18.0
33 @itemize
34 @item
35     Fix regression of known OODs passing since 1.3.0, that leads to
36     rebuilding of already built targets.
37 @end itemize
38
39 @anchor{Release 1_17_0}
40 @section Release 1.17.0
41 @itemize
42 @item
43     If @command{redo*} process is killed, then it sends @code{SIGTERM}
44     to all his children too, properly terminating the whole job queue.
45 @end itemize
46
47 @anchor{Release 1_16_0}
48 @section Release 1.16.0
49 @itemize
50 @item
51     Unexistent targets are considered always out-of-date, as it should be.
52 @item
53     Do not panic if @env{$REDO_LOGS=1} and we were unable to start the command.
54 @end itemize
55
56 @anchor{Release 1_15_0}
57 @section Release 1.15.0
58 @itemize
59 @item
60     Explicitly check if @code{$1} target is touched and then fail.
61     Previously we check if @code{$1} was only altered.
62 @end itemize
63
64 @anchor{Release 1_14_0}
65 @section Release 1.14.0
66 @itemize
67 @item
68     Fixed @command{redo-ifcreate}'s targets proper relative paths to the target.
69 @end itemize
70
71 @anchor{Release 1_13_0}
72 @section Release 1.13.0
73 @itemize
74 @item
75     Use @file{.log-rec} extension, instead of @file{.log.rec}, that
76     won't collide with already existing @file{.log} and @file{.rec} in
77     @file{.redo} directory.
78 @end itemize
79
80 @anchor{Release 1_12_0}
81 @section Release 1.12.0
82 @itemize
83 @item
84     Fix possible lack of success finish message printing if any of
85     targets fail.
86 @end itemize
87
88 @anchor{Release 1_11_0}
89 @section Release 1.11.0
90 @itemize
91 @item
92     Fix nasty bug with incorrect @file{.redo/tgt.rec} files renaming.
93 @end itemize
94
95 @anchor{Release 1_10_0}
96 @section Release 1.10.0
97 @itemize
98 @item
99     @command{redo-cleanup} now also cleans @file{.redo/tgt.log.rec} files.
100 @item
101     Recursive logs do not require @file{.redo/tgt.rec} existence anymore.
102 @end itemize
103
104 @anchor{Release 1_9_0}
105 @section Release 1.9.0
106 @itemize
107 @item
108     Do not enable command line options not applicable to the command.
109     For example @option{-j} option is only applicable to @command{redo}
110     and @command{redo-ifchange} commands.
111 @item
112     @itemize
113     @item @option{-dry-run} option is renamed to @option{-n}
114     @item @option{-logs} option is renamed to @option{-k}
115     @item @option{-silent} option is renamed to @option{-s}
116     @end itemize
117 @item
118     When @code{stderr} logs are kept, all environment variables, working
119     directory, command line arguments, start/finish times, duration,
120     participated PIDs, return codes are saved in corresponding
121     @file{.redo/tgt.log.rec} file. Some of them can be viewed with
122     @option{-c} option to @command{redo-log}.
123 @item
124     @command{redo-log}'s @option{-r} option allows recursive, indented
125     viewing of the whole redo commands invocations for the given target
126     in serialized way.
127 @end itemize
128
129 @anchor{Release 1_8_0}
130 @section Release 1.8.0
131 @itemize
132 @item
133     Fixed possibly wrong relative path record of the dependency, when
134     redo commands are run in different directory from the @file{.do}.
135 @item
136     Fixed possible failing in @command{redo-sources} if no @file{.dep}
137     is found.
138 @end itemize
139
140 @anchor{Release 1_7_0}
141 @section Release 1.7.0
142 @itemize
143 @item
144     Optional compatibility (through @env{$REDO_MAKE=@{bmake|gmake@}})
145     with either NetBSD's bmake or GNU Make jobserver protocols, being
146     able to tightly integrate @command{goredo} with the @command{make}.
147 @end itemize
148
149 @anchor{Release 1_6_0}
150 @section Release 1.6.0
151 @itemize
152 @item
153     @command{redo-affects} command appeared, that shows all targets that
154     will be affected by changing the specified ones.
155 @end itemize
156
157 @anchor{Release 1_5_0}
158 @section Release 1.5.0
159 @itemize
160 @item
161     @command{redo-ood}, @command{redo-sources} and
162     @command{redo-targets} can optionally take list of targets to apply
163     the command on, to narrow the result.
164 @item
165     @command{redo-sources} mistakenly missed @file{.do} files in the output.
166 @item
167     @command{redo-sources} now recursively searches for all source
168     files, not the "first" depth level ones.
169 @end itemize
170
171 @anchor{Release 1_4_1}
172 @section Release 1.4.1
173 @itemize
174 @item
175     Even more simpler statusline cleaning function.
176 @end itemize
177
178 @anchor{Release 1_4_0}
179 @section Release 1.4.0
180 @itemize
181 @item
182     Fixed proper @option{-xx} and @env{$REDO_TRACE} workability, that
183     previously was not applied to all targets.
184 @item
185     Simpler statusline cleaning function, does not leading to whitespace
186     junk after long lines.
187 @item
188     Updated dependant libraries.
189 @end itemize
190
191 @anchor{Release 1_3_0}
192 @section Release 1.3.0
193 @itemize
194 @item
195     Experimental @command{redo-sources}, @command{redo-targets} and
196     @command{redo-ood} commands.
197 @item
198     Repetitive OOD determination optimization: pass all already known to
199     be OOD targets to redoing targets.
200 @end itemize
201
202 @anchor{Release 1_2_0}
203 @section Release 1.2.0
204 @itemize
205 @item
206     Dependency files @file{.dep} extension changed to @file{.rec}, to
207     reflect its recfile format nature and editors file type better
208     determination.
209 @item
210     Reduce number of file descriptors kept open (1 instead of 4) while
211     waiting for job slot token.
212 @end itemize
213
214 @anchor{Release 1_1_0}
215 @section Release 1.1.0
216 @itemize
217 @item
218     @command{redo-cleanup} has @option{-dry-run} option.
219 @end itemize
220
221 @anchor{Release 1_0_0}
222 @section Release 1.0.0
223 @itemize
224 @item
225     @code{Size} is stored in the state, for faster OOD detection.
226     Previous @command{goredo} state files won't work.
227 @item
228     Setting of @env{$REDO_INODE_NO_TRUST} environment variable brings no
229     trust to file inode's information (except for its size), forcing its
230     checksum checking.
231 @item
232     @command{redo-whichdo} resembles @code{apenwarr/redo}'s one behaviour more.
233 @end itemize
234
235 @anchor{Release 0_12_3}
236 @section Release 0.12.3
237 @itemize
238 @item
239     Use an updated @code{lukechampine.com/blake3} with possibly working
240     arm64 macOS fix.
241 @end itemize
242
243 @anchor{Release 0_12_2}
244 @section Release 0.12.2
245 @itemize
246 @item
247     Try to fix failing @code{lukechampine.com/blake3} on arm64 macOS.
248 @item
249     Fixed tests permissions in the tarball.
250 @end itemize
251
252 @anchor{Release 0_12_1}
253 @section Release 0.12.1
254 @itemize
255 @item
256     Tarball uses @file{vendor} directory without @env{$GOPATH}
257     overriding. @command{goredo} and its dependencies anyway uses Go
258     1.12+ versions, that have @file{vendor}-ing support.
259 @end itemize
260
261 @anchor{Release 0_12_0}
262 @section Release 0.12.0
263 @itemize
264 @item
265     Do not forget to save even output-less target as a dependency.
266 @item
267     @option{-debug} option renamed to shorter @option{-d}.
268 @end itemize
269
270 @anchor{Release 0_11_0}
271 @section Release 0.11.0
272 @itemize
273 @item
274     Previously @env{$REDO_JOBS} overrided even explicitly specified
275     @option{-j} option. Fix that behaviour -- command line options must
276     precede environment variables.
277 @item @url{https://github.com/BLAKE3-team/BLAKE3, BLAKE3} replaces
278     BLAKE2b hashing algorithm for even better performance.
279 @end itemize
280
281 @anchor{Release 0_10_0}
282 @section Release 0.10.0
283 @itemize
284 @item Initial tarballed release.
285 @end itemize