[Haskell-cafe] Re: [Haskell] Re: Trying to install binary-0.4
dons at galois.com
Tue Oct 16 15:44:33 EDT 2007
> Several good points have been raised in this thread, and while I might not
> agree with everything, I think we can all agree on the goal: things
> shouldn't break so often.
> So rather than keep replying to individual points, I'd like to make some
> concrete proposals so we can make progress.
> 1. Document the version numbering policy.
> We should have done this earlier, but we didn't. The proposed policy, for
> the sake of completeness is: x.y where:
> x changes ==> API changed
> x constant but y changes ==> API extended only
> x and y constant ==> API is identical
> further sub-versions may be added after the x.y, their meaning is
> package-defined. Ordering on versions is lexicographic, given multiple
> versions that satisfy a dependency Cabal will pick the latest.
> 2. Precise dependencies.
> As suggested by various people in this thread: we change the convention so
> that dependencies must specify a single x.y API version, or a range of
> versions with an upper bound. Cabal or Hackage can refuse to accept
> packages that don't follow this convention (perhaps Hackage is a better
> place to enforce it, and Cabal should just warn, I'm not sure).
I agree. >= 1.0 isn't viable in the long term. Rather, a specific list,
or bounded range of tested versions seems likely to be more robust.
More information about the Haskell-Cafe