Tweaked the output a little.
[rsync/rsync.git] / NEWS
diff --git a/NEWS b/NEWS
index e6f5343..db03fc1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,84 +1,66 @@
-NEWS for rsync 2.6.6 (UNRELEASED)
-Protocol: 29 (unchanged)
-Changes since 2.6.5:
-
-  SECURITY FIXES:
-
-    - The zlib code was upgraded to version 1.2.3 in order to make it more
-      secure.  While the widely-publicized security problem in zlib 1.2.2 did
-      not affect rsync, another security problem surfaced that affects rsync's
-      zlib 1.1.4.
+NEWS for rsync 3.0.0 (UNRELEASED)
+Protocol: 30 (changed)
+Changes since 2.6.9:
 
   BUG FIXES:
 
-    - The setting of flist->high in clean_flist() was wrong for an empty list.
-      This could cause flist_find() to crash in certain rare circumstances
-      (e.g. if just the right directory setup was around when --fuzzy was
-      combined with --link-dest).
-
-    - The outputting of hard-linked files when verbosity was > 1 was not right:
-      without -i it would output the name of each hard-linked file as though
-      it had been changed (it now outputs a "is hard linked" message for the
-      file); with -i it would output all dots for the unchanged attributes of
-      a hard-link (it now changes those dots to spaces, as is done for other
-      totally unchanged items).
+    - Fixed the output of -ii when combined with one of the --*-dest options:
+      it now itemizes all the items, not just the changed ones.
 
-    - When backing up a changed symlink or device, get rid of any old backup
-      item so that we don't get an "already exists" error.
+    - Made the output of all file types consistent when using a --*-dest
+      option.  Prior versions used to output too many creation events for
+      matching items.
 
-    - A couple places that were comparing a local and a remote modification-
-      time were not honoring the --modify-window option.
+    - The code that waits for a child pid now handles being interrupted by
+      a signal.  This fixes a problem with the pre-xfer exec function not
+      being able to get the exit status from the script.
 
-    - Fixed a really old, minor bug that could cause rsync to warn about being
-      unable to mkdir() a path that ends in "/." because it just created the
-      directory (required --relative, --no-implied-dirs, a source path that
-      ended in either a trailing slash or a trailing "/.", and a non-existing
-      destination dir to tickle the bug in a recent version).
+    - A negated filter rule now sends the negation option when sending the
+      filter rules.
 
-    - If the user specifies a remote-host for both the source and destination,
-      we now output a syntax error rather than trying to open the destination
-      hostspec as a filename.
-
-    - Rsync now outputs a targeted error if both the source and destination
-      path appear to be a remote filespecs rather than treating the dest as
-      a very strange local path and (most likely) generating an error about
-      non-existent directories.
+    - Fixed a problem with -vv (double --verbose) and --stats when "pushing"
+      files (which includes local copies).  Version 2.6.9 would complete the
+      copy, but exit with an error when the receiver output its memory stats.
 
   ENHANCEMENTS:
 
-    - Added the --append option that makes rsync append data onto files
-      that are longer on the source than the destination (this includes new
-      files).
+    - Added the --delete-delay option, which is a more efficient way to
+      delete files at the end of the transfer without needing a separate
+      delete pass.
+
+    - You may specify --max-delete=0 to a 3.0.0 client as long as the
+      receiving side is at least version 3.0.0.  This means that you
+      can pull from an older rsync with this option, but pushing to an
+      older rsync will generate an error.  *Be sure to never specify a 0
+      value to an older rsync client, or it will be silently ignored.*
 
-    - The configure script now checks for lutimes() and lchmod() so that
-      rsync can make use of them to update attributes of symlinks (on
-      systems that support this).
+    - The --hard-link option now uses less memory on both the sending and
+      receiving side for all protocol versions.  For protocol 30, the use
+      of a hashtable on the sending side allows us to more efficiently
+      convey to the receiver what files are linked together.  This reduces
+      the amount of data sent over the socket by a considerable margin, and
+      moves the in-memory storage of the device+inode information from the
+      receiving side (for protocols < 30) to the sending side (note that
+      older rsync versions kept the device+inode information on both
+      sides).
 
-    - Made the "max verbosity" setting in the rsyncd.conf file settable on a
-      per-module basis (which now matches the documentation).
+  INTERNAL:
 
-    - Added two config items to the rsyncd.conf parsing:  "pre-xfer exec"
-      and "post-xfer exec".  These allow a command to be specified on a
-      per-module basis that will be run before and/or after a daemon-mode
-      transfer. 
+    - Added some isType() functions that make dealing with signed characters
+      easier without forcing variables via casts.
 
-    - The support/rrsync script has been upgraded to verify the args of options
-      that take args (instead of rejecting any such options).  The script was
-      also changed to try to be more secure and to fix a problem in the parsing
-      of a pull operation that has multiple sources.
+    - Upgraded the included popt version to 1.10.2 and improved its use of
+      string-handling functions.
 
-    - Improved the documentation that explains the difference between a
-      normal daemon transfer and a daemon-over remote-shell transfer.
+    - Added missing prototypes for compatibility functions from the lib dir.
 
-    - Some of the diffs supplied in the patches dir were fixed and/or
-      improved.
+    - Configure determines if iconv() has a const arg, allowing us to avoid a
+      compiler warning.
 
-  BUILD CHANGES:
+    - Made the sending of some numbers more efficient for protocol 30.
 
-    - Made configure define NOBODY_USER (currently hard-wired to "nobody") and
-      NOBODY_GROUP (set to either "nobody" or "nogroup" depending on what we
-      find in the /etc/group file).
+    - Improved the use of "const" on pointers.
 
-    - Added a test to the test suite, itemized.test, that tests the output of
-      -i (log-format w/%i) and some double-verbose messages.
+  DEVELOPER RELATED:
 
+    - ...