Tue Jan 6 12:58:37 2015 UTC ()
Update to 2.48.3:

Changes in Version 2.48.3

   Changes since 2.45:
     * Incorporated a patch from Christopher Zimmermann to replace the
       Uprintf module (which doesn't work with OCaml 4.02, causing Unison
       to crash) with equivalent functionality from the standard library.
     * Incorporated a refresh of the OSX GUI, contributed by Alan Shutko.
     * Added a maxsizethreshold option, which prevents the transfer of
       files larger than the size specified (in Kb).
     * Added a "copyonconflict" preference, to make a copy of files that
       would otherwise be overwritten or deleted in case of conflicting
       changes. (This makes it possible to automatically resolve conflicts
       in a fairly safe way when synchronizing continuously, in
       combination with the "repeat = watch" and "prefer = newer"
       preferences.
     * File system monitoring:
          + The file watcher now fails when unable to watch a directory,
            rather than silently ignoring the issue.
          + File system monitoring: more robust communication with the
            helper program (in socket mode, the unison server will still
            work properly despite unexpected unison client
            disconnections).
          + A bytecode version of unison-fsmonitor is now produced by
            "make NATIVE=false"
          + Improved search for unison-fsmonitor
          + Detect when the helper process exits.
          + More robust file watching helper programs for Windows and
            Linux. They communicate with Unison through pipes (Unison
            redirects stdin and stdout), using a race-free protocol.
          + Retries paths with failures using an exponential backoff
            algorithm.
          + The information returned by the file watchers are used
            independently for each replica; thus, when only one replica
            has changes, Unison will only rescan this replica.
          + When available, used by the graphical UIs to speed up
            rescanning (can be disabled by setting the new watch
            preference to
          + Small fix to the way fsmonitor.py gets invoked when using the
            file watching functionality, suggested by Josh Berdine. Unison
            will now look for fsmonitor.py in the same directory where the
            Unison executable itself lives.
     * Minor:
          + Fixed a bug in export procedure that was messing up
            documentation strings.
          + Incorporated a patch from Ir疣yossy Knoblauch Art�r to make
            temp file names fit within 143 characters (to make eCryptFS
            happy).
          + Added a string to the Conflict direction to document the
            reason of the conflict.
          + Log conflicts and problems in the text UI even if nothing is
            propagated.
          + Use hash function from OCaml 3.x for comparing archives, even
            when compiled with OCaml 4.x.
          + Do not restart Unison in case of uncaught exception when the
            repeat preference is set. This seems safer. And it does not
            work, for instance, in case of lost connection.
          + Fix Unix.readlink invalid argument error under Windows
          + Fix a crash when the output of the diff program is too large.
          + Fixed Makefile for cross-compiling towards Windows (updated to
            MinGW-w64)

   Changes since 2.40.63:
     * New preference fastercheckUNSAFE, which can be used (with care!) to
       achieve much faster update detection when all the common files in
       the two replicas are known to be identical. See the manual for more
       information.
       This feature should still be considered experimental, but it's
       ready for other people to try out.
     * Added option clientHostName. If specified, it will be used to as
       the client host name, overriding UNISONLOCALHOSTNAME and the actual
       host name.
     * OS X GUI:
          + fix crash under Lion, because of problems with the toolbar,
            using the fix suggested in
            http://blitzbasic.com/Community/posts.php?topic=95778.
          + uimacnew09 is now the standard graphical interface on OSX
          + A small improvement to the uimacnew09 interface from Alan
            Schmitt and Steve Kalkwarf: when Unison is run with the -batch
            flag, the interface will now automatically propagate changes
            and terminate, without waiting for user interaction.
          + Show a modal warning window if there is no archive for the
            hosts. The user can then choose to exit or proceed (proceed is
            the default). The window is not shown if the batch preference
            is true.
          + file details panel selectable
     * GTK GUI:
          + New version of uigtk2.ml from Matt Zagrabelny that reorganizes
            the icons in a slightly more intuitive way.
     * Minor fixes:
          + Setting the prefer preference to older or newer now propagates
            deletions when there is no conflict.
          + Correctly quote the path when running merge commands.
          + Add quotes to paths when calling external file watcher
            utility.
          + Incorporate a patch to fsmonitor.py (the external filewatcher
            utility) from Tomasz Zernicki to make it work better under
            Windows.
          + Incorporated new version of fsmonitor.py from Christophe Gohle
          + Fixed incompatibility with OpenSSH 5.6.
          + Fixed fingerprint cache: do not cache file properties
          + Some spelling corrections in documentation and comments from
            Stephane Glondu
          + Fixed O_APPEND mode for open under Windows
          + Fixed String.sub invalid argument error when an AppleDouble
            file does not contain a finder information field
          + Trim duplicate paths when using "-repeat watch"
          + Unison now passes path arguments and -follow directives to
            fsmonitor.py. This seems to work except for one small issue
            with how fsmonitor.py treats -follow directives for
            directories that don't exist (or maybe this is an issue with
            how it treats any kind of monitoring when the thing being
            monitored doesn't exist?). If we create a symlink to a
            nonexistant directory, give Unison (hence fsmonitor.py) a
            'follow' directive for the symlink, start unison, and then
            create the directory, fsmonitor.py misses the change.
          + Lines added in profile files by unison always start at a new
            line


(wiz)
diff -r1.88 -r1.89 pkgsrc/net/unison/Makefile
diff -r1.22 -r1.23 pkgsrc/net/unison/distinfo
diff -r1.4 -r1.5 pkgsrc/net/unison/patches/patch-Makefile.OCaml

cvs diff -r1.88 -r1.89 pkgsrc/net/unison/Makefile (expand / switch to unified diff)

--- pkgsrc/net/unison/Makefile 2014/10/22 09:43:01 1.88
+++ pkgsrc/net/unison/Makefile 2015/01/06 12:58:36 1.89
@@ -1,17 +1,16 @@ @@ -1,17 +1,16 @@
1# $NetBSD: Makefile,v 1.88 2014/10/22 09:43:01 wiz Exp $ 1# $NetBSD: Makefile,v 1.89 2015/01/06 12:58:36 wiz Exp $
2 2
3DISTNAME= unison-2.40.102 3DISTNAME= unison-2.48.3
4PKGREVISION= 22 
5CATEGORIES= net 4CATEGORIES= net
6MASTER_SITES= http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/ 5MASTER_SITES= http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/
7 6
8MAINTAINER= tonio@NetBSD.org 7MAINTAINER= tonio@NetBSD.org
9HOMEPAGE= http://www.cis.upenn.edu/~bcpierce/unison/ 8HOMEPAGE= http://www.cis.upenn.edu/~bcpierce/unison/
10COMMENT= File-synchronization tool 9COMMENT= File-synchronization tool
11LICENSE= gnu-gpl-v3 10LICENSE= gnu-gpl-v3
12 11
13.if (${MACHINE_ARCH} == "arm") 12.if (${MACHINE_ARCH} == "arm")
14BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=3.12.0nb2 13BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=3.12.0nb2
15.else 14.else
16BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=3.11.2 15BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=3.11.2
17.endif 16.endif

cvs diff -r1.22 -r1.23 pkgsrc/net/unison/distinfo (expand / switch to unified diff)

--- pkgsrc/net/unison/distinfo 2014/10/22 09:43:01 1.22
+++ pkgsrc/net/unison/distinfo 2015/01/06 12:58:36 1.23
@@ -1,8 +1,7 @@ @@ -1,8 +1,7 @@
1$NetBSD: distinfo,v 1.22 2014/10/22 09:43:01 wiz Exp $ 1$NetBSD: distinfo,v 1.23 2015/01/06 12:58:36 wiz Exp $
2 2
3SHA1 (unison-2.40.102.tar.gz) = bf18f64fa30bd04234e864d42190294e0d9a2910 3SHA1 (unison-2.48.3.tar.gz) = 74f1c087ee49dc1db4680ad779280f7333d5c968
4RMD160 (unison-2.40.102.tar.gz) = 0231fd41895bde97ad4ae15bdc4994f9c9e27ad6 4RMD160 (unison-2.48.3.tar.gz) = 884b4ec225d0411e8112e809c621b6779cf816b6
5Size (unison-2.40.102.tar.gz) = 2694761 bytes 5Size (unison-2.48.3.tar.gz) = 1172532 bytes
6SHA1 (patch-Makefile.OCaml) = 2872f07e323f23375b0b7ea5ec17fe387fe22a0f 6SHA1 (patch-Makefile.OCaml) = 2c39a20eb731d3f787d5c938b539ceb3276d5d47
7SHA1 (patch-aa) = dd1a001fb7071cd9141615b42a692e6d1d812081 7SHA1 (patch-aa) = dd1a001fb7071cd9141615b42a692e6d1d812081
8SHA1 (patch-ubase_util.ml) = d8ee8ea1cc1a5d0e8794623c24621f1a2d57d189 

cvs diff -r1.4 -r1.5 pkgsrc/net/unison/patches/Attic/patch-Makefile.OCaml (expand / switch to unified diff)

--- pkgsrc/net/unison/patches/Attic/patch-Makefile.OCaml 2012/12/09 15:02:51 1.4
+++ pkgsrc/net/unison/patches/Attic/patch-Makefile.OCaml 2015/01/06 12:58:37 1.5
@@ -1,43 +1,43 @@ @@ -1,43 +1,43 @@
1$NetBSD: patch-Makefile.OCaml,v 1.4 2012/12/09 15:02:51 wiz Exp $ 1$NetBSD: patch-Makefile.OCaml,v 1.5 2015/01/06 12:58:37 wiz Exp $
2 2
3Correct lablgtk paths for 2.16, and use ocamlopt.opt for compilation 3Correct lablgtk paths for 2.16, and use ocamlopt.opt for compilation
4 4
5--- Makefile.OCaml.orig 2011-04-16 20:35:38.000000000 +0000 5--- Makefile.OCaml.orig 2014-09-28 16:48:05.000000000 +0000
6+++ Makefile.OCaml 6+++ Makefile.OCaml
7@@ -71,8 +71,8 @@ OCAMLLIBDIR=$(shell ocamlc -v | tail -1  7@@ -75,8 +75,8 @@ OCAMLLIBDIR=$(shell ocamlc -v | tail -1
8 # 8 #
9 # This should be set to an appropriate value automatically, depending 9 # This should be set to an appropriate value automatically, depending
10 # on whether the lablgtk library is available 10 # on whether the lablgtk library is available
11-LABLGTKLIB=$(OCAMLLIBDIR)/lablgtk 11-LABLGTKLIB=$(OCAMLLIBDIR)/lablgtk
12-LABLGTK2LIB=$(OCAMLLIBDIR)/lablgtk2 12-LABLGTK2LIB=$(OCAMLLIBDIR)/lablgtk2
13+LABLGTKLIB=$(OCAMLLIBDIR)/site-lib/lablgtk 13+LABLGTKLIB=$(OCAMLLIBDIR)/site-lib/lablgtk
14+LABLGTK2LIB=$(OCAMLLIBDIR)/site-lib/lablgtk2 14+LABLGTK2LIB=$(OCAMLLIBDIR)/site-lib/lablgtk2
15 ##BCP [3/2007]: Removed temporarily, since the OSX UI is not working well  15 ##BCP [3/2007]: Removed temporarily, since the OSX UI is not working well
16 ## at the moment and we don't want to confuse people by building it by default 16 ## at the moment and we don't want to confuse people by building it by default
17 ifeq ($(OSARCH),osx) 17 ifeq ($(OSARCH),osx)
18@@ -285,14 +285,14 @@ endif 18@@ -292,14 +292,14 @@ endif
19  19
20 # Gtk GUI 20 # Gtk GUI
21 ifeq ($(UISTYLE), gtk) 21 ifeq ($(UISTYLE), gtk)
22- CAMLFLAGS+=-I +lablgtk 22- CAMLFLAGS+=-I +lablgtk
23+ CAMLFLAGS+=-I $(OCAMLLIBDIR)/site-lib/lablgtk 23+ CAMLFLAGS+=-I $(OCAMLLIBDIR)/site-lib/lablgtk
24 OCAMLOBJS+=pixmaps.cmo uigtk.cmo linkgtk.cmo 24 OCAMLOBJS+=pixmaps.cmo uigtk.cmo linkgtk.cmo
25 OCAMLLIBS+=lablgtk.cma 25 OCAMLLIBS+=lablgtk.cma
26 endif 26 endif
27  27
28 # Gtk2 GUI 28 # Gtk2 GUI
29 ifeq ($(UISTYLE), gtk2) 29 ifeq ($(UISTYLE), gtk2)
30- CAMLFLAGS+=-I +lablgtk2 30- CAMLFLAGS+=-I +lablgtk2
31+ CAMLFLAGS+=-I $(OCAMLLIBDIR)/site-lib/lablgtk2 31+ CAMLFLAGS+=-I $(OCAMLLIBDIR)/site-lib/lablgtk2
32 OCAMLOBJS+=pixmaps.cmo uigtk2.cmo linkgtk2.cmo 32 OCAMLOBJS+=pixmaps.cmo uigtk2.cmo linkgtk2.cmo
33 OCAMLLIBS+=lablgtk.cma 33 OCAMLLIBS+=lablgtk.cma
34 endif 34 endif
35@@ -364,7 +364,7 @@ ifeq ($(PROFILING), true) 35@@ -384,7 +384,7 @@ ifeq ($(PROFILING), true)
36 else 36 else
37 OCAMLC=ocamlc 37 OCAMLC=$(EXEC_PREFIX)ocamlc
38 endif 38 endif
39-OCAMLOPT=ocamlopt 39-OCAMLOPT=$(EXEC_PREFIX)ocamlopt
40+OCAMLOPT=ocamlopt.opt 40+OCAMLOPT=$(EXEC_PREFIX)ocamlopt.opt
41  41
42 ifeq ($(NATIVE), true) 42 ifeq ($(NATIVE), true)
43 ## Set up for native code compilation 43 ## Set up for native code compilation