
On 31 January 2006 21:38, Isaac Jones wrote:
Duncan Coutts
writes: On Tue, 2006-01-31 at 13:54 +0000, Simon Marlow wrote:
Duncan Coutts wrote:
We really need a field:
cabal-depends: 1.1.4
So that older versions of Cabal can say "you need version ${cabal-depends} of Cabal to build this package".
There is such a field:
cabal-version: >=1.1.4
Really! I had never seen it.
but I didn't use it in Haddock (now fixed). This field doesn't help with all the backwards compatibility issues, particularly API changes in the Cabal libraries, as we know (see previous discussions).
Indeed, because by the time the cabal Setup.lhs reads the file it's too late. Hence my suggestion in the previous discussions for a cabal program that reads the file, decides which version of the Cabal libs to use and then builds a setup program and passes control on to that.
Ahem. Cabal-install.
It doesn't read that field yet, though.
Do you intend cabal-install to be the main interface to Cabal? That's what Duncan was proposing (and others have suggested) - that we deprecate the use of 'runhaskell Setup.lhs' as the interface to Cabal in favour of a program to do the same. Certainly there doesn't seem much point in having *both* cabal-install and another wrapper, so clearly they should be the same thing. I do think this is the way to go, though. Cheers, Simon