-NEWS for rsync 2.6.6 (UNRELEASED)
-Protocol: 29 (unchanged)
-Changes since 2.6.5:
+NEWS for rsync 3.0.3 (UNRELEASED)
+Protocol: 30 (unchanged)
+Changes since 3.0.2:
BUG FIXES:
- - The setting of flist->high in clean_flist() was wrong for an empty list.
- This could cause flist_find() to crash in certain rare circumstances
- (e.g. if just the right directory setup was around when --fuzzy was
- combined with --link-dest).
+ - Fixed a wildcard matching problem in the daemon when a module has
+ "use chroot" enabled.
- - The outputting of hard-linked files when verbosity was > 1 was not right:
- without -i it would output the name of each hard-linked file as though
- it had been changed (it now outputs a "is hard linked" message for the
- file); with -i it would output all dots for the unchanged attributes of
- a hard-link (it now changes those dots to spaces, as is done for other
- totally unchanged items).
+ - Fixed a crash bug in the hard-link code.
- - When backing up a changed symlink or device, get rid of any old backup
- item so that we don't get an already-exists error.
+ - Fixed the sending of xattr directory information when the code finds a
+ --link-dest or --copy-dest directory with unchanged xattrs -- the
+ destination directory now gets these unchanged xattrs properly applied.
- - A couple places that were comparing a local and a remote modification-
- time were not honoring the --modify-window option.
+ - Fixed an xattr-sending glitch that could cause an "Internal abbrev"
+ error.
- - Fixed a really old, minor bug that could cause rsync to warn about being
- unable to mkdir() a path that ends in "/." because it just created the
- directory (required --relative, --no-implied-dirs, a source path that
- ended in either a trailing slash or a trailing "/.", and a non-existing
- destination dir to tickle the bug in a recent version).
+ - Fixed the combination of --xattrs and --backup.
+
+ - The generator no longer allows a '.' dir to be excluded by a daemon-
+ exclude rule.
+
+ - Fixed deletion handling when copying a single, empty directory (with no
+ files) to a differently named, non-existent directory.
+
+ - Fixed the conversion of spaces into dashes in the %M log escape.
+
+ - Fixed several places in the code that were not returning the right
+ errno when a function failed.
+
+ - Fixed the backing up of a device or special file into a backup dir.
+
+ - Moved the setting of the socket options prior to the connect().
+
+ - If rsync exits in the middle of a --progress output, it now outputs a
+ newline to help prevent the progress line from being overwritten.
+
+ - Fixed a problem with how a destination path with a trailing slash or
+ a trailing dot-dir was compared against the daemon excludes.
+
+ - Fixed the sending of large (size > 16GB) files when talking to an older
+ rsync (protocols < 30): we now use a compatible block size limit.
+
+ - If a file's length is so huge that we overflow a checksum buffer count
+ (i.e. several hundred TB), warn the user and avoid sending an invalid
+ checksum struct over the wire.
+
+ - If a source arg is excluded, --relative no longer adds the excluded
+ arg's implied dirs to the transfer. This fix also made the exclude
+ check happen in the better place in the sending code.
+
+ - Use the overflow_exit() function for overflows, not out_of_memory().
+
+ - Improved the code to better handle a system that has only 32-bit file
+ offsets.
ENHANCEMENTS:
- - Made the "max verbosity" setting in the rsyncd.conf file settable on a
- per-module basis (which now matches the documentation).
+ - The rsyncd.conf manpage now consistently refers to the parameters in
+ the daemon config file as "parameters".
+
+ - The description of the --inplace option was improved.
+
+ DEVELOPER RELATED:
- - The support/rrsync script has been upgraded to verify the args of options
- that take them (instead of rejecting any such options). The script was
- also changed to try to be more secure and to fix a problem in the parsing
- of a pull operation that has multiple sources.
+ - Fixed a testcase failure if the tests are run as root and made some
+ compatibility improvements.
- BUILD CHANGES:
+ - Improved the daemon tests, including checking module comments, the
+ listing of files, and the ensuring that daemon excludes can't affect
+ a dot-dir arg.
- - Made configure define NOBODY_USER (currently hard-wired to "nobody") and
- NOBODY_GROUP (set to either "nobody" or "nogroup" depending on what we
- find in the /etc/group file).
+ - Improved some build rules for those that build in a separate directory
+ from the source, including better install rules for the man pages, and
+ the fixing of a proto.h-tstamp rule that could make the binaries get
+ rebuild without cause.
- - Added a test to the test suite, itemized.test, that tests the output of
- -i (log-format w/%i) and some double-verbose messages.
+ - Improved the testsuite to work around a problem with some utilities
+ (e.g. cp -p & touch -r) rounding sub-second timestamps.
+ - Ensure that the early patches don't cause any generated-file hunks to
+ bleed-over into patches that follow.