Configurations proposal, take n

Ross Paterson ross at
Wed Nov 29 07:28:45 EST 2006

A few questions about package versions:

Presumably it will be possible to have multiple Build-Depends lines,
to allow different interactions to be treated separately.  Will it
be possible to constrain the same package in more than one of these?
For example,

         build-depends: base < 2, fps >= 0.8
         build-depends: base >= 1.5, mtl

(It's possible that no solution will exist, but that's nothing new.)

At present Haskell import declarations cannot specify package versions,
so it is reasonable to assume that a single version of a prerequisite
package satisfies the dependencies of our package.  That's only for
direct dependencies: it's fine (with GHC) to depend on packages P and Q,
where each of these depends on a different version of package R.

Flags allow the builder to force a particular configuration even if
others would work on the build system, but do they have sufficiently
fine granularity?  The build system might have versions 1.2 and 1.3 of
a package, either of which would satisfy the given dependency, but the
target system has only 1.2.

More information about the cabal-devel mailing list