Make idev, hlink and file_struct + strings use allocation
[rsync/rsync.git] / OLDNEWS
1 NEWS for rsync 2.5.7 (4 Dec 2003)
2 Protocol: 26 (unchanged)
3 Changes since 2.5.6:
4
5   SECURITY FIXES:
6
7     * Fix buffer handling bugs.  (Andrew Tridgell, Martin Pool, Paul
8       Russell, Andrea Barisani)
9
10 \f
11 NEWS for rsync 2.5.6, aka "the dwd-between-jobs release" (26 Jan 2003)
12 Protocol: 26 (unchanged)
13 Changes since 2.5.5:
14
15   ENHANCEMENTS:
16
17     * The --delete-after option now implies --delete.  (Wayne Davison)
18
19     * The --suffix option can now be used with --backup-dir.  (Michael
20       Zimmerman)
21
22     * Combining "::" syntax with the -rsh/-e option now uses the
23       specified remote-shell as a transport to talk to a (newly-spawned)
24       server-daemon.  This allows someone to use daemon features, such
25       as modules, over a secure protocol, such as ssh.  (JD Paul)
26
27     * The rsync:// syntax for daemon connections is now accepted in the
28       destination field.
29
30     * If the file name given to --include-from or --exclude-from is "-",
31       rsync will read from standard input.  (J.W. Schultz)
32
33     * New option --link-dest which is like --compare-dest except that
34       unchanged files are hard-linked in to the destination directory.
35       (J.W. Schultz)
36
37     * Don't report an error if an excluded file disappears during an
38       rsync run.  (Eugene Chupriyanov and Bo Kersey)
39
40     * Added .svn to --cvs-exclude list to support subversion.  (Jon
41       Middleton)
42
43     * Properly support IPv6 addresses in the rsyncd.conf "hosts allow"
44       and "hosts deny" fields.  (Hideaki Yoshifuji)
45
46     * Changed exclude file handling to permit DOS or MAC style line
47       terminations.  (J.W. Schultz)
48
49     * Ignore errors from chmod when -p/-a/--preserve-perms is not set.
50       (Dave Dykstra)
51
52   BUG FIXES:
53
54     * Fix "forward name lookup failed" errors on AIX 4.3.3.  (John
55       L. Allen, Martin Pool)
56
57     * Generate each file's rolling-checksum data as we send it, not
58       in a separate (memory-eating) pass before hand.  This prevents
59       timeout errors on really large files. (Stefan Nehlsen)
60
61     * Fix compilation on Tru64.  (Albert Chin, Zoong Pham)
62
63     * Better handling of some client-server errors.  (Martin Pool)
64
65     * Fixed a crash that would occur when sending a list of files that
66       contains a duplicate name (if it sorts to the end of the file
67       list) and using --delete.  (Wayne Davison)
68
69     * Fixed the file-name duplicate-removal code when dealing with multiple
70       dups in a row. (Wayne Davison)
71
72     * Fixed a bug that caused rsync to lose the exit status of its child
73       processes and sometimes return an exit code of 0 instead of showing
74       an error.  (David R. Staples, Dave Dykstra)
75
76     * Fixed bug in --copy-unsafe-links that caused it to be completely
77       broken.  (Dave Dykstra)
78
79     * Prevent infinite recursion in cleanup code under certain circumstances.
80       (Sviatoslav Sviridov and Marc Espie)
81
82     * Fixed a bug that prevented rsync from creating intervening directories
83       when --relative-paths/-R is set.  (Craig Barratt)
84
85     * Prevent "Connection reset by peer" messages from Cygwin. (Randy O'Meara)
86
87   INTERNAL:
88
89     * Many code cleanups and improved internal documentation.  (Martin
90       Pool, Nelson Beebe)
91
92     * Portability fixes. (Dave Dykstra and Wayne Davison)
93
94     * More test cases.  (Martin Pool)
95
96     * Some test-case fixes.  (Brian Poole, Wayne Davison)
97
98     * Updated included popt to the latest vendor drop, version 1.6.4.
99       (Jos Backus)
100
101     * Updated config.guess and config.sub to latest versions; this
102       means rsync should build on more platforms.  (Paul Green)
103
104 \f
105 NEWS for rsync 2.5.5, aka Snowy River (2 Apr 2002)
106 Protocol: 26 (unchanged)
107 Changes since 2.5.4:
108
109   ENHANCEMENTS:
110
111     * With --progress, when a transfer is complete show the time taken;
112       otherwise show expected time to complete. (Cameron Simpson)
113
114     * Make "make install-strip" works properly, and "make install"
115       accepts a DESTDIR variable for help in building binary packages.
116       (Peter Breitenlohner, Greg Louis)
117
118     * If configured with --enable-maintainer-mode, then on receipt of
119       a fatal signal rsync will try to open an xterm running gdb,
120       similarly to Samba's "panic action" or GNOME's bug-buddy.
121       (Martin Pool)
122
123
124   BUG FIXES:
125
126     * Fix situation where failure to fork (e.g. because out of process
127       slots) would cause rsync to kill all processes owned by the
128       current user.  Yes, really!  (Paul Haas, Martin Pool)
129
130     * Fix test suite on Solaris.  (Jos Backus, Martin Pool)
131
132     * Fix minor memory leak in socket code.  (Dave Dykstra, Martin
133       Pool.)
134
135     * Fix --whole-file problem that caused it to be the default even
136       for remote connections.  (Martin Pool, Frank Schulz)
137
138     * Work around bug in Mac OS X mkdir(2), which cannot handle
139       trailing slashes.
140       <http://www.opensource.apple.com/bugs/X/BSD%20Kernel/2734739.html>
141       (Martin Pool)
142
143     * Improved network error handling.  (Greg A. Woods)
144
145 \f
146 NEWS for rsync 2.5.4, aka "Imitation lizard skin" (13 Mar 2002)
147 Protocol: 26 (unchanged)
148 Changes since 2.5.3:
149
150   BUG FIXES:
151
152     * Additional fix for zlib double-free bug.  (Martin Pool, Andrew
153       Tridgell) (CVE CAN-2002-0059)
154
155   ENHANCEMENTS:
156
157     * Merge in changes from zlib 1.1.3 to zlib 1.1.4.  (Jos Backus)
158       (Note that rsync still uses a custom version of zlib; you can
159       not just link against a system library.  See zlib/README.rsync)
160
161     * Additional test cases for --compress.  (Martin Pool)
162
163 \f
164 NEWS for rsync 2.5.3, aka "Happy 26" (11 Mar 2002)
165 Protocol: 26 (unchanged)
166 Changes since 2.5.2:
167
168   SECURITY FIXES:
169
170     * Make sure that supplementary groups are removed from a server
171       process after changing uid and gid. (Ethan Benson) (Debian bug
172       #132272, CVE CAN-2002-0080)
173
174   BUG FIXES:
175
176     * Fix zlib double-free bug.  (Owen Taylor, Mark J Cox) (CVE
177       CAN-2002-0059)
178
179     * Fixed problem that in many cases caused the error message
180         unexpected read size of 0 in map_ptr
181       and resulted in the wrong data being copied.
182
183     * Fixed compilation errors on some systems caused by the use of
184       "unsigned int64" in rsync.h.
185
186     * Fixed problem on systems such as Sunos4 that do not support realloc
187       on a NULL pointer; error was "out of memory in flist_expand".
188
189     * Fix for rsync server processes hanging around after the client
190       unexpectedly disconnects.  (Colin Walters) (Debian bug #128632)
191
192     * Cope with BSD systems on which mkdir() will not accept a trailing
193       slash.
194
195   ENHANCEMENTS:
196
197     * Merge in changes from zlib 1.1.2 to zlib 1.1.3.  (Note that
198       rsync still uses a custom version of zlib; you can not just link
199       against a system library.  See zlib/README.rsync)
200
201     * Command to initiate connections is only shown with -vv, rather
202       than -v as in 2.5.2.  Output from plain -v is more similar to
203       what was historically used so as not to break scripts that try
204       to parse the output.
205
206     * Added --no-whole-file and --no-blocking-io options (Dave Dykstra)
207
208     * Made the --write-batch and --read-batch options actually work
209       and added documentation in the man page (Jos Backus)
210
211     * If the daemon is unable to fork a child to accept a connection,
212       print an error message.  (Colin Walters)
213
214 \f
215 NEWS for rsync 2.5.2 (26 Jan 2002)
216 Protocol: 26 (changed)
217 Changes since 2.5.1:
218
219   SECURITY FIXES:
220
221     * Signedness security patch from Sebastian Krahmer
222       <krahmer@suse.de> -- in some cases we were not sufficiently
223       careful about reading integers from the network.
224
225   BUG FIXES:
226
227     * Fix possible string mangling in log files.
228
229     * Fix for setting local address of outgoing sockets.
230
231     * Better handling of hardlinks and devices on platforms with
232       64-bit dev_t or ino_t.
233
234     * Name resolution on machines supporting IPv6 is improved.
235
236     * Fix for device nodes.  (dann frazier)   (Debian #129135)
237
238   ENHANCEMENTS:
239
240     * With -v, rsync now shows the command used to initiate an ssh/rsh
241       connection.
242
243     * --statistics now shows memory heap usage on platforms that
244       support mallinfo().
245
246     * "The Ted T'so school of program optimization": make progress
247       visible and people will think it's faster.  (With --progress,
248       rsync will show you how many files it has seen as it builds the
249       file_list, giving some indication that it has not hung.)
250
251     * Improvements to batch mode support.  This is still experimental
252       but testing would be welcome.   (Jos Backus)
253
254     * New --ignore-existing option, patch previously distributed with
255       Vipul's Razor.  (Debian #124286)
256
257 \f
258 NEWS for rsync 2.5.1 (3 Jan 2002)
259 Protocol: 25 (unchanged)
260 Changes since 2.5.0:
261
262   BUG FIXES:
263
264     * Fix for segfault in --daemon mode configuration parser.  (Paul
265       Mackerras)
266
267     * Correct string<->address parsing for both IPv4 and 6.
268       (YOSHIFUJI Hideaki, SUMIKAWA Munechika and Jun-ichiro "itojun"
269       Hagino)
270
271     * Various fixes for IPv6 support.  (Dave Dykstra)
272
273     * rsync.1 typo fix.  (Matt Kraai)
274
275     * Test suite typo fixes.  (Tom Schmidt)
276
277     * rsync.1 grammar and clarity improvements.  (Edward
278       Welbourne)
279
280     * Correction to ./configure tests for inet_ntop.  (Jeff Garzik)
281
282   ENHANCEMENTS:
283
284     * --progress and -P now show estimated data transfer rate (in a
285       multiple of bytes/s) and estimated time to completion.  (Rik
286       Faith)
287
288     * --no-detach option, required to run as a W32 service and also
289       useful when running on Unix under daemontools, AIX's SRC, or a
290       debugger.  (Max Bowsher, Jos Backus)
291
292     * Clearer error messages for some conditions.
293
294 \f
295 NEWS for rsync 2.5.0 (30 Nov 2001)
296 Protocol: 25 (changed)
297 Changes since 2.4.6:
298
299   ANNOUNCEMENTS
300
301     * Martin Pool <mbp@samba.org> is now a co-maintainer.
302
303   NEW FEATURES
304
305     * Support for LSB-compliant packaging <http://www.linuxbase.org/>
306
307     * Shell wildcards are allowed in "auth users" lines.
308
309     * Merged UNC rsync+ patch to support creation of standalone patch
310       sets.  By Bert J. Dempsey and Debra Weiss, updated by Jos
311       Backus.  <http://www.ils.unc.edu/i2dsi/unc_rsync+.html>
312
313     * IPv6 support based on a patch from KAME.net, on systems
314       including modern versions of Linux, Solaris, and HP-UX.  Also
315       includes IPv6 compatibility functions for old OSs by the
316       Internet Software Consortium, Paul Vixie, the OpenSSH
317       portability project, and OpenBSD.
318
319   ENHANCEMENTS
320
321     * Include/exclude cluestick: with -vv, print out whether files are
322       included or excluded and why.
323
324     * Many error messages have more friendly explanations and more
325       details.
326
327     * Manual page improvements plus scanty protocol documentation.
328
329     * When running as --daemon in the background and using a "log
330       file" rsyncd.conf directive, close the log file every time it is
331       open when going to sleep on the socket.  This allows the log
332       file to get cleaned out by another process.
333
334     * Change to using libpopt rather than getopt for processing
335       options.  This makes the code cleaner and the behaviour more
336       consistent across platforms.  popt is included and built if not
337       installed on the platform.
338
339     * More details in --version, including note about whether 64-bit
340       files, symlinks and hardlinks are supported.
341
342     * MD4 code may use less CPU cycles.
343
344     * Use mkstemp on systems where it is secure.  If we use mktemp,
345       explain that we do it in a secure way.
346
347     * --whole-file is the default when source and target are on the
348         local machine.
349
350   BUG FIXES:
351
352     * Fix for various bugs causing rsync to hang.
353
354     * Attempt to fix Large File Summit support on AIX.
355
356     * Attempt to fix error handling lockup bug.
357
358     * Give a non-0 exit code if *any* of the files we have been asked
359       to transfer fail to transfer.
360
361     * For log messages containing ridiculously long strings that might
362       overflow a buffer rsync no longer aborts, but rather prints an
363       ellipsis at the end of the string.  (Patch from Ed Santiago.)
364
365   PLATFORMS:
366
367     * Improved support for UNICOS (tested on Cray T3E and Cray SV1)
368
369     * autoconf2.52 (or later) is now required to rebuild the autoconf
370       scripts.  It is not required to simply build rsync.
371
372     * Platforms thought to work in this release:
373
374                 Cray SV1 UNICOS 10.0.0.8 cc
375                 Debian Linux 2.2 UltraSparc gcc
376                 Debian Linux testing/unstable ARM gcc
377                 FreeBSD 3.3-RELEASE i386 cc
378                 FreeBSD 4.1.1-RELEASE i386 cc
379                 FreeBSD 4.3-STABLE i386 cc
380                 HP PA-RISC HP-UX 10.20 gcc
381                 HP PA-RISC HP-UX 11.11 cc
382                 IRIX 6.5 MIPS cc
383                 IRIX 6.5 MIPS gcc
384                 Mac OS X PPC (--disable-ipv6) cc
385                 NetBSD 1.5 i386 gcc
386                 NetBSD Current i386 cc
387                 OpenBSD 2.5 Sparc gcc
388                 OpenBSD 2.9 i386 cc
389                 OpenBSD Current i386 cc
390                 RedHat 6.2 i386 gcc
391                 RedHat 6.2 i386 insure++
392                 RedHat 7.0 i386 gcc
393                 RedHat 7.1 i386 (Kernel 2.4.10) gcc
394                 Slackware 8.0 i686 (Kernel 2.4.10)
395                 Solaris 8 UltraSparc cc
396                 Solaris 8 UltraSparc gcc
397                 Solaris 8 i386 gcc
398                 SuSE 7.1 i386 gcc2.95.2
399                 SuSE 7.1 ppc gcc2.95.2
400                 i386-pc-sco3.2v5.0.5 cc
401                 i386-pc-sco3.2v5.0.5 gcc
402                 powerpc-ibm-aix4.3.3.0 cc
403                 i686-unknown-sysv5UnixWare7.1.0 gcc
404                 i686-unknown-sysv5UnixWare7.1.0 cc
405
406   TESTING:
407
408     * The existing test.sh script by Phil Hands has been merged into a
409       test framework that works from both "make check" and the Samba
410       build farm.
411 \f
412 Partial Protocol History
413         RELEASE DATE    VER.    DATE OF COMMIT  PROTOCOL
414         01 Jan 2004     2.6.0   10 Apr 2003     27 (MAX=40)
415         04 Dec 2003     2.5.7                   26
416         26 Jan 2003     2.5.6                   26
417         02 Apr 2002     2.5.5                   26
418         13 Mar 2002     2.5.4                   26
419         11 Mar 2002     2.5.3                   26
420         26 Jan 2002     2.5.2   11 Jan 2002     26
421         03 Jan 2002     2.5.1                   25
422         30 Nov 2001     2.5.0   23 Aug 2001     25
423         06 Sep 2000     2.4.6                   24
424         19 Aug 2000     2.4.5                   24
425         29 Jul 2000     2.4.4                   24
426         09 Apr 2000     2.4.3                   24
427         30 Mar 2000     2.4.2                   24
428         30 Jan 2000     2.4.1   29 Jan 2000     24
429         29 Jan 2000     2.4.0   28 Jan 2000     23
430         25 Jan 2000     2.3.3   23 Jan 2000     22
431         08 Nov 1999     2.3.2   26 Jun 1999     21
432         06 Apr 1999     2.3.1                   20
433         15 Mar 1999     2.3.0   15 Mar 1999     20
434         25 Nov 1998     2.2.1                   19
435         03 Nov 1998     2.2.0                   19
436         09 Sep 1998     2.1.1                   19
437         20 Jul 1998     2.1.0                   19
438         17 Jul 1998     2.0.19                  19
439         18 Jun 1998     2.0.17                  19
440         01 Jun 1998     2.0.16                  19
441         27 May 1998     2.0.13  27 May 1998     19
442         26 May 1998     2.0.12                  18
443         22 May 1998     2.0.11                  18
444         18 May 1998     2.0.9   18 May 1998     18
445         17 May 1998     2.0.8                   17
446         15 May 1998     2.0.1                   17
447         14 May 1998     2.0.0                   17
448         17 Apr 1998     1.7.4                   17
449         13 Apr 1998     1.7.3                   17
450         05 Apr 1998     1.7.2                   17
451         26 Mar 1998     1.7.1                   17
452         26 Mar 1998     1.7.0   26 Mar 1998     17 (MAX=30)
453         13 Jan 1998     1.6.9   13 Jan 1998     15 (MAX=20)
454
455 * DATE OF COMMIT is the date the protocol change was committed to CVS.