RE: About cabal and compatibility [Was: simplifying user hooks(non-backward-compatible)]
On 10 December 2005 23:27, Robert Dockins wrote:
> I just want to mention that these kind of changes represent represent
> a VERY big problem.
I agree, this is indeed a big problem. I've mentioned it before, albeit
only briefly, and we didn't reach a conclusion.
As you say, Cabal solves (for some value of solve) the versioning
problem for everything except the Setup.lhs script itself. In the
Setup.lhs script we have absolutely no way to request a particular
version of the Cabal library, and even if you have the right version
installed, it might not be the one used by default, so you're screwed
("runghc -package Cabal-1.0 Setup.lhs" doesn't work, and even if it did
this would be a poor solution).
The cabal-version field is only a partial solution - it doesn't help if
the Cabal API changes such that your Setup.lhs script breaks.
I support doing some explicit interface versioning along the lines of
EternalCompatibiliyInTheory, but only for Cabal. It's extra work, but
it's necessary if we want to be taken seriously.