From ben at opendarwin.org Sat Apr 1 23:17:29 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sat, 1 Apr 2006 23:17:29 -0500 Subject: [Unison-hackers] [unison-svn] r130 - in trunk/src: . uimac Message-ID: <200604020417.k324HTeJ024510@canfield.cis.upenn.edu> Author: ben Date: 2006-04-01 23:17:24 -0500 (Sat, 01 Apr 2006) New Revision: 130 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/ReconItem.h trunk/src/uimac/ReconItem.m trunk/src/uimac/ReconTableView.h trunk/src/uimac/ReconTableView.m trunk/src/uimacbridge.ml Log: Mac GUI -- improve diff and merge behaviour: * Disable diff and merge buttons/menuitems when appropriate * Open the diff window in a useful place the first time it's used From ben at opendarwin.org Sat Apr 1 23:34:54 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sat, 1 Apr 2006 23:34:54 -0500 Subject: [Unison-hackers] [unison-svn] r131 - in trunk/src: . uimac Message-ID: <200604020434.k324Ys1R024781@canfield.cis.upenn.edu> Author: ben Date: 2006-04-01 23:34:51 -0500 (Sat, 01 Apr 2006) New Revision: 131 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m trunk/src/uimac/ReconTableView.h trunk/src/uimac/ReconTableView.m Log: Mac GUI: More correct handling of tableView initialisation (supercedes 2.19.15) From ben at opendarwin.org Sun Apr 2 03:08:43 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 2 Apr 2006 03:08:43 -0400 Subject: [Unison-hackers] [unison-svn] r132 - in trunk/src: . uimac uimac/tableicons uimac/uimac.xcodeproj Message-ID: <200604020708.k3278hDP026933@canfield.cis.upenn.edu> Author: ben Date: 2006-04-02 03:08:33 -0400 (Sun, 02 Apr 2006) New Revision: 132 Added: trunk/src/uimac/tableicons/ trunk/src/uimac/tableicons/table-conflict.tif trunk/src/uimac/tableicons/table-error.tif trunk/src/uimac/tableicons/table-left-blue.tif trunk/src/uimac/tableicons/table-left-green.tif trunk/src/uimac/tableicons/table-merge.tif trunk/src/uimac/tableicons/table-right-blue.tif trunk/src/uimac/tableicons/table-right-green.tif trunk/src/uimac/tableicons/table-skip.tif Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m trunk/src/uimac/ProfileTableView.m trunk/src/uimac/ReconItem.h trunk/src/uimac/ReconItem.m trunk/src/uimac/ReconTableView.m trunk/src/uimac/uimac.xcodeproj/project.pbxproj trunk/src/uimacbridge.ml Log: Mac GUI: Add coloured icons indicating status of reconItems, similar to GTK2 GUI. From ben at opendarwin.org Sun Apr 2 03:17:22 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 2 Apr 2006 03:17:22 -0400 Subject: [Unison-hackers] [unison-svn] r133 - in trunk/src: . uimac/toolbar Message-ID: <200604020717.k327HM5b027083@canfield.cis.upenn.edu> Author: ben Date: 2006-04-02 03:17:16 -0400 (Sun, 02 Apr 2006) New Revision: 133 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/toolbar/add.tif trunk/src/uimac/toolbar/diff.tif trunk/src/uimac/toolbar/go.tif trunk/src/uimac/toolbar/left.tif trunk/src/uimac/toolbar/merge.tif trunk/src/uimac/toolbar/quit.tif trunk/src/uimac/toolbar/restart.tif trunk/src/uimac/toolbar/right.tif trunk/src/uimac/toolbar/save.tif trunk/src/uimac/toolbar/skip.tif Log: Mac GUI: Strip metadata from toolbar tiff files, dramatically reducing file size, apparently without ill effects From ben at opendarwin.org Sun Apr 2 03:28:46 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sat, 1 Apr 2006 23:28:46 -0800 Subject: [Unison-hackers] Mac GUI Message-ID: Hi folks, SVN revision 133 (2.19.22) concludes my Mac GUI hackathon for the time being. I look forward to a blissful lack of bug reports. I have: * added a toolbar to perform common functions * added a GUI for diffing files with help from Jerome * added coloured indicators for the state of the reconItems * fixed numerous GUI glitches I have tried not to be inventive; I've just copied across all the things that I missed from the GTK2 GUI. So hopefully none of this will cause any problems. The only issue I am aware of is: I have always found the GTK2 GUI confusing because it does not distinguish between conflicting reconitems that the user has done nothing about, and conflicting reconitems that the user has chosen to skip. So, reconitems that I have intentionally skipped are still marked with a red '?', making me worry about them. Therefore, in the Mac GUI, I have added a flag that indicates when the user has actively decided to skip a conflicting reconitem; such items are marked 'skip' rather than 'conflicts'. This makes a lot more sense to me; however, it is different from the GTK2 UI. If this change is wrong somehow, or just if the difference between the UIs is objectionable, I can of course get rid of the flag. Now would be a great time for anyone who's interested to build, test and complain about anything I messed up. Ben From bcpierce at cis.upenn.edu Sun Apr 2 07:37:24 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Sun, 2 Apr 2006 12:37:24 +0100 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: Message-ID: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> > SVN revision 133 (2.19.22) concludes my Mac GUI hackathon for the time > being. All the changes look fantastic and the new "look" is much much nicer than the old one. Many thanks for your contributions, Ben! > The only issue I am aware of is: I have always found the GTK2 GUI > confusing because it does not distinguish between conflicting > reconitems that the user has done nothing about, and conflicting > reconitems that the user has chosen to skip. So, reconitems that I > have intentionally skipped are still marked with a red '?', making me > worry about them. Therefore, in the Mac GUI, I have added a flag that > indicates when the user has actively decided to skip a conflicting > reconitem; such items are marked 'skip' rather than 'conflicts'. This > makes a lot more sense to me; however, it is different from the GTK2 > UI. If this change is wrong somehow, or just if the difference > between the UIs is objectionable, I can of course get rid of the flag. I don't mind having the GUIs diverge -- I doubt if there are many people that regularly use more than one, and they are already rather different anyway. (We try to keep shortcut keys and things like that roughly consistent, of course, and to avoid breaking one while improving another.) > > Now would be a great time for anyone who's interested to build, test > and complain about anything I messed up. Will do. :-) - Benjamin From trevor at research.att.com Sun Apr 2 12:44:39 2006 From: trevor at research.att.com (Trevor Jim) Date: Sun, 2 Apr 2006 12:44:39 -0400 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: Message-ID: On Apr 2, 2006, at 3:28 AM, Ben Willmore wrote: > I have: > * added a toolbar to perform common functions > * added a GUI for diffing files with help from Jerome > * added coloured indicators for the state of the reconItems > * fixed numerous GUI glitches > > I have tried not to be inventive; I've just copied across all the > things that I missed from the GTK2 GUI. So hopefully none of this > will cause any problems. All the changes have been positive. Thanks for your work! > The only issue I am aware of is: I have always found the GTK2 GUI > confusing I agree with Benli, it's fine to diverge the guis. That's the only way to improve things, it's a bit much to ask that any improvement be applied to all guis, no one would want to hack. Here's something that I don't like about the current gui. I mention it because maybe it is not worth hacking around to deal with following/scrolling to see the sync activity. The main display now is used for two things: (1) looking at/changing the action to be taken for each file, and (2) giving the status of each file during/after syncing. I think it's a mistake to have the main display handle both of these functions. For example, it is hard to see from the display whether a sync has taken place -- just a "done" in one column. If you miss this, you might think that you can still change the action of a file. For example if you start a sync and then walk away from your machine and then come back an hour later you might not remember you had started the sync -- it's confusing. I think it would be better to separate things: use the existing main display to choose the actions. Once you say "go" that display goes away and you see that various files are being synced. You get a progress bar and a cancel button only. Once the sync is done you get another display that tells you what happened, but it does not look like the current main display. It should always be evident what mode you are in. We could probably learn something from iSync here. -Trevor From trevor at research.att.com Sun Apr 2 12:51:59 2006 From: trevor at research.att.com (Trevor Jim) Date: Sun, 2 Apr 2006 12:51:59 -0400 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: Message-ID: A couple of gui ideas so I don't forget. * Sort by the "action" column. This lets me make sure that a sync is one way. * Sort by the "local" or other column. This lets me easily see what has been created, changed, or deleted. * Instead of column titles "local", "action", and remote machine name, "Here", "What to do", "There". * Keychain integration. From ben at opendarwin.org Sun Apr 2 16:49:08 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 2 Apr 2006 16:49:08 -0400 Subject: [Unison-hackers] [unison-svn] r134 - in trunk/src: . uimac Message-ID: <200604022049.k32Kn8ii006344@canfield.cis.upenn.edu> Author: ben Date: 2006-04-02 16:49:06 -0400 (Sun, 02 Apr 2006) New Revision: 134 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m trunk/src/uimacbridge.ml Log: Mac GUI: Remove broken autoscroll code (from 2.19.17) From ben at opendarwin.org Sun Apr 2 22:54:15 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 2 Apr 2006 22:54:15 -0400 Subject: [Unison-hackers] [unison-svn] r135 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib Message-ID: <200604030254.k332sFb6013663@canfield.cis.upenn.edu> Author: ben Date: 2006-04-02 22:54:05 -0400 (Sun, 02 Apr 2006) New Revision: 135 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/MainMenu.nib/info.nib trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib trunk/src/uimac/MyController.m trunk/src/uimac/ReconItem.h trunk/src/uimac/ReconItem.m trunk/src/uimac/ReconTableView.h trunk/src/uimac/ReconTableView.m Log: Mac GUI: Add ability to sort the reconitem table by the various columns. Clicking on a column header sorts on that column. By default, the reconitems are sorted by action in the following order of decreasing urgency: Conflict Skip Merge Left-against-recommendation Right-against-recommendation Left-following-recommendation Right-following-recommendation (Error) From ben at opendarwin.org Sun Apr 2 22:54:29 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sun, 2 Apr 2006 19:54:29 -0700 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: Message-ID: On 4/2/06, Trevor Jim wrote: > A couple of gui ideas so I don't forget. > > * Sort by the "action" column. This lets me make sure > that a sync is one way. > > * Sort by the "local" or other column. This lets me easily see > what has been created, changed, or deleted. I did this. It's pretty useful. However, the code is a bit hairy -- a lot of hardcoded string comparisons. Perhaps it's inevitable because we're essentially sorting arbitrary objects in arbitrary orders, but if there's a better way, I'm happy to take suggestions. Ben From alan.schmitt at polytechnique.org Mon Apr 3 04:05:44 2006 From: alan.schmitt at polytechnique.org (Alan Schmitt) Date: Mon, 3 Apr 2006 10:05:44 +0200 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: Message-ID: <84E3B6AD-AB52-49BE-9C1C-A80B8DFB994A@polytechnique.org> On 3 avr. 06, at 04:54, Ben Willmore wrote: > On 4/2/06, Trevor Jim wrote: >> A couple of gui ideas so I don't forget. >> >> * Sort by the "action" column. This lets me make sure >> that a sync is one way. >> >> * Sort by the "local" or other column. This lets me easily see >> what has been created, changed, or deleted. > > I did this. It's pretty useful. I just tried the new version, and it's really nice. The feature I like best: sort by sync result, to see what has failed. Alan -- Alan Schmitt The hacker: someone who figured things out and made something cool happen. .O. ..O OOO -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 186 bytes Desc: This is a digitally signed message part Url : http://lists.seas.upenn.edu/pipermail/unison-hackers/attachments/20060403/a4273c6b/PGP.pgp From trevor at research.att.com Mon Apr 3 14:06:43 2006 From: trevor at research.att.com (Trevor Jim) Date: Mon, 3 Apr 2006 14:06:43 -0400 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: Message-ID: <815C8A2D-3AFF-4490-8B01-E3E38ADE25CD@research.att.com> I guess the actual sorting is done by Cocoa, and you are simply supplying an appropriate string for each item? If so I don't think there's much to improve. Maybe if Cocoa can handle ints instead of strings it would be a bit more efficient. For example if I recall we sort by path name and give each reconitem an index based on that, the index could be used in that case. -Trevor On Apr 2, 2006, at 10:54 PM, Ben Willmore wrote: > I did this. It's pretty useful. > > However, the code is a bit hairy -- a lot of hardcoded string > comparisons. Perhaps it's inevitable because we're essentially > sorting arbitrary objects in arbitrary orders, but if there's a better > way, I'm happy to take suggestions. From ben at opendarwin.org Mon Apr 3 22:18:47 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Mon, 3 Apr 2006 22:18:47 -0400 Subject: [Unison-hackers] [unison-svn] r136 - in trunk/src: . uimac Message-ID: <200604040218.k342Ili9005995@canfield.cis.upenn.edu> Author: ben Date: 2006-04-03 22:18:34 -0400 (Mon, 03 Apr 2006) New Revision: 136 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/ProfileTableView.m trunk/src/uimac/ReconTableView.m Log: Mac GUI: Fix bug spotted by Benjamin where pressing a 'dead' key in tables causes a crash From ben at opendarwin.org Wed Apr 5 00:06:38 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Wed, 5 Apr 2006 00:06:38 -0400 Subject: [Unison-hackers] [unison-svn] r137 - in trunk/src: . uimac Message-ID: <200604050406.k3546c0E028962@canfield.cis.upenn.edu> Author: ben Date: 2006-04-05 00:06:33 -0400 (Wed, 05 Apr 2006) New Revision: 137 Modified: trunk/src/Makefile trunk/src/Makefile.OCaml trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/cltool.c Log: Get rid of harmless build erros From tsunamithecat at mac.com Wed Apr 5 00:19:09 2006 From: tsunamithecat at mac.com (Matthew Alford) Date: Tue, 4 Apr 2006 21:19:09 -0700 Subject: [Unison-hackers] [unison-svn] r137 - in trunk/src: . uimac In-Reply-To: <200604050406.k3546c0E028962@canfield.cis.upenn.edu> References: <200604050406.k3546c0E028962@canfield.cis.upenn.edu> Message-ID: Thanks for all the MacOS dev work! Sorry to be a bonehead, but where does one go to download the latest dev version? The buttons pointing to it on the Unison website don't seem to give 2.17.anything. Alternately, has someone compiled a binary they would be willing to share. Thanks, Matthew On Apr 4, 2006, at 9:06 PM, ben at opendarwin.org wrote: > Author: ben > Date: 2006-04-05 00:06:33 -0400 (Wed, 05 Apr 2006) > New Revision: 137 > > Modified: > trunk/src/Makefile > trunk/src/Makefile.OCaml > trunk/src/RECENTNEWS > trunk/src/mkProjectInfo.ml > trunk/src/uimac/cltool.c > Log: > Get rid of harmless build erros > > > _______________________________________________ > Unison-hackers mailing list > Unison-hackers at lists.seas.upenn.edu > http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers From ben at opendarwin.org Wed Apr 5 02:37:32 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Wed, 5 Apr 2006 02:37:32 -0400 Subject: [Unison-hackers] [unison-svn] r138 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib uimac/toolbar uimac/uimac.xcodeproj Message-ID: <200604050637.k356bWe4032207@canfield.cis.upenn.edu> Author: ben Date: 2006-04-05 02:37:19 -0400 (Wed, 05 Apr 2006) New Revision: 138 Added: trunk/src/uimac/toolbar/rescan.tif Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/MainMenu.nib/classes.nib trunk/src/uimac/English.lproj/MainMenu.nib/info.nib trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/UnisonToolbar.h trunk/src/uimac/UnisonToolbar.m trunk/src/uimac/uimac.xcodeproj/project.pbxproj Log: Mac GUI: * Add button and menu item to rescan current profile * Filter out 'There are N reconitems' messages in status text, to make way for more informative ones From bcpierce at cis.upenn.edu Wed Apr 5 05:01:07 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Wed, 5 Apr 2006 10:01:07 +0100 Subject: [Unison-hackers] [unison-svn] r137 - in trunk/src: . uimac In-Reply-To: References: <200604050406.k3546c0E028962@canfield.cis.upenn.edu> Message-ID: > Sorry to be a bonehead, but where does one go to download the latest > dev version? The buttons pointing to it on the Unison website don't > seem to give 2.17.anything. Sorry for the out of date links on the unison website -- I'll put an up to date version there shortly. It's also easy to get it via Subversion. (If you don't have it installed, there is a good binary package available from Metissian.) - B From ben at opendarwin.org Fri Apr 7 01:22:26 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Fri, 7 Apr 2006 01:22:26 -0400 Subject: [Unison-hackers] [unison-svn] r139 - in trunk/src: . uimac Message-ID: <200604070522.k375MQIS007122@canfield.cis.upenn.edu> Author: ben Date: 2006-04-07 01:22:19 -0400 (Fri, 07 Apr 2006) New Revision: 139 Added: trunk/src/uimac/Info.plist.template Removed: trunk/src/uimac/Info.plist Modified: trunk/src/Makefile trunk/src/Makefile.OCaml trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml Log: Mac GUI: Add accurate version number to Info.plist, so that the cltool/LaunchServices selects the most recent installed version. From ben at opendarwin.org Fri Apr 7 02:36:01 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Fri, 7 Apr 2006 02:36:01 -0400 Subject: [Unison-hackers] [unison-svn] r140 - in trunk/src: . uimac Message-ID: <200604070636.k376a18J008069@canfield.cis.upenn.edu> Author: ben Date: 2006-04-07 02:35:56 -0400 (Fri, 07 Apr 2006) New Revision: 140 Modified: trunk/src/Makefile trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/UnisonToolbar.m Log: Mac GUI: * Get rid of beachball by using a new thread to open new profile * Rearrange toolbar * Fix 'make clean' From alan.schmitt at polytechnique.org Fri Apr 7 04:43:39 2006 From: alan.schmitt at polytechnique.org (Alan Schmitt) Date: Fri, 7 Apr 2006 10:43:39 +0200 Subject: [Unison-hackers] [unison-svn] r140 - in trunk/src: . uimac In-Reply-To: <200604070636.k376a18J008069@canfield.cis.upenn.edu> References: <200604070636.k376a18J008069@canfield.cis.upenn.edu> Message-ID: <95664D57-5E0A-4ED3-A714-82F36F487D6F@polytechnique.org> On 7 avr. 06, at 08:36, ben at opendarwin.org wrote: > Author: ben > Date: 2006-04-07 02:35:56 -0400 (Fri, 07 Apr 2006) > New Revision: 140 > > Modified: > trunk/src/Makefile > trunk/src/RECENTNEWS > trunk/src/mkProjectInfo.ml > trunk/src/uimac/MyController.h > trunk/src/uimac/MyController.m > trunk/src/uimac/UnisonToolbar.m > Log: > Mac GUI: > * Get rid of beachball by using a new thread to open new profile > * Rearrange toolbar > * Fix 'make clean' Something strange is going on here: after reconciling the updates and showing what would update, the "looking for changes" text kept on showing things. I launched the synchronization (cmd-g) and Unison crashed. Alan -- Alan Schmitt The hacker: someone who figured things out and made something cool happen. .O. ..O OOO -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 186 bytes Desc: This is a digitally signed message part Url : http://lists.seas.upenn.edu/pipermail/unison-hackers/attachments/20060407/54608784/PGP.pgp From ben at opendarwin.org Fri Apr 7 12:42:31 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Fri, 7 Apr 2006 12:42:31 -0400 Subject: [Unison-hackers] [unison-svn] r141 - in trunk/src: . uimac Message-ID: <200604071642.k37GgV9U016158@canfield.cis.upenn.edu> Author: ben Date: 2006-04-07 12:42:28 -0400 (Fri, 07 Apr 2006) New Revision: 141 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m Log: Mac GUI: Fix bug where the updates thread would run twice (thanks Alan!) From ben at opendarwin.org Sat Apr 8 19:54:46 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sat, 8 Apr 2006 16:54:46 -0700 Subject: [Unison-hackers] Mac GUI/MyController.* Message-ID: Does anyone have any changes pending for MyController.m / MyController.h ? I plan to reorganise them (just reorder the methods; they're pretty random at the moment), but it will make applying old patches awkward. Ben From ben at opendarwin.org Sat Apr 8 19:55:56 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sat, 8 Apr 2006 16:55:56 -0700 Subject: [Unison-hackers] Mac GUI/MyController.* In-Reply-To: References: Message-ID: If no-one vetoes, I'll just go ahead Ben On 4/8/06, Ben Willmore wrote: > Does anyone have any changes pending for MyController.m / > MyController.h ? I plan to reorganise them (just reorder the methods; > they're pretty random at the moment), but it will make applying old > patches awkward. > > Ben > From dave at boost-consulting.com Sun Apr 9 10:42:33 2006 From: dave at boost-consulting.com (David Abrahams) Date: Sun, 09 Apr 2006 10:42:33 -0400 Subject: [Unison-hackers] Mac GUI References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: Benjamin Pierce writes: >> SVN revision 133 (2.19.22) concludes my Mac GUI hackathon for the time >> being. > > All the changes look fantastic and the new "look" is much much nicer > than the old one. Many thanks for your contributions, Ben! http://www.cis.upenn.edu/~bcpierce/unison/status.html Makes it pretty clear that development on Unison has officially stopped, but it seems like there are all sorts of new goodies appearing now. I am really excited about Unison's potential to help me maintain a single home directory across my stable machines and my laptops. Should I download an official release or build from a branch of SVN, or...? P.S. Hi, Benli; long time no anything! (I knew you at CMU). -- Dave Abrahams Boost Consulting www.boost-consulting.com From ben at opendarwin.org Sun Apr 9 14:00:55 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 9 Apr 2006 14:00:55 -0400 Subject: [Unison-hackers] [unison-svn] r142 - in trunk/src: . uimac Message-ID: <200604091800.k39I0tRN001292@canfield.cis.upenn.edu> Author: ben Date: 2006-04-09 14:00:52 -0400 (Sun, 09 Apr 2006) New Revision: 142 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m Log: Mac GUI: Reorganise MyController.*. No code changes From ben at opendarwin.org Sun Apr 9 14:03:48 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 9 Apr 2006 14:03:48 -0400 Subject: [Unison-hackers] [unison-svn] r143 - in trunk/src: . uimac Message-ID: <200604091803.k39I3m0h001310@canfield.cis.upenn.edu> Author: ben Date: 2006-04-09 14:03:45 -0400 (Sun, 09 Apr 2006) New Revision: 143 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/ReconTableView.m Log: Mac GUI: * Prevent crash when clicking rescan rapidly * Move code from MyController->awakeFromNib to more appropriate places From ben at opendarwin.org Sun Apr 9 14:06:55 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 9 Apr 2006 14:06:55 -0400 Subject: [Unison-hackers] [unison-svn] r144 - in trunk/src: . uimac Message-ID: <200604091806.k39I6tPY001389@canfield.cis.upenn.edu> Author: ben Date: 2006-04-09 14:06:51 -0400 (Sun, 09 Apr 2006) New Revision: 144 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m Log: Mac GUI: Fix numerous GUI glitches caused by attempting to update GUI from subsidiary threads. From ben at opendarwin.org Sun Apr 9 14:17:36 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 9 Apr 2006 14:17:36 -0400 Subject: [Unison-hackers] [unison-svn] r145 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib uimac/uimac.xcodeproj Message-ID: <200604091817.k39IHaiC001531@canfield.cis.upenn.edu> Author: ben Date: 2006-04-09 14:17:28 -0400 (Sun, 09 Apr 2006) New Revision: 145 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/MainMenu.nib/classes.nib trunk/src/uimac/English.lproj/MainMenu.nib/info.nib trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/uimac.xcodeproj/project.pbxproj trunk/src/uimacbridge.ml Log: Mac GUI: Add global progress bar From ben at opendarwin.org Sun Apr 9 15:03:03 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 9 Apr 2006 15:03:03 -0400 Subject: [Unison-hackers] [unison-svn] r146 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib Message-ID: <200604091903.k39J330Q002085@canfield.cis.upenn.edu> Author: ben Date: 2006-04-09 15:02:58 -0400 (Sun, 09 Apr 2006) New Revision: 146 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/MainMenu.nib/info.nib trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m trunk/src/uimac/ReconTableView.m Log: Mac GUI: Small fixes: * Threadsafe row selection and sorting * Allow user to resize windows * Stop column indicator flashing on rescan From ben at opendarwin.org Sun Apr 9 22:16:14 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 9 Apr 2006 22:16:14 -0400 Subject: [Unison-hackers] [unison-svn] r147 - in trunk/src: . uimac Message-ID: <200604100216.k3A2GEfB007850@canfield.cis.upenn.edu> Author: ben Date: 2006-04-09 22:16:11 -0400 (Sun, 09 Apr 2006) New Revision: 147 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m trunk/src/uimacbridge.ml Log: Mac GUI: * Stop diff from affecting progress bar * Better validation of diff button * Fix threadsafety issue with rescan From ben at opendarwin.org Mon Apr 10 00:07:26 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Mon, 10 Apr 2006 00:07:26 -0400 Subject: [Unison-hackers] [unison-svn] r148 - in trunk/src: . uimac uimac/tableicons Message-ID: <200604100407.k3A47QjV009410@canfield.cis.upenn.edu> Author: ben Date: 2006-04-10 00:07:19 -0400 (Mon, 10 Apr 2006) New Revision: 148 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m trunk/src/uimac/ReconItem.m trunk/src/uimac/tableicons/table-error.tif trunk/src/uimacbridge.ml Log: Mac GUI: * make sure progress bar always gets to the end * improve handing of reconitems with errors * fix window positioning From ben at opendarwin.org Mon Apr 10 01:06:16 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Mon, 10 Apr 2006 01:06:16 -0400 Subject: [Unison-hackers] [unison-svn] r149 - in trunk/src: . uimac Message-ID: <200604100506.k3A56GsO010249@canfield.cis.upenn.edu> Author: ben Date: 2006-04-10 01:06:13 -0400 (Mon, 10 Apr 2006) New Revision: 149 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m Log: Mac GUI: Fix rescan/selection bug From alan.schmitt at polytechnique.org Mon Apr 10 03:13:52 2006 From: alan.schmitt at polytechnique.org (Alan Schmitt) Date: Mon, 10 Apr 2006 09:13:52 +0200 Subject: [Unison-hackers] [unison-svn] r145 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib uimac/uimac.xcodeproj In-Reply-To: <200604091817.k39IHaiC001531@canfield.cis.upenn.edu> References: <200604091817.k39IHaiC001531@canfield.cis.upenn.edu> Message-ID: <0989C74B-2D8A-43E4-86C7-FF3F7974A762@polytechnique.org> On 9 avr. 06, at 20:17, ben at opendarwin.org wrote: > Mac GUI: Add global progress bar Nice ;-) -- Alan Schmitt The hacker: someone who figured things out and made something cool happen. .O. ..O OOO -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 186 bytes Desc: This is a digitally signed message part Url : http://lists.seas.upenn.edu/pipermail/unison-hackers/attachments/20060410/c3958791/PGP.pgp From bcpierce at cis.upenn.edu Sun Apr 9 15:21:30 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Sun, 9 Apr 2006 20:21:30 +0100 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: > http://www.cis.upenn.edu/~bcpierce/unison/status.html > > Makes it pretty clear that development on Unison has officially > stopped, but it seems like there are all sorts of new goodies > appearing now. The true story is that, although official development has stopped, all the original developers still use Unison every day, and occasionally we get hack attacks; also, occasionally someone like Ben gets interested in looking under the hood (and then gets a hack attack :-), and more good things happen. > I am really excited about Unison's potential to help > me maintain a single home directory across my stable machines and my > laptops. Should I download an official release or build from a branch > of SVN, or...? 2.17 seems to be working well for most people. If you're using a Mac or experience problems with the backup functionality (where we've fixed some bugs since 2.17), you may want to build yourself a new version from the latest svn. Regards, - Benjamin From ben at opendarwin.org Tue Apr 11 04:22:44 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Tue, 11 Apr 2006 04:22:44 -0400 Subject: [Unison-hackers] [unison-svn] r150 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib Message-ID: <200604110822.k3B8MiLo005358@canfield.cis.upenn.edu> Author: ben Date: 2006-04-11 04:22:36 -0400 (Tue, 11 Apr 2006) New Revision: 150 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/MainMenu.nib/info.nib trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib trunk/src/uimac/MyController.m trunk/src/uimac/ReconItem.h trunk/src/uimac/ReconItem.m trunk/src/uimacbridge.ml Log: Mac GUI: * Display error message for failed reconitems * Auto-hide scroll bars From ben at opendarwin.org Wed Apr 12 00:10:27 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Wed, 12 Apr 2006 00:10:27 -0400 Subject: [Unison-hackers] [unison-svn] r151 - in trunk/src: . uimac Message-ID: <200604120410.k3C4AR4q022245@canfield.cis.upenn.edu> Author: ben Date: 2006-04-12 00:10:25 -0400 (Wed, 12 Apr 2006) New Revision: 151 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/ReconItem.h trunk/src/uimac/ReconItem.m trunk/src/uimac/ReconTableView.m Log: Mac GUI: Preserve row selection when table is resorted From ben at opendarwin.org Wed Apr 12 00:54:56 2006 From: ben at opendarwin.org (Ben Willmore) Date: Tue, 11 Apr 2006 21:54:56 -0700 Subject: [Unison-hackers] two questions Message-ID: 1. Is there a good reason why it should be impossible to diff a file when the contents have been modified in one replica, and only the properties in the other (Common.fileInfos)? Or is this a small bug? 2. On the Mac, can anyone tell me how to launch opendiff in the background as my external diff command? I've tried many differently-escaped/quoted variants of... diff = opendiff CURRENT1 CURRENT2 & ... without success. What really puzzles me is it returns immediately when called from the command line. Ben From ben at opendarwin.org Wed Apr 12 01:00:07 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Wed, 12 Apr 2006 01:00:07 -0400 Subject: [Unison-hackers] [unison-svn] r152 - in trunk/src: . uimac Message-ID: <200604120500.k3C507gp023046@canfield.cis.upenn.edu> Author: ben Date: 2006-04-12 01:00:05 -0400 (Wed, 12 Apr 2006) New Revision: 152 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.m Log: Mac GUI: Don't open diff window if an external command is used From alan.schmitt at polytechnique.org Wed Apr 12 04:06:27 2006 From: alan.schmitt at polytechnique.org (Alan Schmitt) Date: Wed, 12 Apr 2006 10:06:27 +0200 Subject: [Unison-hackers] [unison-svn] r150 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: <200604110822.k3B8MiLo005358@canfield.cis.upenn.edu> References: <200604110822.k3B8MiLo005358@canfield.cis.upenn.edu> Message-ID: <68612EE8-6A73-44BD-9E5E-ED279325AC82@polytechnique.org> On 11 avr. 06, at 10:22, ben at opendarwin.org wrote: > * Display error message for failed reconitems Thank you very much for this, it's very useful. (By the way, I keep compiling and testing new versions as I see your commit messages, if you don't hear from me, it means I did not find anything broken.) Alan -- Alan Schmitt The hacker: someone who figured things out and made something cool happen. .O. ..O OOO -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 186 bytes Desc: This is a digitally signed message part Url : http://lists.seas.upenn.edu/pipermail/unison-hackers/attachments/20060412/daef5f19/PGP.pgp From bcpierce at cis.upenn.edu Wed Apr 12 08:51:40 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Wed, 12 Apr 2006 13:51:40 +0100 Subject: [Unison-hackers] two questions In-Reply-To: References: Message-ID: > 1. Is there a good reason why it should be impossible to diff a file > when the contents have been modified in one replica, and only the > properties in the other (Common.fileInfos)? Or is this a small bug? I consider it a bug -- it should always make sense to diff a file. (I've been annoyed more than once by not being able to.) - B From bcpierce at cis.upenn.edu Wed Apr 12 08:54:52 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Wed, 12 Apr 2006 13:54:52 +0100 Subject: [Unison-hackers] [unison-svn] r150 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: <68612EE8-6A73-44BD-9E5E-ED279325AC82@polytechnique.org> References: <200604110822.k3B8MiLo005358@canfield.cis.upenn.edu> <68612EE8-6A73-44BD-9E5E-ED279325AC82@polytechnique.org> Message-ID: <0E7BAAA1-DD7F-400B-95D6-F400DCBB28D8@cis.upenn.edu> >> * Display error message for failed reconitems > > Thank you very much for this, it's very useful. Yes! > > (By the way, I keep compiling and testing new versions as I see > your commit messages, if you don't hear from me, it means I did not > find anything broken.) Me too, FWIW. - Benjamin From ben at opendarwin.org Wed Apr 12 16:45:46 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Wed, 12 Apr 2006 16:45:46 -0400 Subject: [Unison-hackers] [unison-svn] r153 - in trunk/src: . uimac Message-ID: <200604122045.k3CKjkLu004995@canfield.cis.upenn.edu> Author: ben Date: 2006-04-12 16:45:43 -0400 (Wed, 12 Apr 2006) New Revision: 153 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m Log: Mac GUI: Fix password prompt From dave at boost-consulting.com Sun Apr 16 10:49:52 2006 From: dave at boost-consulting.com (David Abrahams) Date: Sun, 16 Apr 2006 10:49:52 -0400 Subject: [Unison-hackers] Mac GUI References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: Benjamin Pierce writes: >> http://www.cis.upenn.edu/~bcpierce/unison/status.html >> >> Makes it pretty clear that development on Unison has officially >> stopped, but it seems like there are all sorts of new goodies >> appearing now. > > The true story is that, although official development has stopped, > all the original developers still use Unison every day, and > occasionally we get hack attacks; also, occasionally someone like Ben > gets interested in looking under the hood (and then gets a hack > attack :-), and more good things happen. > >> I am really excited about Unison's potential to help >> me maintain a single home directory across my stable machines and my >> laptops. Should I download an official release or build from a branch >> of SVN, or...? > > 2.17 seems to be working well for most people. If you're using a > Mac I am, among other things > or experience problems with the backup functionality (where we've > fixed some bugs since 2.17), you may want to build yourself a new > version from the latest svn. Well, trying on my intel-based Mac has been interesting: GOBI doesn't install at all (some problem recognizing the Clambda module) and their bug tracker seems to be completely busted, OCaml will only build unoptimized... ...I don't see any instructions for building Unison, and there's no configure, but plain "make" yields: ocamlc -o src/mkProjectInfo src/mkProjectInfo.ml src/mkProjectInfo > src/Makefile.ProjectInfo make -C src UISTYLE = mac Building for Unix NATIVE = true THREADS = false STATIC = false OSTYPE = OSARCH = osx echo 'let myName = "'unison'";;' > ubase/projectInfo.ml echo 'let myVersion = "'2.19.42'";;' >> ubase/projectInfo.ml echo 'let myMajorVersion = "'2.19'";;' >> ubase/projectInfo.ml ocamlopt: ubase/projectInfo.ml ---> ubase/projectInfo.cmx ocamlopt -I lwt -I ubase -c /Users/dave/src/unison/src/ubase/projectInfo.ml make[1]: ocamlopt: Command not found make[1]: *** [ubase/projectInfo.cmx] Error 127 make: *** [src] Error 2 (ocamlopt didn't build, so this should be no surprise) and the xcode project yields: Building target ?uimac? of project ?uimac? ? (2 errors) Checking DependenciesInfo.plist file at /Users/dave/src/unison/src/uimac/Info.plist missing; build setting may be incorrect. Info.plist file at /Users/dave/src/unison/src/uimac/Info.plist missing; build setting may be incorrect. mkdir /Users/dave/src/unison/src/uimac/build/Development/Unison.app/Contents cd /Users/dave/src/unison/src/uimac /System/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -resolve-src-symlinks /Users/dave/builds/uimac.build/Development/uimac.build/Info.plist /Users/dave/src/unison/src/uimac/build/Development/Unison.app/Contents pbxcp: Info.plist: No such file or directory pbxcp: Info.plist: No such file or directory Build failed (2 errors) Not sure where to go from here. Any clues for me? -- Dave Abrahams Boost Consulting www.boost-consulting.com From dave at boost-consulting.com Sun Apr 16 11:07:52 2006 From: dave at boost-consulting.com (David Abrahams) Date: Sun, 16 Apr 2006 11:07:52 -0400 Subject: [Unison-hackers] Mac GUI References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: David Abrahams writes: >> 2.17 seems to be working well for most people. If you're using a >> Mac > > I am, among other things So, more fun: I installed 2.17.1 from http://www.cs.haifa.ac.il/%7Eshuly/unison/ (linked to from the official Unison page) and started going through the tutorial. Wanted to try the command-line tool so I selected "Install command-line tool" from the menu and then went to the terminal (this is *very* early in the tutorial) and did unison a.tmp b.tmp 2006-04-16 11:00:18.198 Unison[17951] Connecting... 2006-04-16 11:00:18.199 Unison[17951] Connected. 2006-04-16 11:00:18.540 Unison[17951] Uncaught exception: File "/Users/vqv/src/unison-2.17.1/globals.ml", line 70, characters 9-15: Assertion failed -- Dave Abrahams Boost Consulting www.boost-consulting.com From ben at opendarwin.org Sun Apr 16 11:43:43 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sun, 16 Apr 2006 08:43:43 -0700 Subject: [Unison-hackers] Mac GUI In-Reply-To: References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: Hi David, You should be able to get a working version of ocamlopt running on Intel: http://groups.google.com/group/fa.caml/browse_frm/thread/0dc0545a76842394/caa62f340ea258ce?lnk=raot#caa62f340ea258ce Having done that, 'make' will create an app bundle in uimac/build/Default/Unison.app which you can copy to a convenient location. > unison a.tmp b.tmp > > do. Then...> > > 2006-04-16 11:00:18.198 Unison[17951] Connecting... > 2006-04-16 11:00:18.199 Unison[17951] Connected. > 2006-04-16 11:00:18.540 Unison[17951] Uncaught exception: File "/Users/vqv/src/unison-2.17.1/globals.ml", line 70, characters 9-15: Assertion failed It looks like the GUI version ignores pairs of roots specified on the command line like this. In which case you maybe have a corrupt or empty profile in your ~/.unison directory which is being read and causing this error. Ben From dave at boost-consulting.com Sun Apr 16 14:13:55 2006 From: dave at boost-consulting.com (David Abrahams) Date: Sun, 16 Apr 2006 14:13:55 -0400 Subject: [Unison-hackers] Mac GUI References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: "Ben Willmore" writes: > You should be able to get a working version of ocamlopt running on Intel: > > http://groups.google.com/group/fa.caml/browse_frm/thread/0dc0545a76842394/caa62f340ea258ce?lnk=raot#caa62f340ea258ce Hi Ben, 'twould be nice, yeah. Unfortunately (-t added for more verbose output): cvs -t -d ':pserver:anonymous at camlcvs.inria.fr:/caml' co -r release309 ocaml -> main loop with CVSROOT=:pserver:anonymous at camlcvs.inria.fr:/caml -> safe_location( where=(null) ) -> Connecting to camlcvs.inria.fr(128.93.11.23):2401 PAM start error: Critical error - immediate abort Fatal error, aborting. cvs [checkout aborted]: unrecognized auth response from camlcvs.inria.fr: pam failed to release authenticator -> Lock_Cleanup() boonen:~/src dave$ > Having done that, 'make' will create an app bundle in > uimac/build/Default/Unison.app which you can copy to a convenient > location. > >> unison a.tmp b.tmp >> >> > do. Then...> >> >> 2006-04-16 11:00:18.198 Unison[17951] Connecting... >> 2006-04-16 11:00:18.199 Unison[17951] Connected. >> 2006-04-16 11:00:18.540 Unison[17951] Uncaught exception: File "/Users/vqv/src/unison-2.17.1/globals.ml", line 70, characters 9-15: Assertion failed > > It looks like the GUI version ignores pairs of roots specified on the > command line like this. Wasn't this supposed to be running the non-GUI version in the first place, though? > In which case you maybe have a corrupt or > empty profile in your ~/.unison directory which is being read and > causing this error. I don't have a ~/.unison directory. Thanks for your attention, Dave -- Dave Abrahams Boost Consulting www.boost-consulting.com From dave at boost-consulting.com Sun Apr 16 15:35:08 2006 From: dave at boost-consulting.com (David Abrahams) Date: Sun, 16 Apr 2006 15:35:08 -0400 Subject: [Unison-hackers] Mac GUI References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: David Abrahams writes: >> http://groups.google.com/group/fa.caml/browse_frm/thread/0dc0545a76842394/caa62f340ea258ce?lnk=raot#caa62f340ea258ce > > Hi Ben, > > 'twould be nice, yeah. Unfortunately (-t added for more verbose output): > > cvs -t -d ':pserver:anonymous at camlcvs.inria.fr:/caml' co -r release309 ocaml > -> main loop with CVSROOT=:pserver:anonymous at camlcvs.inria.fr:/caml > -> safe_location( where=(null) ) > -> Connecting to camlcvs.inria.fr(128.93.11.23):2401 > PAM start error: Critical error - immediate abort > Fatal error, aborting. > cvs [checkout aborted]: unrecognized auth response from camlcvs.inria.fr: pam failed to release authenticator > -> Lock_Cleanup() > boonen:~/src dave$ Ah, tricky. Google helpfully turns "anoncvs-at-whatever" into "anon...-at-whatever", which I read as "anonymous." Apparently it was "anoncvs." I'll try building again. -- Dave Abrahams Boost Consulting www.boost-consulting.com From dave at boost-consulting.com Sun Apr 16 16:21:08 2006 From: dave at boost-consulting.com (David Abrahams) Date: Sun, 16 Apr 2006 16:21:08 -0400 Subject: [Unison-hackers] Mac GUI References: <6CB7DC64-C277-4D05-B71D-EB0F8C64DDBD@cis.upenn.edu> Message-ID: David Abrahams writes: > David Abrahams writes: > >>> http://groups.google.com/group/fa.caml/browse_frm/thread/0dc0545a76842394/caa62f340ea258ce?lnk=raot#caa62f340ea258ce >> >> Hi Ben, >> >> 'twould be nice, yeah. Unfortunately (-t added for more verbose output): >> >> cvs -t -d ':pserver:anonymous at camlcvs.inria.fr:/caml' co -r release309 ocaml >> -> main loop with CVSROOT=:pserver:anonymous at camlcvs.inria.fr:/caml >> -> safe_location( where=(null) ) >> -> Connecting to camlcvs.inria.fr(128.93.11.23):2401 >> PAM start error: Critical error - immediate abort >> Fatal error, aborting. >> cvs [checkout aborted]: unrecognized auth response from camlcvs.inria.fr: pam failed to release authenticator >> -> Lock_Cleanup() >> boonen:~/src dave$ > > Ah, tricky. Google helpfully turns "anoncvs-at-whatever" into > "anon...-at-whatever", which I read as "anonymous." Apparently it was > "anoncvs." I'll try building again. Cool; it built. Unison built too. The issue with the command-line might be simply that the command-line tool installed by the GUI doesn't assume "-ui text" arguments, though I'm not sure that's all there is to it. Thanks for your help. -- Dave Abrahams Boost Consulting www.boost-consulting.com From ben at opendarwin.org Wed Apr 19 00:33:13 2006 From: ben at opendarwin.org (Ben Willmore) Date: Tue, 18 Apr 2006 21:33:13 -0700 Subject: [Unison-hackers] mutex Message-ID: There is a crash using the Mac GUI that seems to occur when one thread updates a reconItem (actually stateItem.whatHappened), and another thread reads from it at the same time (try scrolling up with the up-arrow through the reconitem table while a sync is in progress). It should be easily fixable with a mutex, available as part of the ocaml threads libraries. However, I see that significant effort has gone into avoiding use of those libraries in Unison, and using lwt/* instead. Is there an alternative mutex implementation or workaround I can use? Ben From ben at opendarwin.org Wed Apr 19 01:43:08 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Wed, 19 Apr 2006 01:43:08 -0400 Subject: [Unison-hackers] [unison-svn] r154 - trunk/src Message-ID: <200604190543.k3J5h8vM018832@canfield.cis.upenn.edu> Author: ben Date: 2006-04-19 01:43:06 -0400 (Wed, 19 Apr 2006) New Revision: 154 Modified: trunk/src/RECENTNEWS trunk/src/common.ml trunk/src/mkProjectInfo.ml Log: Enable diff if file contents have changed in one replica, but only properties in the other (all platforms) From bcpierce at cis.upenn.edu Wed Apr 19 05:11:42 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Wed, 19 Apr 2006 10:11:42 +0100 Subject: [Unison-hackers] mutex In-Reply-To: References: Message-ID: > There is a crash using the Mac GUI that seems to occur when one thread > updates a reconItem (actually stateItem.whatHappened), and another > thread reads from it at the same time (try scrolling up with the > up-arrow through the reconitem table while a sync is in progress). It > should be easily fixable with a mutex, available as part of the ocaml > threads libraries. However, I see that significant effort has gone > into avoiding use of those libraries in Unison, and using lwt/* > instead. Is there an alternative mutex implementation or workaround I > can use? The history of the lightweight threads (lwt) stuff is like this. Originally, Unison was completely single-threaded. When we began using it seriously, we found that the transfer speed was unsatisfactory because of all the handshaking involved in our (rather simple and paranoid) data transfer protocol. So we tried multithreading the transfer phase. Unfortunately, we discovered (as so many have before) that trying to add threads to an application that was not designed to be threadsafe from the start was just too hard for us (even too hard for Jerome, which is saying something!). So we moved to an intermediate position where we rolled our own "lightweight" thread package that does its own, non-preemptive scheduling. My guess is that protecting the Unison thread(s) from the GUI thread with a regular mutex should work well. Regards, Benjamin From bcpierce at cis.upenn.edu Thu Apr 20 17:24:35 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Thu, 20 Apr 2006 22:24:35 +0100 Subject: [Unison-hackers] Unison OSX In-Reply-To: References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> Message-ID: <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> [cc'ing unison-hackers, in case someone wants to comment... :-] Compiling the text-mode application (which is what you want on the server) is easy. Just grab and install the OCaml compiler from here http://caml.inria.fr/ocaml/release.en.html then grab and unpack the Unison tarball from the download page, go inside it, and type 'make UISTYLE=text'. To build the GUI version, first do the above; then install the xcode tools (they can be downloaded from apple). Then type 'make' and you should get a Unison.app inside the uimac directory. The GUI version can probably also be found by searching the unison- users archives, but you'll need to make sure you get the same major version number on client and server. Yes, we should probably offer a pre-built Unison.app on macupdate or versiontracker. Someone would probably have to do a little packaging work, though, to make an installer script, since we'd want to provide both the text-mode version and the GUI in a single dmg and make sure they get installed in the right places. - Benjamin On Apr 20, 2006, at 5:19 PM, jon pilling wrote: > thanks for the reply, is their an idiots guide to compiling the Unison > app? Our Unix guy (that is no longer with the company) set it up for > us on the Mac Server, but I would quite like to know how to do it > myself. I am one of those lazy mac users that only has experience of > downloading a .dmg and finding the .app inside! > > If you guys ever get time to release a .app version of Unison for X it > would certainly go down very well on macupdate.com and > versiontracker.com, there are a few syncing apps out there but non of > them seem as comprehensive as Unison, it would be good to see more Mac > users using it. > > thanks in advance > > Jon From Calvin.Liu at Sun.COM Thu Apr 20 21:33:49 2006 From: Calvin.Liu at Sun.COM (Yu-Hui Liu) Date: Fri, 21 Apr 2006 09:33:49 +0800 Subject: [Unison-hackers] What are the real user cases of using Unison? Message-ID: <4448367D.9080301@sun.com> Hi, there, That could be a strange question. ;) I can understand the features of Unison from reading the User Manual. But I still can't imagine who will use it besides a group of people who are managing a set of documents, to change the docs on individual's computer and put them together in a central repository. So still want to know how widely it is used. Thanks. Calvin From trevor at research.att.com Thu Apr 20 22:56:09 2006 From: trevor at research.att.com (Trevor Jim) Date: Thu, 20 Apr 2006 22:56:09 -0400 Subject: [Unison-hackers] Unison OSX In-Reply-To: <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> Message-ID: <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> > Yes, we should probably offer a pre-built Unison.app on macupdate or > versiontracker. Someone would probably have to do a little packaging > work, though, to make an installer script, since we'd want to provide > both the text-mode version and the GUI in a single dmg and make sure > they get installed in the right places. Unison.app already includes a command-line client. Install the command-line tool by running the gui version, then, the menu item Unison->Install command-line tool. Then in a terminal window, unison -ui text profile will run the text-mode unison on profile. -T From alan.schmitt at polytechnique.org Fri Apr 21 03:26:13 2006 From: alan.schmitt at polytechnique.org (Alan Schmitt) Date: Fri, 21 Apr 2006 09:26:13 +0200 Subject: [Unison-hackers] What are the real user cases of using Unison? In-Reply-To: <4448367D.9080301@sun.com> References: <4448367D.9080301@sun.com> Message-ID: On 21 avr. 06, at 03:33, Yu-Hui Liu wrote: > Hi, there, > > That could be a strange question. ;) > > I can understand the features of Unison from reading the User Manual. > But I still can't imagine who will use it besides a group of people > who > are managing a set of documents, to change the docs on individual's > computer and put them together in a central repository. So still > want to > know how widely it is used. I use it for three main reasons: - keeping data current: I have three computers; a desktop at work, a desktop at home, and a laptop. I synchronize my "live" personal data (the one I'm working on) between the home computer and the laptop, and the work data between the work computer and the laptop. This way I don't really care which computer I use and I have some data redundancy. - backups: every night, my most crucial data is sent to our server at work (it's a one way thing, so not really synchronization, but Unison only propagates the files that have changed). - web development: all the websites I maintain are done locally (either using hand coding or Rapid Weaver). I then use Unison to propagate the changes. As before, only changed files get propagated. Alan -- Alan Schmitt The hacker: someone who figured things out and made something cool happen. .O. ..O OOO -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 186 bytes Desc: This is a digitally signed message part Url : http://lists.seas.upenn.edu/pipermail/unison-hackers/attachments/20060421/29158ef5/PGP-0001.pgp From bcpierce at cis.upenn.edu Fri Apr 21 04:23:38 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Fri, 21 Apr 2006 09:23:38 +0100 Subject: [Unison-hackers] Unison OSX In-Reply-To: <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> Message-ID: <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> I was thinking that it would be nicer to create a "standard" install procedure for Mac users, where you just run an install script and that's it. But I agree that what we have now is sufficient if people are willing to read instructions. - B On Apr 21, 2006, at 3:56 AM, Trevor Jim wrote: >> Yes, we should probably offer a pre-built Unison.app on macupdate or >> versiontracker. Someone would probably have to do a little packaging >> work, though, to make an installer script, since we'd want to provide >> both the text-mode version and the GUI in a single dmg and make sure >> they get installed in the right places. > > Unison.app already includes a command-line client. > > Install the command-line tool by running the gui version, > then, the menu item Unison->Install command-line tool. > > Then in a terminal window, > > unison -ui text profile > > will run the text-mode unison on profile. > > -T > > _______________________________________________ > Unison-hackers mailing list > Unison-hackers at lists.seas.upenn.edu > http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers From schulman.andrew at epa.gov Fri Apr 21 09:32:29 2006 From: schulman.andrew at epa.gov (Andrew Schulman) Date: Fri, 21 Apr 2006 09:32:29 -0400 Subject: [Unison-hackers] What are the real user cases of using Unison? References: <4448367D.9080301@sun.com> Message-ID: > - keeping data current: I have three computers; a desktop at work, a > desktop at home, and a laptop. I synchronize my "live" personal data > (the one I'm working on) between the home computer and the laptop, > and the work data between the work computer and the laptop. This way > I don't really care which computer I use and I have some data > redundancy. > - backups: every night, my most crucial data is sent to our server at > work (it's a one way thing, so not really synchronization, but Unison > only propagates the files that have changed). > - web development: all the websites I maintain are done locally > (either using hand coding or Rapid Weaver). I then use Unison to > propagate the changes. As before, only changed files get propagated. These are basically the same three things that I use Unison for. From trevor at research.att.com Fri Apr 21 10:45:30 2006 From: trevor at research.att.com (Trevor Jim) Date: Fri, 21 Apr 2006 10:45:30 -0400 Subject: [Unison-hackers] Unison OSX In-Reply-To: <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> Message-ID: > I was thinking that it would be nicer to create a "standard" install > procedure for Mac users, where you just run an install script and > that's it. But I agree that what we have now is sufficient if people > are willing to read instructions. It's true that people aren't willing to use instructions, so we should do better. I'm not keen on an install script, though, for the Mac. People are used to a dmg that tells them to drag the app to /Applications. So, why don't we build one of those, and then, set up application so that it checks to see if the command-line tool is installed, and offer to do it if not. We could also have a menu item to uninstall the tool. -Trevor From bcpierce at cis.upenn.edu Fri Apr 21 11:53:53 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Fri, 21 Apr 2006 16:53:53 +0100 Subject: [Unison-hackers] Unison OSX In-Reply-To: References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> Message-ID: <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> I like this idea. - B On Apr 21, 2006, at 3:45 PM, Trevor Jim wrote: >> I was thinking that it would be nicer to create a "standard" install >> procedure for Mac users, where you just run an install script and >> that's it. But I agree that what we have now is sufficient if people >> are willing to read instructions. > > It's true that people aren't willing to use instructions, so we should > do better. > > I'm not keen on an install script, though, for the Mac. People are > used > to a dmg that tells them to drag the app to /Applications. So, why > don't > we build one of those, and then, set up application so that it > checks to > see if the command-line tool is installed, and offer to do it if not. > > We could also have a menu item to uninstall the tool. > > -Trevor > > > > > > _______________________________________________ > Unison-hackers mailing list > Unison-hackers at lists.seas.upenn.edu > http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers From ben at opendarwin.org Fri Apr 21 13:59:04 2006 From: ben at opendarwin.org (Ben Willmore) Date: Fri, 21 Apr 2006 10:59:04 -0700 Subject: [Unison-hackers] Unison OSX In-Reply-To: <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> Message-ID: > Yes, we should probably offer a pre-built Unison.app on macupdate or > versiontracker. Someone would probably have to do a little packaging > > we build one of those, and then, set up application so that it > > checks to > > see if the command-line tool is installed, and offer to do it if not. I like both these ideas (and am happy to implement them unless someone else does). A couple of thoughts: It would be good if the uploaded version was a universal binary. This should be easily achieved by building separately on PPC and Intel and pasting the results together with 'lipo'. The Mac GUI in both 2.17.1 and current SVN has a few bugs where Unison just dies without any error report when launched from the gui. I think it would be good to get rid of these before uploading a binary, as they're disconcerting and result in useless bug reports ("It just disappeared"). They're on my to-do list. There's a usenet client for OS X called Unison. This may cause conflicts or confusion on the version-tracking sites. Ben From trevor at research.att.com Fri Apr 21 14:22:01 2006 From: trevor at research.att.com (Trevor Jim) Date: Fri, 21 Apr 2006 14:22:01 -0400 Subject: [Unison-hackers] Unison OSX In-Reply-To: References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> Message-ID: <51A88BF2-E2E9-4976-9D7A-232EE2D1F815@research.att.com> A couple of other things that would be good before a binary: Get the right version number to display for Get Info. Unfortunately this is in a .nib file and I don't know how to automate this. For creating the .dmg it is nice to have a background picture as in this tutorial http://www.decaffeinated.org/archives/2004/04/20/dmg Also it is nice to have the .dmg contain a symbolic link to / Applications, so the user can drag the app easily, as in the Adium installer (check out their .dmg at http://www.adiumx.com/). Regarding the universal binary, I'm surprised that Xcode does not just cross-compile it for you. But then, we don't have a cross-compiling ocaml... so yeah, we have to go with the stitch together method. AFAIK, though, none of the developers has an Intel Mac ??? I've been meaning to set up a buildbot so to provide a binary for every checkin. It would be good to automate this. I can do this for the PowerPC version but not the Intel version. -Trevor From trevor at research.att.com Fri Apr 21 14:28:23 2006 From: trevor at research.att.com (Trevor Jim) Date: Fri, 21 Apr 2006 14:28:23 -0400 Subject: [Unison-hackers] Unison OSX In-Reply-To: References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> Message-ID: <8880A621-499E-4001-BF40-F3C33CE8E0D0@research.att.com> Also the FAQ about running on OS X needs to be updated. From drayside at MIT.EDU Fri Apr 21 14:36:05 2006 From: drayside at MIT.EDU (Derek Rayside) Date: Fri, 21 Apr 2006 14:36:05 -0400 (EDT) Subject: [Unison-hackers] What are the real user cases of using Unison? In-Reply-To: <4448367D.9080301@sun.com> References: <4448367D.9080301@sun.com> Message-ID: I'm not sure I understand your question, but I use unison because I use multiple computers (half a dozen or so, various operating systems). When I log in, I just update the files on the local machine, work on them, and then "check them back in". It's sort of a lightweight CVS. There was an article on/by Bill Gates in Fortune or BusinessWeek or something like that recently in which he mentioned that he also synchronizes his files across multiple machines (although presumably he does not use unison for this job). Some people use unison for backup. Many external hard drives come with synchronization programs for this purpose (although these programs, in my experience, are more "user friendly" and have fewer features and guarantees than unison does). Some sysadmin's use unison like rsync to maintain mirrors of filesets between various servers. Of the eight people in research group I'm in, three of use unison as part of our regular routine. That's probably a higher percentage than the regular population. On Fri, 21 Apr 2006, Yu-Hui Liu wrote: > Hi, there, > > That could be a strange question. ;) > > I can understand the features of Unison from reading the User Manual. > But I still can't imagine who will use it besides a group of people who > are managing a set of documents, to change the docs on individual's > computer and put them together in a central repository. So still want to > know how widely it is used. > > Thanks. > Calvin > _______________________________________________ > Unison-hackers mailing list > Unison-hackers at lists.seas.upenn.edu > http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers > From ben at opendarwin.org Fri Apr 21 15:19:34 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Fri, 21 Apr 2006 15:19:34 -0400 Subject: [Unison-hackers] [unison-svn] r155 - in trunk/src: . uimac uimac/English.lproj uimac/uimac.xcodeproj Message-ID: <200604211919.k3LJJYo8030629@canfield.cis.upenn.edu> Author: ben Date: 2006-04-21 15:19:29 -0400 (Fri, 21 Apr 2006) New Revision: 155 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/InfoPlist.strings trunk/src/uimac/Info.plist.template trunk/src/uimac/ReconItem.h trunk/src/uimac/uimac.xcodeproj/project.pbxproj Log: Mac GUI: Fix 'Get Info' information Fix index declaration in ReconItem.h From bcpierce at cis.upenn.edu Sat Apr 22 05:26:01 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Sat, 22 Apr 2006 10:26:01 +0100 Subject: [Unison-hackers] Unison OSX In-Reply-To: References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> Message-ID: > It would be good if the uploaded version was a universal binary. This > should be easily achieved by building separately on PPC and Intel and > pasting the results together with 'lipo'. I agree this would be nice, but don't think it's critical. Most of what Unison does is network-limited, not CPU. > The Mac GUI in both 2.17.1 and current SVN has a few bugs where Unison > just dies without any error report when launched from the gui. I > think it would be good to get rid of these before uploading a binary, > as they're disconcerting and result in useless bug reports ("It just > disappeared"). They're on my to-do list. Yes. We should probably take the opportunity to do a release cycle at the same time -- declare 2.19 to be a new beta-release, planning to promote it to stable pretty soon. I'm not sure whether we should promote 2.17 to stable, though -- it's got some bugs in the backup stuff that are fixed in the svn version. (Ideally, they could get fixed in the 2.17 branch too, which could then get promoted to stable -- I can see if this is feasible.) There are a couple more things that need to happen with the backup stuff before that will be ready for widespread use (in particular on Windows). > There's a usenet client for OS X called Unison. This may cause > conflicts or confusion on the version-tracking sites. That's annoying, but I guess there's little we can do about it. Unison can be listed as "Unison File Synchronizer." - Benjamin From bcpierce at cis.upenn.edu Sat Apr 22 05:56:13 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Sat, 22 Apr 2006 10:56:13 +0100 Subject: [Unison-hackers] Unison OSX In-Reply-To: <8880A621-499E-4001-BF40-F3C33CE8E0D0@research.att.com> References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> <8880A621-499E-4001-BF40-F3C33CE8E0D0@research.att.com> Message-ID: > Also the FAQ about running on OS X needs to be updated. What needs to be changed? - B From trevor at research.att.com Sat Apr 22 08:36:31 2006 From: trevor at research.att.com (Trevor Jim) Date: Sat, 22 Apr 2006 08:36:31 -0400 Subject: [Unison-hackers] Unison OSX In-Reply-To: References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> <8880A621-499E-4001-BF40-F3C33CE8E0D0@research.att.com> Message-ID: <44D75D23-6F0F-4736-9F27-9BF780B55FCA@research.att.com> >> Also the FAQ about running on OS X needs to be updated. > > What needs to be changed? It says that forks etc. are experimental but I'd say they are working fine now. It says we don't automatically recognize the case insensitivity but we do. Somewhere -- the manual or install pages -- we should say how to turn on ssh, and that the command-line client should be installed. So, no fooling around with the path to the executable or version numbers is needed. -Trevor From ben at opendarwin.org Sun Apr 23 03:47:46 2006 From: ben at opendarwin.org (ben@opendarwin.org) Date: Sun, 23 Apr 2006 03:47:46 -0400 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib Message-ID: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> Author: ben Date: 2006-04-23 03:47:39 -0400 (Sun, 23 Apr 2006) New Revision: 156 Modified: trunk/src/RECENTNEWS trunk/src/mkProjectInfo.ml trunk/src/uimac/English.lproj/MainMenu.nib/classes.nib trunk/src/uimac/English.lproj/MainMenu.nib/info.nib trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib trunk/src/uimac/MyController.h trunk/src/uimac/MyController.m Log: Mac GUI: If it's not already installed, and she hasn't disabled this check, invite the user to install the command-line tool during startup. From bcpierce at cis.upenn.edu Sun Apr 23 10:58:12 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Sun, 23 Apr 2006 15:58:12 +0100 Subject: [Unison-hackers] Unison OSX In-Reply-To: <44D75D23-6F0F-4736-9F27-9BF780B55FCA@research.att.com> References: <67C505A1-327B-48BC-9C54-3ABB7D3C2C7C@cis.upenn.edu> <99A26297-52C1-4EF2-B87A-9E370DE45823@cis.upenn.edu> <6FE6B6E4-B4EA-4476-AC44-207387AF8DDC@research.att.com> <9AA9B581-7C43-4CD5-BF25-DAC08AADE4F2@cis.upenn.edu> <6956264E-2F16-49CF-8745-BB1715CBF744@cis.upenn.edu> <8880A621-499E-4001-BF40-F3C33CE8E0D0@research.att.com> <44D75D23-6F0F-4736-9F27-9BF780B55FCA@research.att.com> Message-ID: <6EE3F7C7-D533-4ABA-A6DF-616A3C985389@cis.upenn.edu> >> What needs to be changed? > > It says that forks etc. are experimental but I'd say they are working > fine now. > > It says we don't automatically recognize the case insensitivity but we > do. OK, I've fixed both of these in the (wikified) FAQ and promoted the wikified FAQ to be the real one. > > Somewhere -- the manual or install pages -- we should say how to turn > on ssh, and that the command-line client should be installed. So, no > fooling around with the path to the executable or version numbers is > needed. Maybe you or Ben could write this up? - B From ben at opendarwin.org Sun Apr 23 15:15:18 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sun, 23 Apr 2006 12:15:18 -0700 Subject: [Unison-hackers] mutex In-Reply-To: References: Message-ID: Well, I'm stumped. Here's the problem in detail: If thread A is running unisonSynchronize (uimacbridge.ml), and thread B calls unisonRiToDetails (also uimacbridge.ml), a crash will sometimes occur. [Removing references to the stateItem in unisonRiToDetails fixes it.] My assumption was that both threads were trying to access the same stateItem simultaneously. Either this is not the case, or I don't understand unisonSynchronize as well as I think I do. Attached is a patch that demonstrates it. It adds mutex locking in unisonRiToDetails and unisonSynchronize, and some NSLog (print) statements. Steps to reproduce the bug: Start the Mac GUI from the command line Choose two roots with a large number of different small files (I use the script below to make 500) Scroll down and select the last reconItem, using the scroll bar, *not* the down arrow (which would fetch all the details in advance). Hit Go Hold down the up arrow You will see: Usually, Unison will crash with a bus error (sometimes a segfault, occasionally something else). The mutexes have no effect in preventing this (though tests show they are locking correctly). The print statements show something like: ... 2006-04-23 11:46:44.836 Unison[8722] dS: SyncEnd: file34 2006-04-23 11:46:44.837 Unison[8722] dS: SyncStart: file340 2006-04-23 11:46:44.837 Unison[8722] dS: TransStart: file340 2006-04-23 11:46:44.838 Unison[8722] dS: TransStart: file340 file340 2006-04-23 11:46:44.841 Unison[8722] dS: SyncEnd: file340 2006-04-23 11:46:44.842 Unison[8722] dS: SyncStart: file341 2006-04-23 11:46:44.843 Unison[8722] dS: TransStart: file341 2006-04-23 11:46:44.843 Unison[8722] dS: TransStart: file341 file341 2006-04-23 11:46:44.861 Unison[8722] dS: Details: file9 2006-04-23 11:46:44.908 Unison[8722] dS: Details: file89 2006-04-23 11:46:45.011 Unison[8722] dS: Details: file88 2006-04-23 11:46:45.057 Unison[8722] dS: Details: file87 2006-04-23 11:46:45.066 Unison[8722] dS: Details: file86 2006-04-23 11:46:45.113 Unison[8722] dS: Details: file85 2006-04-23 11:46:45.160 Unison[8722] dS: Details: file84 2006-04-23 11:46:45.209 Unison[8722] dS: Details: file83 2006-04-23 11:46:45.262 Unison[8722] dS: Details: file82 2006-04-23 11:46:45.297 Unison[8722] dS: Details: file81 2006-04-23 11:46:45.327 Unison[8722] dS: Details: file80 2006-04-23 11:46:45.362 Unison[8722] dS: Details: file8 2006-04-23 11:46:45.396 Unison[8722] dS: Details: file79 Bus error The files are alphanumerically sorted, so this indicates that files file1->file340 have been synced successfully, and we're in the middle of syncing file341. Details have been displayed for files file99->file79. I.E. We haven't got close to a conflict where both the sync thread and the GUI thread access the same item. This is really annoying me. As far as I can tell, both threads are locked everywhere (relevant) that the stateItems are referenced, and the log seems to agree this is not the problem. But I can't see any reason why running unisonRiToDetails on file79 should cause a crash during synchronization of file341. Any injection of wisdom would be much appreciated. Ben ------------ #!/bin/bash # make n=$1 files containing $2 LIMIT=$1 for ((a=1; a <= LIMIT ; a++)) do echo $2 > file$a done -------------- next part -------------- A non-text attachment was scrubbed... Name: debug.patch Type: application/octet-stream Size: 5830 bytes Desc: not available Url : http://lists.seas.upenn.edu/pipermail/unison-hackers/attachments/20060423/19821fd0/debug.obj From bcpierce at cis.upenn.edu Sun Apr 23 16:01:37 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Sun, 23 Apr 2006 21:01:37 +0100 Subject: [Unison-hackers] mutex In-Reply-To: References: Message-ID: This is more guessing than wisdom, but have you looked at when GC is happening? - B On Apr 23, 2006, at 8:15 PM, Ben Willmore wrote: > Well, I'm stumped. Here's the problem in detail: > > If thread A is running unisonSynchronize (uimacbridge.ml), and thread > B calls unisonRiToDetails (also uimacbridge.ml), a crash will > sometimes occur. [Removing references to the stateItem in > unisonRiToDetails fixes it.] My assumption was that both threads were > trying to access the same stateItem simultaneously. Either this is > not the case, or I don't understand unisonSynchronize as well as I > think I do. > > Attached is a patch that demonstrates it. It adds mutex locking in > unisonRiToDetails and unisonSynchronize, and some NSLog (print) > statements. > > Steps to reproduce the bug: > Start the Mac GUI from the command line > Choose two roots with a large number of different small files (I use > the script below to make 500) > Scroll down and select the last reconItem, using the scroll bar, *not* > the down arrow (which would fetch all the details in advance). > Hit Go > Hold down the up arrow > > You will see: > Usually, Unison will crash with a bus error (sometimes a segfault, > occasionally something else). > The mutexes have no effect in preventing this (though tests show they > are locking correctly). > The print statements show something like: > > ... > 2006-04-23 11:46:44.836 Unison[8722] dS: SyncEnd: file34 > 2006-04-23 11:46:44.837 Unison[8722] dS: SyncStart: file340 > 2006-04-23 11:46:44.837 Unison[8722] dS: TransStart: file340 > 2006-04-23 11:46:44.838 Unison[8722] dS: TransStart: > file340 file340 > 2006-04-23 11:46:44.841 Unison[8722] dS: SyncEnd: file340 > 2006-04-23 11:46:44.842 Unison[8722] dS: SyncStart: file341 > 2006-04-23 11:46:44.843 Unison[8722] dS: TransStart: file341 > 2006-04-23 11:46:44.843 Unison[8722] dS: TransStart: > file341 file341 > 2006-04-23 11:46:44.861 Unison[8722] dS: Details: file9 > 2006-04-23 11:46:44.908 Unison[8722] dS: Details: file89 > 2006-04-23 11:46:45.011 Unison[8722] dS: Details: file88 > 2006-04-23 11:46:45.057 Unison[8722] dS: Details: file87 > 2006-04-23 11:46:45.066 Unison[8722] dS: Details: file86 > 2006-04-23 11:46:45.113 Unison[8722] dS: Details: file85 > 2006-04-23 11:46:45.160 Unison[8722] dS: Details: file84 > 2006-04-23 11:46:45.209 Unison[8722] dS: Details: file83 > 2006-04-23 11:46:45.262 Unison[8722] dS: Details: file82 > 2006-04-23 11:46:45.297 Unison[8722] dS: Details: file81 > 2006-04-23 11:46:45.327 Unison[8722] dS: Details: file80 > 2006-04-23 11:46:45.362 Unison[8722] dS: Details: file8 > 2006-04-23 11:46:45.396 Unison[8722] dS: Details: file79 > Bus error > > The files are alphanumerically sorted, so this indicates that files > file1->file340 have been synced successfully, and we're in the middle > of syncing file341. Details have been displayed for files > file99->file79. I.E. We haven't got close to a conflict where both > the sync thread and the GUI thread access the same item. > > This is really annoying me. As far as I can tell, both threads are > locked everywhere (relevant) that the stateItems are referenced, and > the log seems to agree this is not the problem. But I can't see any > reason why running unisonRiToDetails on file79 should cause a crash > during synchronization of file341. > > Any injection of wisdom would be much appreciated. > > Ben > > > ------------ > #!/bin/bash > # make n=$1 files containing $2 > LIMIT=$1 > for ((a=1; a <= LIMIT ; a++)) > do > echo $2 > file$a > done > > _______________________________________________ > Unison-hackers mailing list > Unison-hackers at lists.seas.upenn.edu > http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers From Calvin.Liu at Sun.COM Sun Apr 23 23:12:33 2006 From: Calvin.Liu at Sun.COM (Yu-Hui Calvin Liu) Date: Mon, 24 Apr 2006 11:12:33 +0800 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> References: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> Message-ID: <444C4221.1030309@Sun.COM> Hi, Ben, If the Unison trunk source code is public available on Internet? What's the server name and if an anonymous user can get it? How? Thanks. Calvin ben at opendarwin.org wrote On 04/23/06 15:47,: >Author: ben >Date: 2006-04-23 03:47:39 -0400 (Sun, 23 Apr 2006) >New Revision: 156 > >Modified: > trunk/src/RECENTNEWS > trunk/src/mkProjectInfo.ml > trunk/src/uimac/English.lproj/MainMenu.nib/classes.nib > trunk/src/uimac/English.lproj/MainMenu.nib/info.nib > trunk/src/uimac/English.lproj/MainMenu.nib/keyedobjects.nib > trunk/src/uimac/English.lproj/MainMenu.nib/objects.nib > trunk/src/uimac/MyController.h > trunk/src/uimac/MyController.m >Log: >Mac GUI: If it's not already installed, and she hasn't disabled this check, > invite the user to install the command-line tool during startup. > > >_______________________________________________ >Unison-hackers mailing list >Unison-hackers at lists.seas.upenn.edu >http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers > > From ben at opendarwin.org Sun Apr 23 23:45:55 2006 From: ben at opendarwin.org (Ben Willmore) Date: Sun, 23 Apr 2006 20:45:55 -0700 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: References: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> <444C4221.1030309@Sun.COM> Message-ID: Hi Calvin, On 4/23/06, Yu-Hui Calvin Liu wrote: > If the Unison trunk source code is public available on Internet? What's > the server name and if an anonymous user can get it? How? Instructions for anonymous SVN access are here: http://www.cis.upenn.edu/~bcpierce/unison/svn-instructions.html Ben From Calvin.Liu at Sun.COM Wed Apr 26 06:38:35 2006 From: Calvin.Liu at Sun.COM (Yu-Hui Calvin Liu) Date: Wed, 26 Apr 2006 18:38:35 +0800 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: References: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> <444C4221.1030309@Sun.COM> Message-ID: <444F4DAB.5090501@Sun.COM> Hi, Ben, Thanks a lot! We are trying to use it on Solaris and may need to change a little bit due to the requirement of usage. Since it complies GPL so we want to know what we should do to put some patch, maybe not bug fixes, back to the community code. Do you know any criterias that we have to meet, policy to comply with and process to follow, or more? Any restrict for delivering it to Solaris? Best regards, Calvin Ben Willmore wrote On 04/24/06 11:43,: >Hi Calvin, > >On 4/23/06, Yu-Hui Calvin Liu wrote: > > >>If the Unison trunk source code is public available on Internet? What's >>the server name and if an anonymous user can get it? How? >> >> > >Instructions for anonymous SVN access are here: > >http://www.cis.upenn.edu/~bcpierce/unison/svn-instructions.html > >Ben > > From geoffw at cis.upenn.edu Wed Apr 26 10:28:57 2006 From: geoffw at cis.upenn.edu (Geoffrey Alan Washburn) Date: Wed, 26 Apr 2006 10:28:57 -0400 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: <444F4DAB.5090501@Sun.COM> References: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> <444C4221.1030309@Sun.COM> <444F4DAB.5090501@Sun.COM> Message-ID: <444F83A9.5080002@cis.upenn.edu> Yu-Hui Calvin Liu wrote: > We are trying to use it on Solaris and may need to change a little bit > due to the requirement of usage. Since it complies GPL so we want to > know what we should do to put some patch, maybe not bug fixes, back to > the community code. Do you know any criterias that we have to meet, > policy to comply with and process to follow, or more? Any restrict for > delivering it to Solaris? My understanding of the current GPL is that you only need to supply your modifications if you are distributing your modifications as part of a product. If you're just using it for internal purposes you don't really need to release anything unless you would like to do so. If the modifications are useful it would probably be best to just fold them back into the main code-base. Otherwise, you could just distribute a patch (svn diff) from the Unison trunk to your working copy. From geoffw at cis.upenn.edu Wed Apr 26 10:28:57 2006 From: geoffw at cis.upenn.edu (Geoffrey Alan Washburn) Date: Wed, 26 Apr 2006 10:28:57 -0400 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: <444F4DAB.5090501@Sun.COM> References: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> <444C4221.1030309@Sun.COM> <444F4DAB.5090501@Sun.COM> Message-ID: <444F83A9.5080002@cis.upenn.edu> Yu-Hui Calvin Liu wrote: > We are trying to use it on Solaris and may need to change a little bit > due to the requirement of usage. Since it complies GPL so we want to > know what we should do to put some patch, maybe not bug fixes, back to > the community code. Do you know any criterias that we have to meet, > policy to comply with and process to follow, or more? Any restrict for > delivering it to Solaris? My understanding of the current GPL is that you only need to supply your modifications if you are distributing your modifications as part of a product. If you're just using it for internal purposes you don't really need to release anything unless you would like to do so. If the modifications are useful it would probably be best to just fold them back into the main code-base. Otherwise, you could just distribute a patch (svn diff) from the Unison trunk to your working copy. From bcpierce at cis.upenn.edu Wed Apr 26 15:43:07 2006 From: bcpierce at cis.upenn.edu (Benjamin Pierce) Date: Wed, 26 Apr 2006 20:43:07 +0100 Subject: [Unison-hackers] [unison-svn] r156 - in trunk/src: . uimac uimac/English.lproj/MainMenu.nib In-Reply-To: <444F4DAB.5090501@Sun.COM> References: <200604230747.k3N7lkjF030213@canfield.cis.upenn.edu> <444C4221.1030309@Sun.COM> <444F4DAB.5090501@Sun.COM> Message-ID: <13EF9CED-92F5-4348-BE1C-31F06995053D@cis.upenn.edu> Adding to what Geoff said... > We are trying to use it on Solaris and may need to change a little bit > due to the requirement of usage. Since it complies GPL so we want to > know what we should do to put some patch, maybe not bug fixes, back to > the community code. Do you know any criterias that we have to meet, > policy to comply with and process to follow, or more? Any restrict for > delivering it to Solaris? In general, the Unison developers/maintainers are happy to consider patches from members of the Unison community. The criteria we use for deciding whether to include them in the main distribution are 1) evident correctness (i.e., we need to be able to believe that they work) 2) maintainability (i.e,, clean coding style, etc.) 3) general usefulness (i.e., we don't want to clutter the system with features that are useful only to very small numbers of people or in very specific situations). Regards, Benjamin