Duncan Coutts wrote:

It's not clear to me that we've really bothered to find out. The last
evaluation in relation to ghc that I'm aware of was prior to the 2.0
release. My impression is that we've all complained about the darcs v1
problems (justly) but spent the most effort investigating things other
than darcs v2 which would be the easiest to upgrade to and not have the
problems of using two different systems for ghc vs other libs.

I promised to put together our reasoning on why we don't think moving to darcs2 would help enough. Here's a summary:

 - using the darcs2 format may well fix the exponential-time merge problem,
   but the UI for merging conflicts is still lacking in many important ways
   in darcs:

   * The conflict markers are not annotated with the patch that they came
     from, and the ordering of patches in conflict markers is
     non-deterministic (when I asked about this problem, I was told it was
     hard to fix).

   * The 'darcs changes' output only shows one of the patches that is
     conflicting, you have to guess at the other one(s).  Also, it doesn't
     show which patches are conflict resolutions.

 - Performance.  darcs2 regressed in performance for many operations we
   commonly use.  I've submitted some measurements for some things, but
   it's pretty easy to find your own test cases: things like "darcs add",
   "darcs whatsnew", "darcs unrecord" are all slower than darcs 1.  When
   simple operations take multiple seconds to complete, it really slows
   down your workflow.

 - I still can't use 'darcs annotate' because it's too slow.  Also, we
   can't browse the GHC repository on the web because the web interface
   wants to do 'darcs changes <file>', and that takes minutes.  It's
   possible with caching, but you still have to regenerate the cache
   after a change.

 - why can I do a complete git clone of a remote GHC repo in a few minutes,
   but it takes hours to do a complete 'darcs get'?

 - Bugs.  Many bugs have been fixed in darcs2, which is great, but we
   did already encounter one (hard to reproduce) bug on Windows,
   when trying to get an up-to-date repo.  Perhaps bugs will be less of
   an issue in the future, but we have had painful experiences
   particularly on Windows and I know the darcs developers are still
   not actively testing on Windows.


FWIW, I'd also like to stay with darcs because it has the right model, but unfortunately the current implementation is not useable for us, and it's holding us back.

I'll say something about core libs in a separate mail.

Cheers,
        Simon
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to