[darcs-users] enfranchising darcs?

Jason Dagit dagit at codersbase.com
Thu Oct 16 18:25:47 UTC 2008

On Thu, Oct 16, 2008 at 9:24 AM, Eric Kow <kowey at darcs.net> wrote:

> There are a lot of folks that would rather we just used Cabal.  After
> all, it is the de facto Haskell standard and has been around for longer
> (thus being potentially more battle-tested).  David strongly opposes
> this move, I think, because he feels that mandatory metadata is a form
> of redundancy (maintainence hassle) can also be fragile when, for
> example, a new version of GHC comes along.
> I hope there are ways for Cabal fans and franchise fans to work
> together, maybe with Cabalisation as an effort in an unofficial branch.
> There are also some shared problems that the cabalisations and
> enfranchisement have in common and could work together on.  Ganesh's
> zlib patches are one good example, as are David's Workaround
> simplifications.  Some options we could consider:

The part I'm most confused on is the history and future.

* We had/have a way to build darcs relatively easily and reliably on POSIX
systems, eg., autotools. (By POSIX, I mean roughly linux, *BSD, solaris, and
osx.)  Myself and others have complained about the messyness of autotools
but at the end of the day it does seem to be getting the job done.

* We lack a reproducible way to build darcs on windows.  Historically the
only way I know of to build on windows is to install some sort of POSIX
emulation like cygwin or mingw but it seems to be quite complicated and hard
to get it right.  This has caused people like Neil and myself to avoid
building darcs on windows.

* Many people have requested optional Cabal support for building on Windows
(really our only non-POSIX system).  We can currently build with Cabal +
configure on windows and now we're finally close to building with Cabal
minus autotools.  We already have several independent cabalization efforts.
Many people have requested that darcs be available from hackage and a
derived work of the official darcs source is available there cabalized.
Some form of Cabal support is clearly something people want.

* Now it seems as though the plan is to throw autotools out the window on
all platforms and unconditionally.  Meaning that on POSIX platforms we are
changing something that isn't broken.

* I personally do not consider wine to be windows and I do not consider
testing on wine to be an acceptable substitute for testing real software for
windows compatibility.

Now, it seems that Cabal works wherever GHC works, including Windows.  Cabal
has been under development for a few years and is now approaching a mature
status.  Cabal is tested, battle hardened, and all of hackage is built
regularly to ensure that it remains working as new features are added and
code is refactored.  Duncan is very responsive about bugs, there are summer
of code projects every summer for Cabal, it has a nice project website with
bugtracker and community, lots of documentation, tutorials around the net,
and otherwise seems very healthy and alive.  Recently Duncan gave a talk
about the future of Cabal[1] that sounds very promising.

Now the part that I don't understand in light of the above is this:
If we're going to use franchise for darcs, why do we need to exclude the use
of autotools and cabal?

There are plenty of other things I don't understand about this situation,
but that one is most frustrating to me at the moment.  If someone says, "No,
you've got it wrong, you'll still be able to build with either autotools or
cabal without any of the other three."  I'll go happily back to hacking and
forget all about this :)


[1] http://www.galois.com/blog/2008/10/06/tech-talk-the-future-of-cabal/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osuosl.org/pipermail/darcs-users/attachments/20081016/bed0d0cd/attachment.htm 

More information about the darcs-users mailing list