- - Restore the list-clearing behavior of "!" in a .cvsignore file (2.6.3
- was only treating it as a special token in an rsync include/exclude
- file).
-
- - The combination of --verbose and --dry-run now mentions the full list
- of changes that would be output without --dry-run.
-
- - Avoid a mkdir warning when removing a directory in the destination
- that already exists in the --backup-dir.
-
- - An OS that has a binary mode for its files (such as cygwin) needed
- setmode(fd, O_BINARY) called on the temp-file we opened with
- mkstemp(). (Fix derived from the cygwin's 2.6.3 rsync package.)
-
- - Fixed a potential hang when verbosity is high, the client side is
- the sender, and the file-list is large.
-
- - Fixed a potential protocol-corrupting bug where the generator
- might accidentally merge a message from the receiver into the
- middle of a multiplexed packet of data that is waiting for the
- socket to allow it to flush.
-
- - We now check if the OS doesn't support using mknod() for creating
- FIFOs and sockets, and compile-in using mkfifo() and socket() when
- necessary.
-
- - Fixed an off-by-one error in the handling of --max-delete=N.
-
- - One place in the code wasn't checking if fork() failed.
-
- - The "ignore nonreadable" daemon parameter used to erroneously affect
- symlinks that pointed to a non-existent file. This has been fixed.
-
- - If the OS does not have lchown() and a chown() of a symlink will
- affect the referent of a symlink (as it should), we no longer try
- to set the user and group of a symlink.
-
- - The generator now properly runs the hard-link loop and the dir-time
- rewriting loop after we're sure that the redo phase is complete.
-
- - When --backup was specified with --partial-dir=DIR (where DIR is a
- relative path), the backup code was erroneously trying to backup a
- file that was put into the partial-dir.
-
- - If a file gets resent in a single transfer and the --backup option is
- enabled along with --inplace, rsync no longer performs a duplicate
- backup (it used to overwrite the first backup with the failed file).
-
- - One call to flush_write_file() was not being checked for an error.
-
- - The --no-relative option was not being sent from the client to a
- server sender.
-
- - If an rsync daemon specified "dont compress = ..." for a file and the
- client tried to specify --compress, the libz code was not handling a
- compression level of 0 properly. This could cause a transfer failure
- if the block-size for a file was large enough (e.g. rsync might have
- exited with an error for large files).
-
- - Fixed a bug that would sometimes surface when using --compress and
- sending a file with a block-size larger than 64K (either manually
- specified, or computed due to the file being really large). Prior
- versions of rsync would sometimes fail to decompress the data
- properly, and thus the transferred file would fail its verification.
-
- - If a daemon can't open the specified log file (i.e. syslog is not
- being used), die without crashing. We also output an error about
- the failure on stderr (which will only be seen if --no-detach was
- specified).
-
- - A local transfer no longer duplicates all its include/exclude options
- (since the forked process already has a copy of the exclude list,
- there's no need to send them a set of duplicates).
-
- - When --progress is specified, the output of items that the generator
- is creating (e.g. dirs, symlinks) is now integrated into the progress
- output without overlapping it. (Requires protocol 29.)
-
- - When --timeout is specified, lulls that occur in the transfer while
- the generator is doing work that does not generate socket traffic
- (looking for changed files, deleting files, doing directory-time
- touch-ups, etc.) will cause a new keep-alive packet to be sent that
- should keep the transfer going as long as the generator continues to
- make progress. (Requires protocol 29.)
-
- - The stat size of a device is not added to the total file size of the
- items in the transfer since the size might be undefined on some OSes.
-
- - Fixed a problem with refused-option messages sometimes not making it
- back to the client side when a remote --files-from was in effect and
- the daemon was the receiver.
-
- - The --compare-dest option was not updating a file that differred in
- (the preserved) attributes from the version in the compare-dest DIR.
-
- - When rsync is copying files into a write-protected directory, fixed
- the changed-report output for the directory so that we don't report
- an identical directory as changed.