+ - Made hard-links work with symlinks and devices again.
+
+ - If the sender gets an early EOF reading a source file, we propagate this
+ error to the receiver so that it can discard the file and try requesting
+ it again (which is the existing behavior for other kinds of read errors).
+
+ - If a device-file/special-file changes permissions, rsync now updates the
+ permissions without recreating the file.
+
+ - If the user specifies a remote-host for both the source and destination,
+ we now output a syntax error rather than trying to open the destination
+ hostspec as a filename.
+
+ - When --inplace creates a new destination file, rsync now creates it with
+ permissions 0600 instead of 0000 -- this makes restarting possible when
+ the transfer gets interrupted in the middle of sending a new file.
+
+ - Reject the combination of --inplace and --sparse since the sparse-output
+ algorithm doesn't work when overwriting existing data.
+
+ - Fixed the directory name in the error that is output when pop_dir()
+ fails.
+
+ - Really fixed the parsing of a "!" entry in .cvsignore files this time.
+
+ - If the generator gets a stat() error on a file, output it (this used to
+ require at least -vv for the error to be seen).
+
+ - If waitpid() fails or the child rsync didn't exit cleanly, we now handle
+ the exit status properly and generate a better error.
+
+ - Fixed some glitches in the double-verbose output when using --copy-dest,
+ --link-dest, or --compare-dest.