
Am Sonntag, 30. November 2008 15:57 schrieb Eric Kow:
Hi Daniel,
On Sun, Nov 30, 2008 at 08:31:15 -0500, haskell-cafe-request@haskell.org wrote:
dafis@linux:~/lhc> darcs get --partial http://code.haskell.org/lhc Invalid repository: http://code.haskell.org/lhc
darcs failed: failed to fetch: http://code.haskell.org/lhc/_darcs/inventory ExitFailure 1
There's a hashed_inventory in lhc/_darcs, but no inventory. Is that a darcs2 vs. darcs1 incompatibility and I'm just screwed or is the repo broken?
There are two issues here. One is that the LHC repository is indeed a darcs 2 repository
Yes, and as Austin told me, it was updated to darcs-2 format yesterday or the day before (depending on time-zone), so one might just consider it bad timing, except
and you appear to have darcs 1 on your machine. I think upgrading to darcs 2 would be a very good idea, and I'm sure the darcs community would be happy to help you with this.
I am now a proud owner of darcs-2.1.2, the source distribution built without problems :), make test said "All tests successful!" three times :D Sorry to deprive you of the pleasure of helping. I had problems with a darcs-2 prerelease earlier, that's why I was pessimistic about getting darcs-2 to work on my old system, the binary wouldn't work because it needed newer libs than I have (and updating those would wreak havoc on other components), and the one from the darcs repo needed a newer autoconf than I have, yay for source releases.
The second issue is that our forward-compatibility detector was likely buggy in darcs 1.0.9. The response darcs 1.0.9 should have given you was something like this:
darcs failed: Can't understand repository format: hashed darcs failed: Can't understand repository format: darcs-2
I've always found darcs' predictive powers somewhat lacking. Seriously, it might be a good idea to have an error message like darcs failed: Can't understand repository format, may be new format or broken. because that would give a starting point for resolving the problem (darcs-2 was conspicuous enough here that I thought of that possibility, but maybe darcs users not suscribed to the relevant lists wouldn't).
Unfortunately, the relationship between hashed and darcs 2 repositories is slightly confusing. Basically you need a darcs 2 client if you see hashed_inventory, but it does not necessarily mean there is an incompatibility. I hope that the following snippet from the darcs 2.1.0 release announcement can help clear this up:
What should I do? ----------------- Upgrade! Binary versions should be available shortly, either from your favourite package distributor or by third party contributors.
Please, do not drop source distributions anyone, binaries tend to work on a much smaller set of systems, source can build against more library versions. Cheers, Daniel