Should the PVP be changed with regards to instances?

Herbert Valerio Riedel hvr at
Thu Dec 22 09:58:43 CET 2011

Hello Johan,

On Tue, 2011-12-20 at 08:12 -0800, Johan Tibell wrote:

> Introducing new instances is unlikely to break users, as they will
> only get into trouble if they use orphan instances, which is already
> asking for trouble!
> Thoughts?

just a thought: what about using a more fine-grained versioning scheme,
introducing a granularity somewhat in-between the current "major" and
"minor" version components:

 *) X.Y.Z with X,Y and Z denoting major, minor and micro version

 *) the new major component X gets incremented on major changes (= old
major increments, except for typeclass-instance additions)

 *) the new minor component Y gets incremented on typeclass-instance

 *) the new micro component Z gets incremented when the old minor
component would have been incremented

this way, the client code can declare on a dependency, whether new
typeclass instances would pose a potential break (e.g. if the client
code doesn't define any orphan instances, then the "Y" component
increment should pose no threat)

-- hvr

More information about the Libraries mailing list