@node News
+@cindex news
@unnumbered News
+@anchor{Release 2_1_0}
+@section Release 2.1.0
+@itemize
+@item
+ Mistakenly path to @file{.do} file was not absolute and OS can
+ refuse to run it because it is not in @env{$PATH}.
+@end itemize
+
+@anchor{Release 2_0_0}
+@section Release 2.0.0
+@itemize
+@item
+Huge quantity of performance optimisations.
+
+@item
+Fixed possible unexpected lock file closing.
+
+@item
+When resulting target has the same contents, it does not replace already
+existing one. That was done previously. But now it also copies the file's
+mode flags to the target (for example making it executable).
+
+@item
+If @command{redo-*} command runs under control of another (top-level)
+redo, then it does not parse the flags as options and treat each
+argument as a target, allowing passing the targets with dashes in the
+beginning.
+
+@item
+Prevented possible concurrent stderr writing by multiple running
+targets.
+
+@item
+@command{redo-depfix} command now always rewrites dependency files and
+calculates checksums of the files.
+
+@item
+Own binary format is used for dependency files (@file{.dep}), instead of
+recfile (@file{.rec}) one. It is several times smaller and much faster
+to parse. You must run @command{redo-depfix} to convert all existing
+@file{.redo/*.rec} files to that binary format.
+
+@item
+@command{redo-dep2rec} command appeared, that can convert @file{.dep} to
+recfile on stdout.
+
+@end itemize
+
+@anchor{Release 1_32_0}
+@section Release 1.32.0
+@itemize
+@item
+ Omit printing of the @code{resource deadlock avoided} warning when
+ trying to take the lock.
+@end itemize
+
+@anchor{Release 1_31_0}
+@section Release 1.31.0
+@itemize
+@item
+ Fixed possible race when target can be built more than once.
+@item
+ Print out finished targets much more quickly.
+@end itemize
+
+@anchor{Release 1_30_0}
+@section Release 1.30.0
+@itemize
+@item
+ Fixed wrong OOD-cache value of source file dependency.
+ Targets could be rebuilt without any reason.
+@end itemize
+
+@anchor{Release 1_29_0}
+@section Release 1.29.0
+@itemize
+@item
+ Fix possible error when two always-ed targets are run simultaneously.
+@item
+ Updated dependant libraries.
+@end itemize
+
+@anchor{Release 1_28_0}
+@section Release 1.28.0
+@itemize
+@item
+ Do not remove @file{.lock} files, that leads to possible races
+ between running targets. Although @command{nncp-cleanup lock}
+ can be used to cleanup.
+@item
+ Updated dependant libraries.
+@end itemize
+
+@anchor{Release 1_27_1}
+@section Release 1.27.1
+@itemize
+@item
+ Fixed lack of @file{.redo.}-prefix in temporary file names.
+@end itemize
+
+@anchor{Release 1_27_0}
+@section Release 1.27.0
+@itemize
+@item
+ Improved out-of-date check and @file{.do} files search performance,
+ because of caching their results.
+@end itemize
+
+@anchor{Release 1_26_0}
+@section Release 1.26.0
+@itemize
+@item
+ Debug output contained colour-related attribute even if
+ @env{$NO_COLOR=1} was set.
+@item
+ Updated dependant libraries.
+@end itemize
+
+@anchor{Release 1_25_0}
+@section Release 1.25.0
+@itemize
+@item
+ Target's lock file requires a token from the jobserver now. So
+ amount of simultaneously opened lock files depends on job slots
+ available.
+@end itemize
+
+@anchor{Release 1_24_0}
+@section Release 1.24.0
+@itemize
+@item
+ @command{redo-cleanup tmp} also removes temporarily (@code{$3})
+ created directories.
+@end itemize
+
+@anchor{Release 1_23_0}
+@section Release 1.23.0
+@itemize
+@item
+ @command{redo-ifchange}'s @option{-f} option forces each target
+ rebuilding. Comparing to @command{redo}, it will parallelize the
+ process.
+@item
+ Inode's number is also stored as dependency information, just to
+ prevent possible @code{ctime} collision of two files.
+@item
+ Performance optimization: do not use target's temporary output file
+ at all, if its hash equals to already existing target's one. Just
+ touch existing target file instead.
+@end itemize
+
@anchor{Release 1_22_0}
@section Release 1.22.0
@itemize
corresponding targets has the same content but different
@code{ctime}/@code{mtime} values and rewrites dependencies with that
updated inode information.
+@item
+ With @env{$REDO_STOP_IF_MODIFIED=1} environment variable redo will
+ stop and fail if it meet externally modified file. By default user
+ is only warned about it, but building continues for convenience.
@end itemize
@anchor{Release 1_21_0}