Loading ...
Sorry, an error occurred while loading the content.

New stable version: Unison 2.27.57

Expand Messages
  • Benjamin Pierce
    On behalf of the Unison team, I am delighted to announce that Unison 2.27 is now designated as stable, replacing 2.13 and 2.17 as the recommended version for
    Message 1 of 1 , Jan 20, 2008
    View Source
    • 0 Attachment
      On behalf of the Unison team, I am delighted to announce that Unison
      2.27 is now designated as stable, replacing 2.13 and 2.17 as the
      recommended version for all users.

      Version 2.27.57, available as of today, fixes a few minor issues found
      by early users of 2.27. Sources for this version can be found on the
      Unison web site...

      http://www.cis.upenn.edu/~bcpierce/unison/

      ...and binaries should appear over the next couple of weeks as people
      build them on various architectures. 2.27.57 will interoperate with
      other variants of 2.27, but not with earlier versions with different
      major release numbers.

      Cheers,

      - Benjamin


      Changes in Version 2.27

      Changes since 2.17:
      * Major rewrite and cleanup of the whole Mac OS X graphical user
      interface by Craig Federighi. Thanks, Craig!!!
      * Several small fixes to the GTK2 UI to make it work better under
      Windows. Thanks to Karl M for these.
      * The backup functionality has been completely rewritten. The
      external interface has not changed, but numerous bugs, irregular
      behaviors, and cross-platform inconsistencies have been
      corrected.
      * The Unison project now accepts donations via PayPal. You can
      find
      a link to the donation page on the Unison home page
      (http://www.cis.upenn.edu/~bcpierce/unison/lists.html).
      * Some important safety improvements:
      + Added a new mountpoint preference, which can be used to
      specify a path that must exist in both replicas at the
      end of
      update detection (otherwise Unison aborts). This can be
      used
      to avoid potentially dangerous situations when Unison is
      used
      with removable media such as external hard drives and
      compact
      flash cards.
      + The confirmation of "big deletes" is now controlled by a
      boolean preference confirmbigdeletes. Default is true,
      which
      gives the same behavior as previously. (This
      functionality is
      at least partly superceded by the mountpoint preference,
      but
      it has been left in place in case it is useful to some
      people.)
      + If Unison is asked to "follow" a symbolic link but there is
      nothing at the other end of the link, it will now flag this
      path as an error, rather than treating the symlink
      itself as
      missing or deleted. This avoids a potentially dangerous
      situation where a followed symlink points to an external
      filesystem that might be offline when Unison is run
      (whereupon Unison would cheerfully delete the corresponding
      files in the other replica!).
      * Smaller changes:
      + Added forcepartial and preferpartial preferences, which
      behave like force and prefer but can be specified on a
      per-path basis. [Thanks to Alan Schmitt for this.]
      + A bare-bones self test feature was added, which runs unison
      through some of its paces and checks that the results
      are as
      expected. The coverage of the tests is still very limited,
      but the facility has already been very useful in debugging
      the new backup functionality (especially in exposing some
      subtle cross-platform issues).
      + Refined debugging code so that the verbosity of individual
      modules can be controlled separately. Instead of just
      putting
      '-debug verbose' on the command line, you can put '-debug
      update+', which causes all the extra messages in the Update
      module, but not other modules, to be printed. Putting '-
      debug
      verbose' causes all modules to print with maximum
      verbosity.
      + Removed mergebatch preference. (It never seemed very
      useful,
      and its semantics were confusing.)
      + Rewrote some of the merging functionality, for better
      cooperation with external Harmony instances.
      + Changed the temp file prefix from .# to .unison.
      + Compressed the output from the text user interface
      (particularly when run with the -terse flag) to make it
      easier to interpret the results when Unison is run several
      times in succession from a script.
      + Diff and merge functions now work under Windows.
      + Changed the order of arguments to the default diff command
      (so that the + and - annotations in diff's output are
      reversed).
      + Added .mpp files to the "never fastcheck" list (like .xls
      files).
      + Ignore all-whitespace lines in preference files
      + Small fix to ctime (non-)handling in update detection under
      windows with fastcheck.
      * Many small bugfixes, including:
      + Fixed a longstanding bug regarding fastcheck and daylight
      saving time under Windows when Unison is set up to
      synchronize modification times. (Modification times
      cannot be
      updated in the archive in this case, so we have to
      ignore one
      hour differences.)
      + Fixed a bug that would occasionally cause the archives
      to be
      left in non-identical states on the two hosts after
      synchronization.
      + Fixed a bug that prevented Unison from communicating
      correctly between 32- and 64-bit architectures.
      + On windows, file creation times are no longer used as a
      proxy
      for inode numbers. (This is unfortunate, as it makes
      fastcheck a little less safe. But it turns out that file
      creation times are not reliable under Windows: if a file is
      removed and a new file is created in its place, the new one
      will sometimes be given the same creation date as the old
      one!)
      + Set read-only file to R/W on OSX before attempting to
      change
      other attributes.
      + Fixed bug resulting in spurious "Aborted" errors during
      transport (thanks to Jerome Vouillon)
      + Enable diff if file contents have changed in one
      replica, but
      only properties in the other.
      + Removed misleading documentation for 'repeat' preference.
      + Fixed a bug in merging code where Unison could sometimes
      deadlock with the external merge program, if the latter
      produced large amounts of output.
      + Workaround for a bug compiling gtk2 user interface against
      current versions of gtk2+ libraries.
      + Added a better error message for "ambiguous paths".
      + Squashed a longstanding bug that would cause file
      transfer to
      fail with the message "Failed: Error in readWrite: Is a
      directory."
      + Replaced symlinks with copies of their targets in the Growl
      framework in src/uimac. This should make the sources easier
      to check out from the svn repository on WinXP systems.
      + Added a workaround (suggested by Karl M.) for the problem
      discussed on the unison users mailing list where, on the
      Windows platform, the server would hang when transferring
      files. I conjecture that the problem has to do with the RPC
      mechanism, which was used to make a call back from the
      server
      to the client (inside the Trace.log function) so that
      the log
      message would be appended to the log file on the client.
      The
      workaround is to dump these messages (about when
      xferbycopying shortcuts are applied and whether they
      succeed)
      just to the standard output of the Unison process, not
      to the
      log file.

      Changes since 2.13:
      * The features for performing backups and for invoking external
      merge programs have been completely rewritten by Stephane
      Lescuyer
      (thanks, Stephane!). The user-visible functionality should not
      change, but the internals have been rationalized and there are a
      number of new features. See the manual (in particular, the
      description of the backupXXX preferences) for details.
      * Incorporated patches for ipv6 support, contributed by Samuel
      Thibault. (Note that, due to a bug in the released OCaml 3.08.3
      compiler, this code will not actually work with ipv6 unless
      compiled with the CVS version of the OCaml compiler, where
      the bug
      has been fixed; however, ipv4 should continue to work normally.)
      * OSX interface:
      + Incorporated Ben Willmore's cool new icon for the Mac UI.
      * Small fixes:
      + Fixed off by one error in month numbers (in printed dates)
      reported by Bob Burger
    Your message has been successfully submitted and would be delivered to recipients shortly.