[Unison-hackers] [unison-svn] r449 - in trunk/src: . lwt system ubase
bcpierce@seas.upenn.edu
bcpierce at seas.upenn.edu
Thu May 27 23:15:14 EDT 2010
Author: bcpierce
Date: 2010-05-27 23:15:14 -0400 (Thu, 27 May 2010)
New Revision: 449
Modified:
trunk/src/Makefile
trunk/src/RECENTNEWS
trunk/src/abort.ml
trunk/src/bytearray.ml
trunk/src/bytearray.mli
trunk/src/bytearray_stubs.c
trunk/src/case.ml
trunk/src/case.mli
trunk/src/checksum.ml
trunk/src/checksum.mli
trunk/src/clroot.ml
trunk/src/clroot.mli
trunk/src/common.ml
trunk/src/common.mli
trunk/src/copy.ml
trunk/src/external.ml
trunk/src/external.mli
trunk/src/fileinfo.ml
trunk/src/fileinfo.mli
trunk/src/files.ml
trunk/src/files.mli
trunk/src/fileutil.ml
trunk/src/fileutil.mli
trunk/src/fingerprint.ml
trunk/src/fingerprint.mli
trunk/src/fs.ml
trunk/src/fs.mli
trunk/src/fspath.ml
trunk/src/fspath.mli
trunk/src/globals.ml
trunk/src/globals.mli
trunk/src/linkgtk.ml
trunk/src/linkgtk2.ml
trunk/src/linktext.ml
trunk/src/lock.ml
trunk/src/lock.mli
trunk/src/lwt/pqueue.ml
trunk/src/lwt/pqueue.mli
trunk/src/main.ml
trunk/src/mkProjectInfo.ml
trunk/src/name.ml
trunk/src/name.mli
trunk/src/os.ml
trunk/src/os.mli
trunk/src/osx.ml
trunk/src/osx.mli
trunk/src/path.ml
trunk/src/path.mli
trunk/src/pixmaps.ml
trunk/src/pred.ml
trunk/src/pred.mli
trunk/src/props.ml
trunk/src/props.mli
trunk/src/recon.ml
trunk/src/recon.mli
trunk/src/remote.ml
trunk/src/remote.mli
trunk/src/sortri.ml
trunk/src/sortri.mli
trunk/src/stasher.ml
trunk/src/strings.mli
trunk/src/system.ml
trunk/src/system.mli
trunk/src/system/system_generic.ml
trunk/src/system/system_intf.ml
trunk/src/system/system_win.ml
trunk/src/terminal.ml
trunk/src/test.ml
trunk/src/test.mli
trunk/src/transfer.ml
trunk/src/transfer.mli
trunk/src/transport.ml
trunk/src/transport.mli
trunk/src/tree.ml
trunk/src/tree.mli
trunk/src/ubase/proplist.ml
trunk/src/ubase/proplist.mli
trunk/src/ubase/rx.ml
trunk/src/ubase/rx.mli
trunk/src/ubase/safelist.ml
trunk/src/ubase/safelist.mli
trunk/src/ubase/trace.ml
trunk/src/ubase/trace.mli
trunk/src/ubase/uarg.ml
trunk/src/ubase/util.ml
trunk/src/ubase/util.mli
trunk/src/ui.mli
trunk/src/uicommon.ml
trunk/src/uicommon.mli
trunk/src/uigtk2.ml
trunk/src/uigtk2.mli
trunk/src/uitext.ml
trunk/src/uitext.mli
trunk/src/unicode.ml
trunk/src/unicode.mli
trunk/src/update.ml
trunk/src/update.mli
trunk/src/uutil.ml
trunk/src/uutil.mli
trunk/src/xferhint.ml
trunk/src/xferhint.mli
Log:
* Progress on filesystem watching (see uitext.ml)
* Update copyright dates, while I'm thinking about it :-)
Modified: trunk/src/Makefile
===================================================================
--- trunk/src/Makefile 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/Makefile 2010-05-28 03:15:14 UTC (rev 449)
@@ -210,8 +210,8 @@
# For developers
runtest:
- $(MAKE) all NATIVE=false DEBUG=true
- ./unison test
+ $(MAKE) NATIVE=false DEBUG=true text
+ bash ./unison test
repeattest:
$(MAKE) all NATIVE=false DEBUG=true UISTYLE=text
Modified: trunk/src/RECENTNEWS
===================================================================
--- trunk/src/RECENTNEWS 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/RECENTNEWS 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,27 @@
CHANGES FROM VERSION 2.40.16
+* Progress on filesystem watching (see uitext.ml)
+
+* Update copyright dates, while I'm thinking about it :-)
+
+
+
+
+
+-------------------------------
+CHANGES FROM VERSION 2.40.16
+
+* Progress on filesystem watching (see uitext.ml)
+
+* Update copyright dates, while I'm thinking about it :-)
+
+
+
+
+
+-------------------------------
+CHANGES FROM VERSION 2.40.16
+
* One more fix to Unicode case sensitive mode
-------------------------------
Modified: trunk/src/abort.ml
===================================================================
--- trunk/src/abort.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/abort.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/abort.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/bytearray.ml
===================================================================
--- trunk/src/bytearray.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/bytearray.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/bytearray.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/bytearray.mli
===================================================================
--- trunk/src/bytearray.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/bytearray.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/bytearray.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type t =
(char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
Modified: trunk/src/bytearray_stubs.c
===================================================================
--- trunk/src/bytearray_stubs.c 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/bytearray_stubs.c 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
/* Unison file synchronizer: src/bytearray_stubs.c */
-/* Copyright 1999-2009 (see COPYING for details) */
+/* Copyright 1999-2010 (see COPYING for details) */
#include <string.h>
Modified: trunk/src/case.ml
===================================================================
--- trunk/src/case.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/case.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/case.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/case.mli
===================================================================
--- trunk/src/case.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/case.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/case.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
val caseInsensitiveMode : [`True|`False|`Default] Prefs.t
val unicodeEncoding : bool Prefs.t
Modified: trunk/src/checksum.ml
===================================================================
--- trunk/src/checksum.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/checksum.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/checksum.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/checksum.mli
===================================================================
--- trunk/src/checksum.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/checksum.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/checksum.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type t = int
type u = int array
Modified: trunk/src/clroot.ml
===================================================================
--- trunk/src/clroot.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/clroot.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/clroot.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/clroot.mli
===================================================================
--- trunk/src/clroot.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/clroot.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/clroot.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Command-line roots *)
type clroot =
Modified: trunk/src/common.ml
===================================================================
--- trunk/src/common.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/common.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/common.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/common.mli
===================================================================
--- trunk/src/common.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/common.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/common.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(***************************************************************************)
(* COMMON TYPES USED BY ALL MODULES *)
Modified: trunk/src/copy.ml
===================================================================
--- trunk/src/copy.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/copy.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/copy.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/external.ml
===================================================================
--- trunk/src/external.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/external.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/external.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/external.mli
===================================================================
--- trunk/src/external.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/external.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/external.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
val runExternalProgram : string -> (Unix.process_status * string) Lwt.t
val readChannelTillEof : in_channel -> string
Modified: trunk/src/fileinfo.ml
===================================================================
--- trunk/src/fileinfo.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fileinfo.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fileinfo.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/fileinfo.mli
===================================================================
--- trunk/src/fileinfo.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fileinfo.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fileinfo.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type typ = [`ABSENT | `FILE | `DIRECTORY | `SYMLINK]
val type2string : typ -> string
Modified: trunk/src/files.ml
===================================================================
--- trunk/src/files.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/files.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/files.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/files.mli
===================================================================
--- trunk/src/files.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/files.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/files.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* As usual, these functions should only be called by the client (i.e., in *)
(* the same address space as the user interface). *)
Modified: trunk/src/fileutil.ml
===================================================================
--- trunk/src/fileutil.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fileutil.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fileutil.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/fileutil.mli
===================================================================
--- trunk/src/fileutil.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fileutil.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fileutil.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Convert backslashes in a string to forward slashes. Useful in Windows. *)
val backslashes2forwardslashes : string -> string
Modified: trunk/src/fingerprint.ml
===================================================================
--- trunk/src/fingerprint.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fingerprint.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fingerprint.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/fingerprint.mli
===================================================================
--- trunk/src/fingerprint.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fingerprint.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fingerprint.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type t
Modified: trunk/src/fs.ml
===================================================================
--- trunk/src/fs.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fs.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fs.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/fs.mli
===================================================================
--- trunk/src/fs.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fs.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fs.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Operations on fspaths *)
Modified: trunk/src/fspath.ml
===================================================================
--- trunk/src/fspath.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fspath.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/fspath.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/fspath.mli
===================================================================
--- trunk/src/fspath.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/fspath.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,7 +1,7 @@
(* Unison file synchronizer: src/fspath.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
-(* Defines an abstract type of absolute filenames (fspaths) *)
+(* Defines an abstract type of absolute filenames (fspaths) *)
type t
Modified: trunk/src/globals.ml
===================================================================
--- trunk/src/globals.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/globals.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/globals.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/globals.mli
===================================================================
--- trunk/src/globals.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/globals.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/globals.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Global variables and functions needed by top-level modules and user *)
(* interfaces *)
Modified: trunk/src/linkgtk.ml
===================================================================
--- trunk/src/linkgtk.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/linkgtk.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/linkgtk.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/linkgtk2.ml
===================================================================
--- trunk/src/linkgtk2.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/linkgtk2.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/linkgtk2.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/linktext.ml
===================================================================
--- trunk/src/linktext.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/linktext.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/linktext.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/lock.ml
===================================================================
--- trunk/src/lock.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/lock.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/lock.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/lock.mli
===================================================================
--- trunk/src/lock.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/lock.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/lock.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* A simple utility module for setting and releasing inter-process locks
using entries in the filesystem. *)
Modified: trunk/src/lwt/pqueue.ml
===================================================================
--- trunk/src/lwt/pqueue.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/lwt/pqueue.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/lwt/pqueue.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/lwt/pqueue.mli
===================================================================
--- trunk/src/lwt/pqueue.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/lwt/pqueue.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/lwt/pqueue.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
module type OrderedType =
sig
Modified: trunk/src/main.ml
===================================================================
--- trunk/src/main.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/main.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/main.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/mkProjectInfo.ml
===================================================================
--- trunk/src/mkProjectInfo.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/mkProjectInfo.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -97,24 +97,3 @@
Printf.printf "VERSION=%d.%d.%d\n" majorVersion minorVersion pointVersion;;
Printf.printf "NAME=%s\n" projectName;;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Modified: trunk/src/name.ml
===================================================================
--- trunk/src/name.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/name.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/name.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/name.mli
===================================================================
--- trunk/src/name.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/name.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/name.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type t
Modified: trunk/src/os.ml
===================================================================
--- trunk/src/os.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/os.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/os.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/os.mli
===================================================================
--- trunk/src/os.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/os.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/os.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
val myCanonicalHostName : string
Modified: trunk/src/osx.ml
===================================================================
--- trunk/src/osx.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/osx.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/osx.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/osx.mli
===================================================================
--- trunk/src/osx.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/osx.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/osx.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
val init : bool -> unit
val isMacOSX : bool
Modified: trunk/src/path.ml
===================================================================
--- trunk/src/path.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/path.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/path.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/path.mli
===================================================================
--- trunk/src/path.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/path.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/path.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Abstract type of relative pathnames *)
type 'a path
Modified: trunk/src/pixmaps.ml
===================================================================
--- trunk/src/pixmaps.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/pixmaps.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/pixmaps.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/pred.ml
===================================================================
--- trunk/src/pred.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/pred.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/pred.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/pred.mli
===================================================================
--- trunk/src/pred.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/pred.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/pred.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Predicates over paths.
Modified: trunk/src/props.ml
===================================================================
--- trunk/src/props.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/props.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/props.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/props.mli
===================================================================
--- trunk/src/props.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/props.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/props.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* File properties: time, permission, length, etc. *)
Modified: trunk/src/recon.ml
===================================================================
--- trunk/src/recon.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/recon.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/recon.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/recon.mli
===================================================================
--- trunk/src/recon.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/recon.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/recon.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
val reconcileAll :
?allowPartial:bool (* whether we allow partial synchronization
Modified: trunk/src/remote.ml
===================================================================
--- trunk/src/remote.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/remote.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/remote.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/remote.mli
===================================================================
--- trunk/src/remote.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/remote.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/remote.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
module Thread : sig
val unwindProtect : (unit -> 'a Lwt.t) -> (exn -> unit Lwt.t) -> 'a Lwt.t
Modified: trunk/src/sortri.ml
===================================================================
--- trunk/src/sortri.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/sortri.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/sortri.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/sortri.mli
===================================================================
--- trunk/src/sortri.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/sortri.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/sortri.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Sort a list of recon items according to the current setting of
various preferences (defined in sort.ml, and accessible from the
Modified: trunk/src/stasher.ml
===================================================================
--- trunk/src/stasher.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/stasher.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,6 +1,6 @@
(* Unison file synchronizer: src/stasher.ml *)
(* $I2: Last modified by lescuyer *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/strings.mli
===================================================================
--- trunk/src/strings.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/strings.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,4 +1,4 @@
(* Unison file synchronizer: src/strings.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
val docs : (string * (string * string)) list
Modified: trunk/src/system/system_generic.ml
===================================================================
--- trunk/src/system/system_generic.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/system/system_generic.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/system/system_generic.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/system/system_intf.ml
===================================================================
--- trunk/src/system/system_intf.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/system/system_intf.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/system/system_intf.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/system/system_win.ml
===================================================================
--- trunk/src/system/system_win.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/system/system_win.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/system/system_win.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/system.ml
===================================================================
--- trunk/src/system.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/system.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/system.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/system.mli
===================================================================
--- trunk/src/system.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/system.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/system.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Operations on filesystem path *)
Modified: trunk/src/terminal.ml
===================================================================
--- trunk/src/terminal.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/terminal.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/terminal.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/test.ml
===================================================================
--- trunk/src/test.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/test.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/test.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/test.mli
===================================================================
--- trunk/src/test.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/test.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/test.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Internal self-tests *)
Modified: trunk/src/transfer.ml
===================================================================
--- trunk/src/transfer.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/transfer.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/transfer.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/transfer.mli
===================================================================
--- trunk/src/transfer.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/transfer.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/transfer.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(*
Rsync : general algorithm description
Modified: trunk/src/transport.ml
===================================================================
--- trunk/src/transport.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/transport.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/transport.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/transport.mli
===================================================================
--- trunk/src/transport.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/transport.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/transport.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Executes the actions implied by the reconItem list. *)
val transportItem :
Modified: trunk/src/tree.ml
===================================================================
--- trunk/src/tree.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/tree.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/tree.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/tree.mli
===================================================================
--- trunk/src/tree.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/tree.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/tree.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* An ('a, 'b) t is a tree with 'a-labeled arcs and 'b-labeled nodes. *)
(* Labeling for the internal nodes is optional *)
Modified: trunk/src/ubase/proplist.ml
===================================================================
--- trunk/src/ubase/proplist.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/proplist.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/proplist.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/ubase/proplist.mli
===================================================================
--- trunk/src/ubase/proplist.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/proplist.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/proplist.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type 'a key
type t
Modified: trunk/src/ubase/rx.ml
===================================================================
--- trunk/src/ubase/rx.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/rx.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/rx.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/ubase/rx.mli
===================================================================
--- trunk/src/ubase/rx.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/rx.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/rx.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
type t
Modified: trunk/src/ubase/safelist.ml
===================================================================
--- trunk/src/ubase/safelist.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/safelist.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/safelist.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/ubase/safelist.mli
===================================================================
--- trunk/src/ubase/safelist.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/safelist.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/safelist.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* All functions here are tail recursive and will work for arbitrary
sized lists (unlike some of the standard ones). The intention is that
Modified: trunk/src/ubase/trace.ml
===================================================================
--- trunk/src/ubase/trace.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/trace.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/trace.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/ubase/trace.mli
===================================================================
--- trunk/src/ubase/trace.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/trace.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/trace.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* ---------------------------------------------------------------------- *)
(* Debugging support *)
Modified: trunk/src/ubase/uarg.ml
===================================================================
--- trunk/src/ubase/uarg.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/uarg.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/uarg.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* by Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
(* Slightly modified by BCP, July 1999 *)
Modified: trunk/src/ubase/util.ml
===================================================================
--- trunk/src/ubase/util.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/util.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/util.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/ubase/util.mli
===================================================================
--- trunk/src/ubase/util.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ubase/util.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ubase/util.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Miscellaneous utility functions and datatypes *)
Modified: trunk/src/ui.mli
===================================================================
--- trunk/src/ui.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/ui.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/ui.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* The module Ui provides only the user interface signature.
Implementations are provided by Uitext and Uitk. *)
Modified: trunk/src/uicommon.ml
===================================================================
--- trunk/src/uicommon.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uicommon.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/uicommon.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/uicommon.mli
===================================================================
--- trunk/src/uicommon.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uicommon.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/uicommon.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* Kinds of UI *)
type interface =
Modified: trunk/src/uigtk2.ml
===================================================================
--- trunk/src/uigtk2.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uigtk2.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/uigtk2.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/uigtk2.mli
===================================================================
--- trunk/src/uigtk2.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uigtk2.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,4 +1,4 @@
(* Unison file synchronizer: src/uigtk2.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
module Body : Uicommon.UI
Modified: trunk/src/uitext.ml
===================================================================
--- trunk/src/uitext.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uitext.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/uitext.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -15,7 +15,6 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*)
-
open Common
open Lwt
@@ -697,65 +696,109 @@
(exitStatus, failedPaths)
end
-let watchinterval = 10
+(* ----------------- Filesystem watching mode ---------------- *)
+(* FIX: we should check that the child process has not died and restart it if so... *)
+
+let watchinterval = 5
+
+let watcherTemp r n =
+ let s = n ^ (Update.archiveHash (Fspath.canonize (Some r))) in
+ Os.fileInUnisonDir s
+ (* Fspath.toSysPath
+ (Fspath.concat r (Os.tempPath r (Path.child Path.empty (Name.fromString s)))) *)
+
+let watchercmd r =
+ (* FIX: need to include --follow and path parameters *)
+ (* FIX -- need to find the program using watcherosx preference *)
+ let root = Common.root2string r in
+ let changefile = watcherTemp root "changes" in
+ let statefile = watcherTemp root "state" in
+ let cmd = Printf.sprintf "fsmonitor.py --outfile %s --statefile %s %s\n"
+ (System.fspathToPrintString changefile)
+ (System.fspathToPrintString statefile)
+ root in
+ debug (fun() -> Util.msg "change command: %s\n" cmd);
+ (changefile,cmd)
+
+module RootMap = Map.Make (struct type t = Common.root let compare = Pervasives.compare end)
+type watcherinfo = {file: System.fspath;
+ ch:Pervasives.in_channel option ref;
+ chars: string ref;
+ lines: string list ref}
+let watchers : watcherinfo RootMap.t ref = ref RootMap.empty
+
(* FIX; Using string concatenation to accumulate characters is
pretty inefficient! *)
-let charsRead = ref ""
-let linesRead = ref []
-let watcherchan = ref None
+let getAvailableLinesFromWatcher wi =
+ let ch = match !(wi.ch) with Some(c) -> c | None -> assert false in
+ let rec loop () =
+ match try Some(input_char ch) with End_of_file -> None with
+ None ->
+ let res = !(wi.lines) in
+ wi.lines := [];
+ res
+ | Some(c) ->
+ if c = '\n' then begin
+ wi.lines := !(wi.chars) :: !(wi.lines);
+ wi.chars := "";
+ loop ()
+ end else begin
+ wi.chars := (!(wi.chars)) ^ (String.make 1 c);
+ loop ()
+ end in
+ loop ()
-let suckOnWatcherFileLocal n =
+let suckOnWatcherFileLocal r =
Util.convertUnixErrorsToFatal
- ("Reading changes from watcher process in file " ^
- System.fspathToPrintString n)
+ "Reading changes from watcher process "
(fun () ->
- (* The main loop, invoked from two places below *)
- let rec loop ch =
- match try Some(input_char ch) with End_of_file -> None with
- None ->
- let res = !linesRead in
- linesRead := [];
- res
- | Some(c) ->
- if c = '\n' then begin
- linesRead := !charsRead
- :: !linesRead;
- charsRead := "";
- loop ch
- end else begin
- charsRead := (!charsRead) ^ (String.make 1 c);
- loop ch
- end in
- (* Make sure there's a file to watch, then read from it *)
- match !watcherchan with
- None ->
- if System.file_exists n then begin
- let ch = System.open_in_bin n in
- watcherchan := Some(ch);
- loop ch
- end else []
- | Some(ch) -> loop ch
- )
+ (* Make sure there's a watcher running *)
+ try
+ let wi = RootMap.find r !watchers in
+ if !(wi.ch) = None then
+ (* Watcher channel not built yet *)
+ if System.file_exists wi.file then begin
+ (* Build it and go *)
+ let c = System.open_in_bin wi.file in
+ wi.ch := Some(c);
+ getAvailableLinesFromWatcher wi
+ end else begin
+ (* Wait for change file to be built *)
+ debug (fun() -> Util.msg
+ "Waiting for change file %s\n" (System.fspathToPrintString wi.file));
+ []
+ end
+ else
+ (* Watcher running and channel built: go ahead and read *)
+ getAvailableLinesFromWatcher wi
+ with Not_found -> begin
+ (* Watcher process not running *)
+ let (changefile,cmd) = watchercmd r in
+ debug (fun() -> Util.msg "Starting watcher on root %s\n" (Common.root2string r));
+ let _ = System.open_process_in cmd in
+ let wi = {file = changefile; ch = ref None; lines = ref []; chars = ref ""} in
+ watchers := RootMap.add r wi !watchers;
+ []
+ end)
-let suckOnWatcherFileRoot: Common.root -> System.fspath -> (string list) Lwt.t =
+let suckOnWatcherFileRoot: Common.root -> Common.root -> (string list) Lwt.t =
Remote.registerRootCmd
"suckOnWatcherFile"
- (fun (fspath, n) ->
- Lwt.return (suckOnWatcherFileLocal n))
+ (fun (fspath, r) ->
+ Lwt.return (suckOnWatcherFileLocal r))
-let suckOnWatcherFiles n =
+let suckOnWatcherFiles () =
Safelist.concat
(Lwt_unix.run (
- Globals.allRootsMap (fun r -> suckOnWatcherFileRoot r n)))
+ Globals.allRootsMap (fun r -> suckOnWatcherFileRoot r r)))
let synchronizePathsFromFilesystemWatcher () =
- let watcherfilename = System.fspathFromString "" in
- (* STOPPED HERE -- need to find the program using watcherosx preference
- and invoke it (on both hosts, if there are two!) using a redirect to
- get the output into a temp file... *)
+ (* Make sure the confirmbigdeletes preference is turned off. If it's on, then
+ deletions will fail because every deletion is a "big deletion"! *)
+ Prefs.set Globals.confirmBigDeletes false;
let rec loop failedPaths =
- let newpaths = suckOnWatcherFiles watcherfilename in
+ let newpaths = suckOnWatcherFiles () in
if newpaths <> [] then
display (Printf.sprintf "Changed paths:\n %s\n"
(String.concat "\n " newpaths));
@@ -774,6 +817,8 @@
end in
loop []
+(* ----------------- Repetition ---------------- *)
+
let synchronizeUntilNoFailures () =
let initValueOfPathsPreference = Prefs.read Globals.paths in
let rec loop triesLeft =
@@ -809,6 +854,8 @@
synchronizeUntilDone ()
end
+(* ----------------- Startup ---------------- *)
+
let start interface =
if interface <> Uicommon.Text then
Util.msg "This Unison binary only provides the text GUI...\n";
Modified: trunk/src/uitext.mli
===================================================================
--- trunk/src/uitext.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uitext.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,4 +1,4 @@
(* Unison file synchronizer: src/uitext.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
module Body : Uicommon.UI
Modified: trunk/src/unicode.ml
===================================================================
--- trunk/src/unicode.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/unicode.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/unicode.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/unicode.mli
===================================================================
--- trunk/src/unicode.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/unicode.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/unicode.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
exception Invalid
Modified: trunk/src/update.ml
===================================================================
--- trunk/src/update.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/update.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/update.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/update.mli
===================================================================
--- trunk/src/update.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/update.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/update.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
module NameMap : Map.S with type key = Name.t
@@ -77,3 +77,8 @@
(* (For breaking the dependency loop between update.ml and stasher.ml...) *)
val setStasherFun : (Fspath.t -> Path.local -> unit) -> unit
+
+(* Conjoin the canonical name of the current host and the canonical
+ presentation of the current fspath with the list of names/fspaths of
+ all the roots and the current archive format *)
+val archiveHash : Fspath.t -> string
Modified: trunk/src/uutil.ml
===================================================================
--- trunk/src/uutil.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uutil.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/uutil.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/uutil.mli
===================================================================
--- trunk/src/uutil.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/uutil.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/uutil.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* This module collects a number of low-level, Unison-specific utility
functions. It is kept separate from the Util module so that that module
Modified: trunk/src/xferhint.ml
===================================================================
--- trunk/src/xferhint.ml 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/xferhint.ml 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/xferhint.ml *)
-(* Copyright 1999-2009, Benjamin C. Pierce
+(* Copyright 1999-2010, Benjamin C. Pierce
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Modified: trunk/src/xferhint.mli
===================================================================
--- trunk/src/xferhint.mli 2010-05-20 09:09:24 UTC (rev 448)
+++ trunk/src/xferhint.mli 2010-05-28 03:15:14 UTC (rev 449)
@@ -1,5 +1,5 @@
(* Unison file synchronizer: src/xferhint.mli *)
-(* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *)
+(* Copyright 1999-2010, Benjamin C. Pierce (see COPYING for details) *)
(* This module maintains a cache that can be used to map
an Os.fingerprint to a (Fspath.t * Path.t) naming a file that *may*
More information about the Unison-hackers
mailing list