Commit | Line | Data |
---|---|---|
2955529b | 1 | NEWS for rsync 3.0.0 (UNRELEASED) |
2dc3db2a | 2 | Protocol: 30 (changed) |
2955529b | 3 | Changes since 2.6.9: |
36f59b58 | 4 | |
ac1541f4 WD |
5 | BUG FIXES: |
6 | ||
3a72cc29 WD |
7 | - Fixed the output of -ii when combined with one of the --*-dest options: |
8 | it now itemizes all the items, not just the changed ones. | |
9 | ||
10 | - Made the output of all file types consistent when using a --*-dest | |
11 | option. Prior versions used to output too many creation events for | |
12 | matching items. | |
b4f02871 | 13 | |
9439c0cb WD |
14 | - The code that waits for a child pid now handles being interrupted by a |
15 | signal. This fixes a problem with the pre-xfer exec function not being | |
16 | able to get the exit status from the script. | |
3481bdf4 | 17 | |
d0d0e41f WD |
18 | - A negated filter rule now sends the negation option when sending the |
19 | filter rules. | |
20 | ||
889ae39d WD |
21 | - Fixed a problem with the --out-format (aka --log-format) option: it |
22 | would output superfluous directory information for a non-daemon rsync. | |
23 | ||
8b584075 WD |
24 | - Fixed a problem with -vv (double --verbose) and --stats when "pushing" |
25 | files (which includes local copies). Version 2.6.9 would complete the | |
26 | copy, but exit with an error when the receiver output its memory stats. | |
27 | ||
99effefc WD |
28 | - If --password-file is used on a non-daemon transfer, rsync now complains |
29 | and exits. This should help users figure out that they can't use this | |
30 | option to control a remote shell's password prompt. | |
e8dad395 | 31 | |
d762dfe9 WD |
32 | - Make sure that directory permissions of a newly-created destination |
33 | directory are handled right when --perms is left off. | |
34 | ||
9c528e29 WD |
35 | - Improved --hard-link so that more corner cases are handled correctly |
36 | when combined with options such as --link-dest and/or --ignore-existing. | |
37 | ||
ac1541f4 WD |
38 | ENHANCEMENTS: |
39 | ||
012d1a01 WD |
40 | - A new incremental-recursion algorithm is now used when rsync is talking |
41 | to another 3.0.0 version. This starts the transfer going more quickly | |
42 | (before all the files have been found), and requires much less memory. | |
43 | See the --recursive option in the manpage for some restrictions. | |
44 | ||
45 | - The default --delete algorithm is now --delete-during when talking to a | |
46 | 3.x rsync. This is a faster scan than using --delete-before (which is | |
9439c0cb WD |
47 | the default when talking to older rsync versions), and is compatible with |
48 | the new incremental recursion mode. | |
012d1a01 | 49 | |
9439c0cb WD |
50 | - Added the --delete-delay option, which is a more efficient way to delete |
51 | files at the end of the transfer without needing a separate delete pass. | |
c7871d98 | 52 | |
348d54d6 WD |
53 | - Added the --acls (-A) option to preserve Access Control Lists. This is |
54 | an improved version of the prior patch that was available. (If you need | |
55 | to have backward compatibility with old, patched versions, the new | |
56 | acls.diff patch that will add that.) | |
57 | ||
58 | - Added the --xattrs (-X) option to preserver extended attributes. This is | |
59 | an improved version of the prior patch that was available. (If you need | |
60 | to have backward compatibility with old, patched versions, the new | |
61 | xattrs.diff patch that will add that.) | |
62 | ||
9439c0cb WD |
63 | - Added the --fake-super option that allows a non-super user to preserve |
64 | all attributes of a file by using a special extended-attribute idiom. | |
65 | There is also an analogous "fake super" option for an rsync daemon. | |
66 | ||
332cf6df | 67 | - Added the --iconv option, which allows rsync to convert filenames from |
0156c784 WD |
68 | one character-set to another during the transfer. The default is to make |
69 | this feature available as long as your system has iconv_open(). If | |
70 | compilation fails, specify --disable-iconv to configure and rebuild. If | |
71 | you want rsync to perform character-set conversions by default, you can | |
72 | specify --enable-iconv=CONVERT_STRING with the default value for the | |
73 | --iconv option that you wish to use. For example, --enable-iconv=. is a | |
74 | good choice. See the rsync man page for an explanation of the --iconv | |
75 | option's settings. | |
332cf6df | 76 | |
9c528e29 WD |
77 | - Added the --skip-compress=LIST option to override of the default list of |
78 | file suffixes that will not be compressed when using --compress. | |
79 | ||
836ce36a WD |
80 | - The --max-delete option now outputs a warning if it skipped any file |
81 | deletions, including a count of how many deletions were skipped. (Older | |
82 | versions just silently stopped deleting things.) | |
83 | ||
84 | - You may specify --max-delete=0 to a 3.0.0 client to request that it warn | |
85 | about any files that it wants to delete without deleting anything. If | |
86 | you're not sure what version the client is, you can use the less-obvious | |
87 | --max-delete=-1, as old and new versions will both treat that as the | |
88 | same request (though older versions don't warn). | |
8adc22e3 | 89 | |
3a5a7de6 | 90 | - The --hard-link option now uses less memory on both the sending and |
9439c0cb WD |
91 | receiving side for all protocol versions. For protocol 30, the use of a |
92 | hashtable on the sending side allows us to more efficiently convey to the | |
93 | receiver what files are linked together. This reduces the amount of data | |
94 | sent over the socket by a considerable margin (rather than adding more | |
95 | data), and limits the in-memory storage of the device+inode information | |
96 | to just the sending side for the new protocol 30, or to the receiving | |
97 | side when speaking an older protocol (note that older rsync versions kept | |
98 | the device+inode information on both sides). | |
3a5a7de6 | 99 | |
0e5dd898 WD |
100 | - A lot more --no-OPTION override options are now supported. |
101 | ||
4968423e WD |
102 | INTERNAL: |
103 | ||
0e5dd898 WD |
104 | - The file-list sorting algorithm now uses a sort that keeps any same- |
105 | named items in the same order as they were specified. This allows | |
106 | rsync to always ensure that the first of the duplicates is the one | |
f45b64d8 WD |
107 | that will be included in the copy. The new sort was also faster |
108 | than the glibc version of qsort() and mergesort() in my testing. | |
0e5dd898 | 109 | |
348d54d6 WD |
110 | - Rsync now supports the transfer of 64-bit timestamps (time_t values). |
111 | ||
112 | - Fixed a build problem with older (2.x) versions of gcc. | |
113 | ||
4d2ea5a8 WD |
114 | - Added some isType() functions that make dealing with signed characters |
115 | easier without forcing variables via casts. | |
116 | ||
3a72cc29 WD |
117 | - Upgraded the included popt version to 1.10.2 and improved its use of |
118 | string-handling functions. | |
418da6d9 | 119 | |
d0d0e41f WD |
120 | - Added missing prototypes for compatibility functions from the lib dir. |
121 | ||
c7871d98 WD |
122 | - Configure determines if iconv() has a const arg, allowing us to avoid a |
123 | compiler warning. | |
124 | ||
125 | - Made the sending of some numbers more efficient for protocol 30. | |
d0d0e41f | 126 | |
d762dfe9 WD |
127 | - Make sure that a daemon process doesn't mind if the client was weird and |
128 | omitted the --server option. | |
129 | ||
d0d0e41f WD |
130 | - Improved the use of "const" on pointers. |
131 | ||
1c4ffe64 WD |
132 | - Improved J.W.'s pool_alloc routines to add a way of freeing older |
133 | sections of a pool's memory. | |
134 | ||
7c329ec7 WD |
135 | DEVELOPER RELATED: |
136 | ||
8798be8e WD |
137 | - Rsync is now licensed under the GPLv3 or later. |
138 | ||
348d54d6 WD |
139 | - Rsync now has a way of handling protocol-version changes during the |
140 | development of a new protocol version. This exchange of sub-version | |
141 | info does not interfere with the {MIN,MAX}_PROTOCOL_VERSION checking | |
142 | in older versions (which would be the case if every minor change made | |
143 | to the protocol in CVS incremented the main PROTOCOL_VERSION value). |