declare what is stable cabal interface. #18

Closed
bos opened this Issue May 24, 2012 · 3 comments

Projects

None yet

2 participants

@bos
Contributor
bos commented May 24, 2012

(Imported from Trac #11, reported by @syntaxpolice on 2005-10-31)

We need to make this more explicit somewhere so that it's clear what might break in the future. Most of this is in the [source:Distribution/Simple.hs Simple module]. The first pass is at StableInterfaces.

Contributor
bos commented May 24, 2012

(Imported comment by @dcoutts on 2005-10-31)

I've mostly been assuming that anything under Simple is not stable but the things directly in Distribution.* as mostly stable.

Similarly, the cabal file format should be stable (or at least backwards compatible) while the hooks api is sadly not stable which is a huge pain.

Contributor
bos commented May 24, 2012

(Imported comment by @dcoutts on 2007-08-04)

The info from the StableInterfaces wiki page is now in the user guide.

@bos bos closed this May 24, 2012

The information here offered some clarity, but it doesn't seem like the usual package verioning policy is acceptable for Cabal: when the API for a function in Distribution.Simple.* changes that means the function becomes essentially unusable in a Setup.hs file (for years, until a package maintainer is comfortable dropping support for an older version of Cabal), for reasons outlined in #1320 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment