Unison File Synchronizer
- Version 2.27.72 | Release Date: 2008-05-29 | Download
The command line tool was only compiled for Leopard. It's now compiled for both Leopard and Tiger.
- Version 2.27.68 | Release Date: 2008-05-24 | Download
Fixed the dreaded "uncaught array exception" error. Compiled for Tiger and Leopard, universal binary.
- Version 2.27.55 | Release Date: 2008-01-21 | Download
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- Version 2.27.55 | Release Date: 2008-01-20 | Download
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- Version 2.27.47-i386 | Release Date: 2007-10-30 | Download
- No changes specified
- Version 2.27.47-ppc | Release Date: 2007-10-30 | Download
- No changes specified
- Version 2.24.8 | Release Date: 2006-11-29 | Download
- No changes specified
- Version 2.13.16 | Release Date: not specified | Download
- No changes specified



