Change the handling of circular buffers to not waste 4 bytes
[rsync/rsync.git] / NEWS
... / ...
CommitLineData
1NEWS for rsync 3.1.0 (UNRELEASED)
2Protocol: 31 (changed)
3Changes since 3.0.4:
4
5 OUTPUT CHANGES:
6
7 - Output numbers in 3-digit groups by default (e.g. 1,234,567). See the
8 --human-readable option for a way to turn it off. See also the daemon's
9 "log format" parameter and related command-line options (including
10 --out-format) for a modifier that can be used to request digit-grouping
11 or human-readable output in log escapes. (Note that log output is
12 unchanged by default.) When some level of human-readable output is
13 enabled, the column width for the file size in the --list-only output
14 is increased.
15
16 - The output of the --progress option has changed: the string "xfer" was
17 shortened to "xfr", and the string "to-check" was shortened to "to-chk",
18 both designed to make room for the (by default) wider display of file
19 size numbers without making the total line-length longer. Also, when
20 incremental recursion is enabled, the string "ir-chk" will be used
21 instead of "to-chk" up until the incremental-recursion scan is done,
22 letting you know that the value to check and the total value will still
23 be increasing as new files are found.
24
25 - Enhanced the --stats output: 1) to mention how many files were created
26 (protocol >= 28), 2) to mention how many files were deleted (new for
27 protocol 31, but only output when --delete is in effect), and 3) to
28 follow the file-count, created-count, and deleted-count with a subcount
29 list broken down by type.
30
31 BUG FIXES:
32
33 - Fixed a bug in incremental recursion transfers where an I/O error might
34 not get noticed in time for the receiving side to disable deletions
35 (requires protocol 31).
36
37 - Changed the way --progress overwrites its prior output in order to make
38 it nearly impossible for the progress to get overwritten by an error.
39
40 - An absolute-path filter rule (i.e. with a '/' modifier) no longer loses
41 its modifier when sending the filter rules to the remote rsync.
42
43 - Fixed some rare bugs in --iconv processing that might cause a multibyte
44 character to get translated incorrectly.
45
46 - Improved abnormal-exit error messages. This should help the client side
47 to receive errors from the server when it is exiting abnormally, and
48 should also avoid dying with an "connection unexpectedly closed" exit
49 when the closed connection is really expected.
50
51 ENHANCEMENTS:
52
53 - Added the --remote-option=OPT (-M OPT) command-line option that is useful
54 for things like sending a remote --log-file=FILE or --fake-super option.
55
56 - Added the --info=FLAGS and --debug=FLAGS options to allow finer-grained
57 control over what is output. Added an extra type of --progress output
58 using --info=progress2.
59
60 - The --msgs2stderr option can help with debugging rsync by allowing the
61 debug messages to get output to stderr rather than travel via the socket
62 protocol.
63
64 - Added the --delete-missing-args and --ignore-missing-args options to
65 either delete or ignore user-specified files on the receiver that are
66 missing on the sender (normally the absence of user-specified files
67 generates an error).
68
69 - Added a "T" (terabyte) category to the --human-readable size suffixes.
70
71 - Added the --usermap/--groupmap/--chown options for manipulating file
72 ownership during the copy.
73
74 - Added the "%C" escape to the log-output handling, which will output the
75 MD5 checksum of any transferred file, or all files if --checksum was
76 specified (when protocol 30 or above is in effect).
77
78 - Added the "reverse lookup" parameter to the rsync daemon config file to
79 allow reverse-DNS lookups to be disabled.
80
81 - Added a way for more than one group to be specified in the daemon's
82 config file, including a way to specify that you want all of the
83 specified user's groups without having to name them. Also changed the
84 daemon to complain about an inability to set explicitly-specified uid/gid
85 values, even when not run by a super-user.
86
87 - Added a way to reference environment variables in a daemon's config file
88 (using %VAR% references).
89
90 - When replacing a non-dir with a symlink/hard-link/device/special-file,
91 the update should now be done in an atomic manner.
92
93 - Fixed a free of the wrong pointer in uncache_tmp_xattrs() (which only
94 sometimes affects an --xattr transfer when --backup is used).
95
96 - When backing up a file, try to hard-link the file into place so that the
97 upcoming replacement of the destination file will be atomic.
98
99 - Added the ability to synchronize nano-second modified times.
100
101 - Added a few more default suffixes for the "dont compress" settings.
102
103 - Added some Solaris xattr code.
104
105 EXTRAS:
106
107 - Added an "instant-rsyncd" script to the support directory, which makes
108 it easy to configure a simple rsync daemon in the current directory.
109
110 - Added the "mapfrom" and "mapto" scripts to the support directory, which
111 makes it easier to do user/group mapping in a local transfer based on
112 passwd/group files from another machine.
113
114 INTERNAL:
115
116 - The I/O code was rewritten to be simpler and do bigger buffered reads
117 over the socket. The I/O between the receiver and the generator was
118 changed to be standard multiplexed-I/O (like that over the socket).
119
120 - The sender tries to use any dead time while the generator is looking for
121 files to transfer in order to do sender-side directory scanning in a more
122 parallel manner.
123
124 - A daemon can now inform a client about a daemon-configured timeout value
125 so that the client can assist in the keep-alive activity (protocol 31).
126
127 - The filter code received some refactoring to make it more extendable, to
128 read better, and do better sanity checking.
129
130 - Really big numbers are now output using our own big-num routine rather
131 than casting them to a double and using a %.0f conversion.
132
133 - The pool_alloc library has received some minor improvements in alignment
134 handling.
135
136 - Added init_stat_x() function to avoid duplication of acl/xattr init code.
137
138 DEVELOPER RELATED:
139
140 - Added more conditional debug output.