Platform policy question: API compatability in minor releases

Don Stewart dons at galois.com
Sat May 9 19:18:35 EDT 2009


duncan.coutts:
> On Sat, 2009-05-09 at 13:32 -0700, Don Stewart wrote:
> > duncan.coutts:
> > > The question is this:
> > > 
> > >         Should we allow compatible API additions to a library in a minor
> > >         release of the platform?
> > >         
> > >         The choice is between allowing only bug fixes in minor releases,
> > >         or also allowing new features that add APIs but do not change
> > >         any existing APIs.
> > 
> > 
> > I'd like to ensure that the Haskell Platform respects the minor
> > versioning policy for its constituent parts, specified,
> > 
> >     http://haskell.org/haskellwiki/Package_versioning_policy#Version_numbers
> > 
> > That is, if a library author follows the minor version number bump
> > policy, then they can reasonably expect to have that library bump
> > included in the next minor bump of the platform.
> 
> I don't follow this. The package versioning policy distinguished
> compatible API changes from no API changes.


Right, and that's exactly what we should follow for the platform meta
package.


> > If we agree on this, a lot of the decision making for library bumps
> > becomes automated. If we don't, we have to distinguish case-by-case
> > whether a library bump added to the API.
> 
> Surely it's automatic in either case?
> 
> If we choose to allow API additions then it's automatic, we just look at
> if the first two version numbers have not changed.
> 
> If we choose to require the same API then it's automatic, we just look
> at if the first three version numbers have not changed.

That's a good point!

Yes, I'm advocating the "minor" (2 significant digits) policy applies
both to the platform, and its constituents, identically.

-- Don


More information about the Libraries mailing list