mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-03-10 02:16:35 -04:00
131 lines
5.6 KiB
Plaintext
131 lines
5.6 KiB
Plaintext
NEWS for rsync 3.0.8 (UNRELEASED)
|
|
Protocol: 30 (unchanged)
|
|
Changes since 3.0.7:
|
|
|
|
BUG FIXES:
|
|
|
|
- Fixed two buffer-overflow issues: one where a directory path that is
|
|
exactly MAXPATHLEN was not handled correctly, and one handling a
|
|
--backup-dir that is extra extra large.
|
|
|
|
- Fixed a data-corruption issue when preserving hard-links without
|
|
preserving file ownership, and doing deletions either before or during
|
|
the transfer. This fixes some assert errors in the hard-linking code,
|
|
and some potential failed checksums (via -c) that should have matched.
|
|
|
|
- Fixed a potential crash when an rsync daemon has a filter/exclude list
|
|
and the transfer is using ACLs or xattrs.
|
|
|
|
- Fixed a hang if a really large file is being processed by an rsync that
|
|
can't handle 64-bit numbers. Rsync will now complain about the file
|
|
being too big and skip it.
|
|
|
|
- For devices and special files, we now avoid gathering useless ACL and/or
|
|
xattr information for files that aren't being copied. (The un-copied
|
|
files are still put into the file list, but there's no need to gather
|
|
data that is not going to be used.) This ensures that if the user uses
|
|
--no-D, that rsync can't possibly complain about being unable to gather
|
|
extended information from special files that are in the file list (but
|
|
not in the transfer).
|
|
|
|
- Properly handle requesting remote filenames that start with a dash. This
|
|
avoids a potential error where a filename could be interpreted as a
|
|
(usually invalid) option.
|
|
|
|
- Fixed a bug in the comparing of upper-case letters in file suffixes for
|
|
--skip-compress.
|
|
|
|
- If an rsync daemon has a module configured without a path setting, rsync
|
|
will now disallow access to that module.
|
|
|
|
- If the destination arg is an empty string, it will be treated as a
|
|
reference to the current directory (as 2.x used to do).
|
|
|
|
- If rsync was compiled with a newer time-setting function (such as
|
|
lutimes), rsync will fall-back to an older function (such as utimes) on a
|
|
system where the newer function is not around. This helps to make the
|
|
rsync binary more portable in mixed-OS-release situations.
|
|
|
|
- Fixed a batch-file writing bug that would not write out the full set of
|
|
compatibility flags that the transfer was using. This fixes a potential
|
|
protocol problem for a batch file that contains a sender-side I/O error:
|
|
it would have been sent in a way that the batch-reader wasn't expecting.
|
|
|
|
- Some improvements to the hard-linking code to ensure that device-number
|
|
hashing is working right, and to supply more information if the hard-link
|
|
code fails.
|
|
|
|
- The --inplace code was improved to not search for an impossible checksum
|
|
position. The quadruple-verbose chunk[N] message will now mention when
|
|
an inplace chunk was handled by a seek rather than a read+write.
|
|
|
|
- If we fail to connect to an rsync daemon, report all the connection
|
|
errors (e.g. IPv4 & IPv6), not just the last one.
|
|
|
|
- Improved ACL mask handling, e.g. for Solaris.
|
|
|
|
- Fixed an issue where an xattr and/or ACL transfer that used an alt-dest
|
|
option (e.g. --link-dest) could output an error trying to itemize the
|
|
changes against the alt-dest directory's xattr/ACL info but was instead
|
|
trying to access the not-yet-existing new destination directory.
|
|
|
|
- Improved xattr system-error messages to mention the full path to the
|
|
file.
|
|
|
|
- The --link-dest checking for identical symlinks now avoids considering
|
|
attribute differences that cannot be changed on the receiver.
|
|
|
|
- Avoid trying to read/write xattrs on certain file types for certain OSes.
|
|
Improved configure to set NO_SYMLINK_XATTRS, NO_DEVICE_XATTRS, and/or
|
|
NO_SPECIAL_XATTRS defines in config.h.
|
|
|
|
- Improved the unsafe-symlink errors messages.
|
|
|
|
- Fixed a bug setting xattrs on new files that aren't user writable.
|
|
|
|
- Fixed a bug with --fake-super when copying files and dirs that aren't
|
|
user writable.
|
|
|
|
- Fixed a bug where a sparse file could have its last sparse block turned
|
|
into a real block when rsync sets the file size (requires ftruncate).
|
|
|
|
- If a temp-file name is too long, rsync now avoids truncating the name in
|
|
the middle of adjacent high-bit characters. This prevents a potential
|
|
filename error if the filesystem doesn't allow a name to contain an
|
|
invalid multi-byte sequence.
|
|
|
|
- If a muli-protocol socket connection fails (i.e., when contacting a
|
|
daemon), we now report all the failures, not just the last one. This
|
|
avoids losing a relevant error (e.g. an IPv4 connection-refused error)
|
|
that happened before the final error (e.g. an IPv6 protocol-not-supported
|
|
error).
|
|
|
|
- Generate a transfer error if we try to call chown with a -1 for a uid or
|
|
a gid (which is not settable).
|
|
|
|
- Fixed a forceful delete of a file with --one-file-system.
|
|
|
|
- Fix the popt arg parsing so that an option that doesn't take an arg will
|
|
reject an attempt to supply one.
|
|
|
|
- A couple minor option tweaks to support/rrsync script, and also some
|
|
regex changes that make vim highlighting happier.
|
|
|
|
- Fixed some issues in the support/mnt-excl script.
|
|
|
|
- A few manpage improvements.
|
|
|
|
ENHANCEMENTS:
|
|
|
|
- Added ".hg/" to the default cvs excludes (see -C & --cvs-exclude).
|
|
|
|
DEVELOPER RELATED:
|
|
|
|
- Use lchmod() whenever it is available (not just on symlinks).
|
|
|
|
- A couple fixes to the socketpair_tcp() routine.
|
|
|
|
- Updated the helper scripts in the packaging subdirectory.
|
|
|
|
- Renamed configure.in to configure.ac.
|