[Hackage] #472: new field for version policy
Hackage
trac at galois.com
Wed Jan 21 12:23:49 EST 2009
#472: new field for version policy
----------------------------+-----------------------------------------------
Reporter: duncan | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone: Cabal-1.8
Component: Cabal library | Version: 1.6.0.1
Severity: normal | Keywords:
Difficulty: unknown | Ghcversion:
Platform: |
----------------------------+-----------------------------------------------
We would like packages to be able to describe what version policy they
use.
One common policy that we have been discussing is called the
[http://haskell.org/haskellwiki/Package_versioning_policy Package
versioning policy] or PVP for short. In particular we would like packages
to be able to opt-in to following this policy. It would enable hackage to
enforce the policy (with a suitable API-checking tool) which should
provide a strong guarantee for client packages. In addition it would allow
hackage and cabal to make suggestions for packages about dependencies on
packages that follow the polciy. For example it could suggest not using
upwardly open version ranges.
So we would like a reasonably extensible syntax for packages to specify
what version policy they follow. One suggestion is:
{{{
version-policy: PVP-1
}}}
That is named (and versioned) policies. The names would have to be well
known and defined elsewhere. Only known policies could only be enforced.
As with other similar meta-data, the value should be parsed but allow
unknown policies. Hackage could reject unknown policies, but it would
enable people to make in-house modifications to add new policies.
--
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/472>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects
More information about the cabal-devel
mailing list