Made the list of exclude/include changes more prominent and clear.
[rsync/rsync.git] / NEWS
1 NEWS for rsync version 2.5.7
2 Protocol: 27 (changed)
3 Changes since version 2.5.6:
4
5   ENHANCEMENTS:
6
7     * Added --files-from, --no-relative, --no-implied-dirs, and --from0.
8       Note that --from0 affects the line-ending character for all the
9       --*-from options. (Wayne Davison)
10
11     * Length of csum2 is now per-file starting with protocol verison
12       27. (J.W. Schultz)
13
14     * Per-file dynamic block size is now sqrt(file length).
15       The per-file checksum size is determined according
16       to an algorythm provided by Donovan Baarda which
17       reduces the probability of rsync algorithm
18       corrupting data and falling back using the whole md4
19       checksums. (J.W. Schultz, Donovan Baarda)
20
21     * The --stats option no longer includes the (debug) malloc summary
22       unless the verbose option was specified at least twice.
23
24   BUG FIXES:
25
26     * Fixed several exclude/include matching bugs when using wild-cards.
27       This has a several user-visible effects, all of which make the
28       matching more consistent and intuitive.  This should hopefully not
29       cause anyone problems since it makes the matching work more like
30       what people are expecting. (Wayne Davison)
31
32       - "**/foo" now matches at the base of the transfer (i.e. /foo).
33
34       - An non-anchored wildcard term floats to match beyond the base of
35         the transfer.  E.g. "CVS/R*" matches at the end of the path,
36         just like the non-wildcard term "CVS/Root" does.
37
38       - Including a "**" in the match term causes it to be matched
39         against the entire path, not just the name portion, even if
40         there aren't any interior slashes in the term.  E.g. "foo**bar"
41         would exclude "/path/foo-bar" (just like before) as well as
42         "/foo-path/baz-bar" (for instance).
43
44     * The exclude list specified in the daemon's config file is now
45       properly applied to the pulled items no matter how deep the
46       user's file args are in the source tree.  (Wayne Davison)
47
48     * For protocol version >= 27, mdfour_tail() is called when the
49       block size (including checksum_seed) is a multiple of 64.
50       Previously it was not called, giving the wrong MD4 checksum.
51       (Craig Barratt)
52   
53     * For protocol version >= 27, a 64 bit bit counter is used in
54       mdfour.c as required by the RFC.  Previously only a 32 bit bit
55       counter was used, causing incorrect MD4 file checksums for
56       file sizes >= 512MB - 4.  (Craig Barratt)
57
58     * Fixed a crash bug when interacting with older rsync versions and
59       multiple files of the same name are destined for the same dir.
60       (Wayne Davison)
61
62     * Keep tmp names from overflowing MAXPATHLEN.
63
64     * Make --link-dest honor the absence of -p, -o, and -g.
65
66     * Made rsync treat a trailing slash in the destination in a more
67       consistent manner.
68
69     * Fixed file I/O error detection.  (John Van Essen)
70
71     * Fixed a compression (-z) bug when syncing a mostly-matching file
72       that contains already-compressed data.  (Yasuoka Masahiko and
73       Wayne Davison)
74
75   INTERNAL:
76
77     * Eliminated vestigial support for old versions that we stopped
78       supporting. (J.W. Schultz)
79
80     * Simplified some of the option-parsing code. (Wayne Davison)
81
82     * Some cleanup made to the exclude code, as well as some new
83       defines added to enhance readability. (Wayne Davison)
84
85
86 NEWS for rsync version 2.5.6, aka the dwd-between-jobs release
87 Protocol: 26 (unchanged)
88 Changes since version 2.5.5:
89
90   ENHANCEMENTS:
91
92     * The --delete-after option now implies --delete.  (Wayne Davison)
93
94     * The --suffix option can now be used with --backup-dir.  (Michael
95       Zimmerman)
96
97     * Combining "::" syntax with the -rsh/-e option now uses the
98       specified remote-shell as a transport to talk to a (newly-spawned)
99       server-daemon.  This allows someone to use daemon features, such
100       as modules, over a secure protocol, such as ssh.  (JD Paul)
101
102     * The rsync:// syntax for daemon connections is now accepted in the
103       destination field.
104
105     * If the file name given to --include-from or --exclude-from is "-",
106       rsync will read from standard input.  (J.W. Schultz)
107
108     * New option --link-dest which is like --compare-dest except that
109       unchanged files are hard-linked in to the destination directory.
110       (J.W. Schultz)
111
112     * Don't report an error if an excluded file disappears during an
113       rsync run.  (Eugene Chupriyanov and Bo Kersey)
114
115     * Added .svn to --cvs-exclude list to support subversion.  (Jon
116       Middleton)
117
118     * Properly support IPv6 addresses in the rsyncd.conf "hosts allow"
119       and "hosts deny" fields.  (Hideaki Yoshifuji)
120
121     * Changed exclude file handling to permit DOS or MAC style line
122       terminations.  (J.W. Schultz)
123
124     * Ignore errors from chmod when -p/-a/--preserve-perms is not set.
125       (Dave Dykstra)
126
127   BUG FIXES:
128
129     * Fix "forward name lookup failed" errors on AIX 4.3.3.  (John
130       L. Allen, Martin Pool)
131
132     * Generate each file's rolling-checksum data as we send it, not
133       in a separate (memory-eating) pass before hand.  This prevents
134       timeout errors on really large files. (Stefan Nehlsen)
135
136     * Fix compilation on Tru64.  (Albert Chin, Zoong Pham)
137
138     * Better handling of some client-server errors.  (Martin Pool)
139
140     * Fixed a crash that would occur when sending a list of files that
141       contains a duplicate name (if it sorts to the end of the file
142       list) and using --delete.  (Wayne Davison)
143
144     * Fixed the file-name duplicate-removal code when dealing with multiple
145       dups in a row. (Wayne Davison)
146
147     * Fixed a bug that caused rsync to lose the exit status of its child
148       processes and sometimes return an exit code of 0 instead of showing
149       an error.  (David R. Staples, Dave Dykstra)
150
151     * Fixed bug in --copy-unsafe-links that caused it to be completely
152       broken.  (Dave Dykstra)
153
154     * Prevent infinite recursion in cleanup code under certain circumstances.
155       (Sviatoslav Sviridov and Marc Espie)
156
157     * Fixed a bug that prevented rsync from creating intervening directories
158       when --relative-paths/-R is set.  (Craig Barratt)
159
160     * Prevent "Connection reset by peer" messages from Cygwin. (Randy O'Meara)
161
162   INTERNAL:
163
164     * Many code cleanups and improved internal documentation.  (Martin
165       Pool, Nelson Beebe)
166
167     * Portability fixes. (Dave Dykstra and Wayne Davison)
168
169     * More test cases.  (Martin Pool)
170
171     * Some test-case fixes.  (Brian Poole, Wayne Davison)
172
173     * Updated included popt to the latest vendor drop, version 1.6.4.
174       (Jos Backus)
175
176     * Updated config.guess and config.sub to latest versions; this
177       means rsync should build on more platforms.  (Paul Green)