From sven.panne at aedion.de Thu Mar 15 07:00:00 2007 From: sven.panne at aedion.de (Sven Panne) Date: Thu Mar 15 06:59:50 2007 Subject: Hugs' build system In-Reply-To: <20070225171244.098bbc0f.Malcolm.Wallace@cs.york.ac.uk> References: <200702251346.26807.sven.panne@aedion.de> <20070225164819.GA15011@soi.city.ac.uk> <20070225171244.098bbc0f.Malcolm.Wallace@cs.york.ac.uk> Message-ID: <200703151200.00280.sven.panne@aedion.de> On Sunday 25 February 2007 18:12, Malcolm Wallace wrote: > Ross Paterson writes: > > > * I think that Hugs should finally be moved to darcs instead of CVS > > > > No objection, but I think it takes a bit of extra effort to make the > > history look nice, e.g. check > > > > http://darcs.haskell.org/darcsweb/darcsweb.cgi?r=parsec;a=summary > > This is just a matter of which options you give to 'tailor', the > conversion utility. In particular, you can tell it to use the first > line of the CVS commit message as the name of the darcs patch, with the > remaining lines from CVS as the "long" message in darcs. It would be very nice if you could do that conversion for the Hugs repository. I think that http://darcs.haskell.org/hugs98 will be the right place. The only thing is: Is "98" a good suffix when we will move to Haskell'? Hmmm... Anyway, having a darcs repository soon would be great. > The main non-automated issue when converting is the need to create/steal > a darcs-all script, and maybe a utility to fix executable permissions > for fresh checkouts. I can do this after the conversion. Furthermore, I think that we can (and should) have a unified version of these scripts for GHC, Hugs and nhc98. Cheers, S. From Sven.Panne at aedion.de Thu Mar 15 11:58:01 2007 From: Sven.Panne at aedion.de (Sven Panne) Date: Thu Mar 15 11:57:53 2007 Subject: cvs commit: hugs98 hugs98.spec Message-ID: <200703151558.l2FFw10X017472@monk.galois.com> panne 2007/03/15 08:58:01 PDT Modified files: . hugs98.spec Log: Use update-alternatives for handling generic tool names Revision Changes Path 1.50 +39 -12 hugs98/hugs98.spec From Sven.Panne at aedion.de Thu Mar 15 12:49:57 2007 From: Sven.Panne at aedion.de (Sven Panne) Date: Thu Mar 15 12:49:49 2007 Subject: cvs commit: hugs98 hugs98.spec Message-ID: <200703151649.l2FGnvr5019429@monk.galois.com> panne 2007/03/15 09:49:57 PDT Modified files: . hugs98.spec Log: Re-added Summary field, which was deleted by accident Revision Changes Path 1.51 +1 -0 hugs98/hugs98.spec From Malcolm.Wallace at cs.york.ac.uk Thu Mar 15 12:48:59 2007 From: Malcolm.Wallace at cs.york.ac.uk (Malcolm Wallace) Date: Thu Mar 15 12:52:21 2007 Subject: Hugs' build system In-Reply-To: <200703151200.00280.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <20070225164819.GA15011@soi.city.ac.uk> <20070225171244.098bbc0f.Malcolm.Wallace@cs.york.ac.uk> <200703151200.00280.sven.panne@aedion.de> Message-ID: <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> Sven Panne wrote: > > This is just a matter of which options you give to 'tailor', the > > conversion utility. > > It would be very nice if you could do that conversion for the Hugs > repository. I have been trying all day today to persuade either tailor or cvs2darcs to do the conversion, and failed miserably. I believe there is some kind of character-encoding problem causing tailor to misinterpret the contents of the CVS repo, leading to only 16 patches of history, instead of 2393. Meanwhile cvs2darcs gives me a completely empty darcs repo (after a very long time, and lots of warning messages). Does the Hugs CVS repo contain any strange encoding in commit messages? Neither ASCII nor UTF-8 seems to be accepted, whereas Latin-1 is accepted but gives incorrect results. Regards, Malcolm From sven.panne at aedion.de Thu Mar 15 14:33:58 2007 From: sven.panne at aedion.de (Sven Panne) Date: Thu Mar 15 14:33:46 2007 Subject: Hugs' build system In-Reply-To: <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> References: <200702251346.26807.sven.panne@aedion.de> <200703151200.00280.sven.panne@aedion.de> <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> Message-ID: <200703151933.58199.sven.panne@aedion.de> On Thursday 15 March 2007 17:48, Malcolm Wallace wrote: > I have been trying all day today to persuade either tailor or cvs2darcs > to do the conversion, and failed miserably. I believe there is some > kind of character-encoding problem causing tailor to misinterpret the > contents of the CVS repo, leading to only 16 patches of history, instead > of 2393. Meanwhile cvs2darcs gives me a completely empty darcs repo > (after a very long time, and lots of warning messages). > > Does the Hugs CVS repo contain any strange encoding in commit messages? > Neither ASCII nor UTF-8 seems to be accepted, whereas Latin-1 is > accepted but gives incorrect results. Do you have a log of what you did in detail? I don't have a black belt in using tailor or cvs2darcs, but perhaps I have some time in the next few days to play around a bit... Cheers, S. From sven.panne at aedion.de Fri Mar 23 11:28:00 2007 From: sven.panne at aedion.de (Sven Panne) Date: Fri Mar 23 11:27:29 2007 Subject: Hugs' build system In-Reply-To: <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> References: <200702251346.26807.sven.panne@aedion.de> <200703151200.00280.sven.panne@aedion.de> <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> Message-ID: <200703231628.00804.sven.panne@aedion.de> On Thursday 15 March 2007 17:48, Malcolm Wallace wrote: > I have been trying all day today to persuade either tailor or cvs2darcs > to do the conversion, and failed miserably. I believe there is some > kind of character-encoding problem causing tailor to misinterpret the > contents of the CVS repo, leading to only 16 patches of history, instead > of 2393. Meanwhile cvs2darcs gives me a completely empty darcs repo > (after a very long time, and lots of warning messages). FYI: After patching tailor itself to make it run at all, I get 18 patches. :-( The patch was very trivial and has nothing to do with our problems, I guess: --- /home/panne/tailor/vcpx/repository/darcs/__init__.py.~1~ 2007-03-23 14:19:01.000000000 +0100 +++ /home/panne/tailor/vcpx/repository/darcs/__init__.py 2007-03-23 15:01:14.000000000 +0100 @@ -72,7 +72,7 @@ ignored.append('^%s$' % re.escape(sfrelname+'.old')) ignored.append('^%s$' % re.escape(sfrelname+'.journal')) - boring = open(boringname, 'wU') + boring = open(boringname, 'w') boring.write('\n'.join(ignored)) boring.write('\n') boring.close() ----------------------------------------------------------------------------- > Does the Hugs CVS repo contain any strange encoding in commit messages? > Neither ASCII nor UTF-8 seems to be accepted, whereas Latin-1 is > accepted but gives incorrect results. Hmmm, I can only see a single German umlaut coded in Latin-1... Cheers, S. From sven.panne at aedion.de Fri Mar 23 12:03:24 2007 From: sven.panne at aedion.de (Sven Panne) Date: Fri Mar 23 12:02:52 2007 Subject: Hugs' build system In-Reply-To: <200703231628.00804.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> <200703231628.00804.sven.panne@aedion.de> Message-ID: <200703231703.25053.sven.panne@aedion.de> Further investigation show that the problematic commit is probably: date: 2006-08-10 19:31:47 +0200; author: ross; state: Exp; split off generation of the compatibility libraries into tools/make_oldlib If I see this correctly, tools/make_oldlib was introduced then, and removed a few months later: date: 2006-11-24 14:12:16 +0100; author: ross; state: dead; lines: +0 -0; remove unused script I am not sure why this should be a problem, but playing around with tailor's start-revision strongly suggests this. A bit clueless, S. From Malcolm.Wallace at cs.york.ac.uk Fri Mar 23 12:16:30 2007 From: Malcolm.Wallace at cs.york.ac.uk (Malcolm Wallace) Date: Fri Mar 23 12:17:37 2007 Subject: Hugs' build system In-Reply-To: <200703231703.25053.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <20070315164859.48ab19ee.Malcolm.Wallace@cs.york.ac.uk> <200703231628.00804.sven.panne@aedion.de> <200703231703.25053.sven.panne@aedion.de> Message-ID: <20070323161630.5228fa9d.Malcolm.Wallace@cs.york.ac.uk> Sven Panne wrote: > Further investigation show that the problematic commit is probably: > > date: 2006-08-10 19:31:47 +0200; author: ross; state: Exp; > split off generation of the compatibility libraries into > tools/make_oldlib > > If I see this correctly, tools/make_oldlib was introduced then, and > removed a few months later: > > date: 2006-11-24 14:12:16 +0100; author: ross; state: dead; > lines: +0 -0; remove unused script > > I am not sure why this should be a problem, but playing around with > tailor's start-revision strongly suggests this. Hmm, when I 'CVS update' to any date between those two commits, my repo does not contain tools/make_oldlib! Perhaps the CVS Attic has been disturbed, such that the file no longer exists in any revision? That might certainly confuse tailor. Regards, Malcolm From sven.panne at aedion.de Fri Mar 23 12:29:21 2007 From: sven.panne at aedion.de (Sven Panne) Date: Fri Mar 23 12:28:48 2007 Subject: Hugs' build system In-Reply-To: <200703231703.25053.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703231628.00804.sven.panne@aedion.de> <200703231703.25053.sven.panne@aedion.de> Message-ID: <200703231729.21342.sven.panne@aedion.de> Hmmm, if I see things correctly, tailor has problems whenever it encouters a CVS file in "state: dead", i.e. when a file was removed in its past. If the CVS repo contains such a file, one gets only those changesets which are younger than that removal. I've played around a bit with a local copy of the hugs98 repo, and whenever I've removed such file from the repo itself, tailor stopped at the next dead file, and so on, and so on... Is there a trick I'm not aware of? Having dead (and perhaps resurrected) files in a CVS repo is not *that* uncommon. :-( Cheers, S. From sven.panne at aedion.de Fri Mar 23 13:21:49 2007 From: sven.panne at aedion.de (Sven Panne) Date: Fri Mar 23 13:21:18 2007 Subject: Hugs' build system In-Reply-To: <200703231729.21342.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703231703.25053.sven.panne@aedion.de> <200703231729.21342.sven.panne@aedion.de> Message-ID: <200703231821.49513.sven.panne@aedion.de> Short note: The bleeding edge version of tailor seems to be broken. I'm currently testing the latest released version (tailor-0.9.19), and it seems to work much better, at least it's working for some time now on the hugs98 repo. But it's still in the last millenium, so I think it's time for dinner... :-) Cheers, S. From sven.panne at aedion.de Sat Mar 24 10:13:37 2007 From: sven.panne at aedion.de (Sven Panne) Date: Sat Mar 24 10:13:02 2007 Subject: Hugs' build system In-Reply-To: <200703231821.49513.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703231729.21342.sven.panne@aedion.de> <200703231821.49513.sven.panne@aedion.de> Message-ID: <200703241513.38064.sven.panne@aedion.de> Perhaps this is the happy end of a looong story... :-) After lots of failures I think I've successfully converted the hugs repo to darcs, using tailor-0.9.26 and the attached configuration file. The new repo URL is (not surprisingly) http://darcs.haskell.org/hugs98, and it can be browsed via darcsweb, too: http://darcs.haskell.org/darcsweb/darcsweb.cgi. (The latter URL is a bit ugly, see http://www.w3.org/Provider/Style/URI. Something like http://darcs.haskell.org/darcsweb would be much better, but I don't have the permissions to fix the apache2.conf. Who can change this?) Some notes from the trenches: * In general, tailor seems to be a cool piece of SW, but given all the problems I had, I would label it "beta", still. * The bleeding edge version of tailor from darcs is completely broken regarding files which have been removed at some point in the past, one simply gets incomplete changesets, but no warnings/errors/... * The bleeding edge version even has to be modified to run at all with newer python versions (the 'U' modifier when opening files for writing is forbidden). * The latest released version I could find (0.9.27) is incompatible with the python installed on darcs.haskell.org (some 'sort' API change, I guess). * Version 0.9.19 fails to handle the conversion Latin1 => UTF8. * Version 0.9.26 seems to work, at least I hope so. Please give the new repo a try, and if everything seems to be OK, we should somehow disable the CVS repo to avoid confusion. A darcs-all script is on the way (in the next few days). Cheers, S. -------------- next part -------------- [DEFAULT] verbose = True projects = hugs98 [hugs98] root-directory = /home/panne/hugs98_conversion source = cvs:source target = darcs:target state-file = tailor.state patch-name-format=%(firstlogline)s remove-first-log-line=True [cvs:source] repository = /home/cvs/root module = hugs98 subdir = original encoding = iso-8859-1 [darcs:target] root-directory = /home/darcs subdir = hugs98 encoding = utf-8 From ross at soi.city.ac.uk Sat Mar 24 12:08:39 2007 From: ross at soi.city.ac.uk (Ross Paterson) Date: Sat Mar 24 12:08:04 2007 Subject: Hugs' build system In-Reply-To: <200703241513.38064.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703231729.21342.sven.panne@aedion.de> <200703231821.49513.sven.panne@aedion.de> <200703241513.38064.sven.panne@aedion.de> Message-ID: <20070324160839.GA5680@soi.city.ac.uk> On Sat, Mar 24, 2007 at 03:13:37PM +0100, Sven Panne wrote: > Please give the new repo a try, and if everything seems to be OK, we should > somehow disable the CVS repo to avoid confusion. A darcs-all script is on the > way (in the next few days). Looks good to me. Just a few old directories not removed: dotnet/lib/System lib libraries/Hugs If you can do something about those, let's switch. From sven.panne at aedion.de Sat Mar 24 13:11:21 2007 From: sven.panne at aedion.de (Sven Panne) Date: Sat Mar 24 13:10:45 2007 Subject: Hugs' build system In-Reply-To: <20070324160839.GA5680@soi.city.ac.uk> References: <200702251346.26807.sven.panne@aedion.de> <200703241513.38064.sven.panne@aedion.de> <20070324160839.GA5680@soi.city.ac.uk> Message-ID: <200703241811.22046.sven.panne@aedion.de> On Saturday 24 March 2007 17:08, Ross Paterson wrote: > Looks good to me. Just a few old directories not removed: > > dotnet/lib/System > lib > libraries/Hugs > > If you can do something about those, let's switch. This is funny: When I do a 'darcs get' for the repo, my local copy has those 3 empty directories, but the directories on the server are non-empty... Confused, S. From sven.panne at aedion.de Sat Mar 24 13:20:40 2007 From: sven.panne at aedion.de (Sven Panne) Date: Sat Mar 24 13:20:03 2007 Subject: Hugs' build system In-Reply-To: <200703241811.22046.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <20070324160839.GA5680@soi.city.ac.uk> <200703241811.22046.sven.panne@aedion.de> Message-ID: <200703241820.40337.sven.panne@aedion.de> FYI: I'll re-run the conversion and test what's going regarding the empty directories. :-( Currently I'm a bit clueless because the master repo differs from the one I've checked out. I think I'll have to remove these on the server and record this change there. I'll let you know when I'm finished... *sigh* Cheers, S. From sven.panne at aedion.de Sun Mar 25 11:12:26 2007 From: sven.panne at aedion.de (Sven Panne) Date: Sun Mar 25 11:11:50 2007 Subject: Hugs' build system In-Reply-To: <200703241820.40337.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703241811.22046.sven.panne@aedion.de> <200703241820.40337.sven.panne@aedion.de> Message-ID: <200703251712.26469.sven.panne@aedion.de> OK, let's try the next iteration... :-) I've re-converted the repo from scratch, tagged it (including a checkpoint), removed the empty directories, and finally removed the CVS keywords. Things look OK to me now, and http://darcs.haskell.org/darcsweb/darcsweb.cgi?r=hugs98;a=summary is OK, too, I think. Before we turn off Hugs' CVS, I'll have to adapt the build system, add a darcs-all, test building an RPM, etc. Nevertheless, if someone spots a flaw in the conversion up to now, please yell. Small note: tailor seems to use "darcs remove" when a file is removed from CVS, but this does not remove the file itself. Therefore the "empty" diretories stay populated, although their contents are not versioned anymore. I don't know if this is a bug in tailor or supposed to work that way. Anyway, it's a bit surprising to the unsuspecting user... Cheers, S. From ross at soi.city.ac.uk Sun Mar 25 12:37:53 2007 From: ross at soi.city.ac.uk (Ross Paterson) Date: Sun Mar 25 12:37:15 2007 Subject: Hugs' build system In-Reply-To: <200703251712.26469.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703241811.22046.sven.panne@aedion.de> <200703241820.40337.sven.panne@aedion.de> <200703251712.26469.sven.panne@aedion.de> Message-ID: <20070325163753.GA4118@soi.city.ac.uk> On Sun, Mar 25, 2007 at 05:12:26PM +0200, Sven Panne wrote: > OK, let's try the next iteration... :-) I've re-converted the repo from > scratch, tagged it (including a checkpoint), removed the empty directories, > and finally removed the CVS keywords. Things look OK to me now, and > > http://darcs.haskell.org/darcsweb/darcsweb.cgi?r=hugs98;a=summary > > is OK, too, I think. Before we turn off Hugs' CVS, I'll have to adapt the > build system, add a darcs-all, test building an RPM, etc. Nevertheless, if > someone spots a flaw in the conversion up to now, please yell. It looks good to me too. I'm in favour of a quick switch. From sven.panne at aedion.de Sun Mar 25 12:46:16 2007 From: sven.panne at aedion.de (Sven Panne) Date: Sun Mar 25 12:45:37 2007 Subject: Hugs' build system In-Reply-To: <20070325163753.GA4118@soi.city.ac.uk> References: <200702251346.26807.sven.panne@aedion.de> <200703251712.26469.sven.panne@aedion.de> <20070325163753.GA4118@soi.city.ac.uk> Message-ID: <200703251846.16640.sven.panne@aedion.de> On Sunday 25 March 2007 18:37, Ross Paterson wrote: > It looks good to me too. I'm in favour of a quick switch. I am not sure when I can add the final touch (darcs-all etc.), but it should be in the next few days. Perhaps we should make the CVS repo read-only already and update the web pages? Cheers, S. From ross at soi.city.ac.uk Sun Mar 25 13:06:06 2007 From: ross at soi.city.ac.uk (Ross Paterson) Date: Sun Mar 25 13:05:27 2007 Subject: Hugs' build system In-Reply-To: <200703251846.16640.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703251712.26469.sven.panne@aedion.de> <20070325163753.GA4118@soi.city.ac.uk> <200703251846.16640.sven.panne@aedion.de> Message-ID: <20070325170606.GB4118@soi.city.ac.uk> On Sun, Mar 25, 2007 at 06:46:16PM +0200, Sven Panne wrote: > I am not sure when I can add the final touch (darcs-all etc.), but it should > be in the next few days. Perhaps we should make the CVS repo read-only > already and update the web pages? Yes, let's. We'll need darcs-all for building tarballs and RPMs, but the repository is usable now. I'll do the Wiki and web pages. From sven.panne at aedion.de Mon Mar 26 11:18:08 2007 From: sven.panne at aedion.de (Sven Panne) Date: Mon Mar 26 11:17:26 2007 Subject: Hugs' build system In-Reply-To: <20070325172621.GA4578@soi.city.ac.uk> References: <200702251346.26807.sven.panne@aedion.de> <200703251712.26469.sven.panne@aedion.de> <20070325172621.GA4578@soi.city.ac.uk> Message-ID: <200703261718.09045.sven.panne@aedion.de> On Sunday 25 March 2007 19:26, Ross Paterson wrote: > One little glitch: several files that are executable in the CVS version > aren't in the darcs repo (list with: find -type f -perm -0111). Hmmm, darcs doesn't seem to handle any kind of meta data: http://darcs.net/DarcsWiki/FrequentlyAskedQuestions#head-f6690ca8f72ee57532b9cf5e74147ae92f0be62a Experimenting with a local repo, it looks like everything is created 0666 (modulo umask), so I can fix this in the darcs repo, but this won't have any effect on checkouts. GHC's darcs-all suffers from this, too, and nhc98 comes with a 'start' script (which we should probably add, too). Cheers, S. From ross at soi.city.ac.uk Mon Mar 26 11:37:26 2007 From: ross at soi.city.ac.uk (Ross Paterson) Date: Mon Mar 26 11:36:46 2007 Subject: Hugs' build system In-Reply-To: <200703261718.09045.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703251712.26469.sven.panne@aedion.de> <20070325172621.GA4578@soi.city.ac.uk> <200703261718.09045.sven.panne@aedion.de> Message-ID: <20070326153726.GA4713@soi.city.ac.uk> On Mon, Mar 26, 2007 at 05:18:08PM +0200, Sven Panne wrote: > Hmmm, darcs doesn't seem to handle any kind of meta data: > > http://darcs.net/DarcsWiki/FrequentlyAskedQuestions#head-f6690ca8f72ee57532b9cf5e74147ae92f0be62a How disappointing. Still, --set-scripts-executable might be enough for us. From Malcolm.Wallace at cs.york.ac.uk Mon Mar 26 11:38:47 2007 From: Malcolm.Wallace at cs.york.ac.uk (Malcolm Wallace) Date: Mon Mar 26 11:42:02 2007 Subject: Hugs' build system In-Reply-To: <200703261718.09045.sven.panne@aedion.de> References: <200702251346.26807.sven.panne@aedion.de> <200703251712.26469.sven.panne@aedion.de> <20070325172621.GA4578@soi.city.ac.uk> <200703261718.09045.sven.panne@aedion.de> Message-ID: <20070326163847.7c816df6.Malcolm.Wallace@cs.york.ac.uk> Sven Panne wrote: > > One little glitch: several files that are executable in the CVS > > version aren't in the darcs repo (list with: find -type f -perm > > -0111). Yes, darcs does not normally transmit permissions from repository to repository. However I notice that darcs get --set-script-executable exists since at least 1.0.5. But in any case, the provision of a simple post-checkout shell script to initialise permissions, graft sub-repositories etc, is easy and more fool-proof. Regards, Malcolm