On Wednesday 17 October 2007 01:32, ChrisK wrote: > Simon Marlow wrote: > > 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. > > I have another concrete proposal to avoid things breaking so often. Let us > steal from something that works: shared library versioning on unixy > systems. > > On Max OS X, I note that I have, in /usr/lib: > > lrwxr-xr-x 1 root wheel 15 Jul 24 2005 libcurl.2.dylib -> > > libcurl.3.dylib lrwxr-xr-x 1 root wheel 15 Jul 24 2005 > > libcurl.3.0.0.dylib -> libcurl.3.dylib -rwxr-xr-x 1 root wheel > > 201156 Aug 17 17:14 libcurl.3.dylib lrwxr-xr-x 1 root wheel 15 > > Jul 24 2005 libcurl.dylib -> libcurl.3.dylib > > The above declaratively expresses that libcurl-3.3.0 provides the version 3 > API and the version 2 API. > > This is the capability that should be added to Haskell library packages. > > Right now a library can only declare a single version number. So if I > update hsFoo from 2.1.1 to 3.0.0 then I cannot express whether or not the > version 3 API is a superset of (backward compatible with) the version 2 > API.
If 3.0.0 is a superset of 2.1.1 why was it necessary to bump to 3.0.0? Why not 2.2.0? _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe