David Roundy wrote: > On Fri, Oct 17, 2008 at 1:42 PM, Ben Franksen > <[EMAIL PROTECTED]> wrote: >> Another issue with franchise (as it stands) is this: I have a parsec-3 >> installed but also a parsec-2. I want darcs to build using parsec-2, >> ignoring parsec-3. How do I do this? > > Right. Franchise is obviously not complete, nor is setup.hs. When > packages change API, we need to check for the right API. This > currently is done with checkForModuleExporting, and I've no idea what > this will do when two packages export the module, but I do know that > the configure test will fail if franchise doesn't find the right > package.
You'll need to worry about incompatible dependencies too. That is, picking two packages that happen to depend on different versions of the same package, which can lead to a type error at compile-time. This is what Cabal calls the "diamond dependency" problem, see http://blog.well-typed.com/2008/08/solving-the-diamond-dependency-problem/ I think the way Franchise is trying to figure out package dependencies is not a good plan, incedentally. We've thought about these issues a lot in the context of Cabal, and while Cabal isn't perfect by any means, it does already solve some of these problems that you're about to encounter. Cheers, Simon _______________________________________________ darcs-users mailing list [email protected] http://lists.osuosl.org/mailman/listinfo/darcs-users
