-NEWS for rsync 3.0.3 (UNRELEASED)
+NEWS for rsync 3.0.4 (UNRELEASED)
Protocol: 30 (unchanged)
-Changes since 3.0.2:
+Changes since 3.0.3:
BUG FIXES:
- - Fixed a wildcard matching problem in the daemon when a module has
- "use chroot" enabled.
+ - Fixed a bug in the hard-linking code where it would sometimes try to
+ allocate 0 bytes of memory (which fails on some OSes, such as AIX).
- - Fixed a crash bug in the hard-link code.
+ - Fixed the hard-linking of files from a device that has a device number
+ of 0 (which seems to be a common device number on NetBSD).
- - 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.
+ - Fixed the handling of a --partial-dir that cannot be created. This
+ particularly impacts the --delay-updates option (since the files cannot
+ be delayed without a partial-dir), and was potentially destructive if
+ the --remove-source-files was also specified.
- - Fixed an xattr-sending glitch that could cause an "Internal abbrev"
- error.
+ - Fixed a couple issues in the --fake-super handling of xattrs when the
+ destination files have root-level attributes (e.g. selinux values) that
+ a non-root copy can't affect.
- - Fixed the combination of --xattrs and --backup.
+ - Improved the keep-alive check in the generator to fire consistently in
+ incremental-recursion mode when --timeout is enabled.
- - The generator no longer allows a '.' dir to be excluded by a daemon-
- exclude rule.
+ - The --iconv option now converts the content of a symlink too, instead
+ of leaving it in the wrong character-set (requires 3.0.4 on both sides
+ of the transfer).
- - Fixed deletion handling when copying a single, empty directory (with no
- files) to a differently named, non-existent directory.
+ - When using --iconv, if a filename fails to convert on the receiving side,
+ this no longer makes deletions in the root-dir of the transfer fail
+ silently (the user should see the warning about deletions being disabled
+ due to IO error when --ignore-errors was not specified).
- - Fixed the conversion of spaces into dashes in the %M log escape.
+ - When using --iconv, if a server-side receiver can't convert a filename,
+ it now outputs the name back to the client without mangling the charset.
- - Fixed several places in the code that were not returning the right
- errno when a function failed.
+ - Fixed a bug where --delete-during could delete in a directory before it
+ noticed that the sending side sent an I/O error for that directory.
- - Fixed the backing up of a device or special file into a backup dir.
+ - Fixed a potential alignment issue in the IRIX ACL code when allocating
+ the initial "struct acl" object. Also, cast mallocs to avoid warnings.
- - 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.
+ - Changed some errors that were going to stdout to go to stderr.
ENHANCEMENTS:
- - 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.
+ - Rsync will avoid sending an -e option to the server if an older protocol
+ is requested (and thus the option would not be useful). This lets the
+ user specify the --protocol=29 option to access an overly-restrictive
+ server that is rejecting the protocol-30 use of -e to the server.
DEVELOPER RELATED:
- - Fixed a testcase failure if the tests are run as root and made some
- compatibility improvements.
-
- - 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.
-
- - 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.
-
- - Improved the testsuite to work around a problem with some utilities
- (e.g. cp -p & touch -r) rounding sub-second timestamps.
+ - The Makefile will not halt for just a timestamp change on the Makefile
+ or the configure files, only for actual changes in content.
- - Ensure that the early patches don't cause any generated-file hunks to
- bleed-over into patches that follow.
+ - Enhanced the release scripts to be able to handle a branch release.