PVP proposal: don't require major version bump when adding non-orphan instances

Herbert Valerio Riedel hvr at gnu.org
Wed Feb 26 13:47:28 UTC 2014


On 2014-02-26 at 13:37:24 +0100, Johan Tibell wrote:

[...]

> If this is true, we could change the first two PVP rules to (differences in
> *italics*):
>
>    - If any entity was removed, or the types of any entities or the
>    definitions of datatypes or classes were changed, or *orphan* instances
>    were added or *any instances were* removed, then the new A.B must be
>    greater than the previous A.B. Note that modifying imports or depending on
>    a newer version of another package may cause extra instances to be exported
>    and thus force a major version change.
>
>
>    - Otherwise, if only new bindings, types, classes, *non-orphan instances*,
>    or modules (but see below) were added to the interface, then A.B may remain
>    the same but the new C must be greater than the old C.
>
> and add the following clarifying sentence:
>
> *If a package defines an orphan instance, it must depend on the minor
> version of the packages that define the data type and the type class to be
> backwards compatible. For example, build-depends: mypkg >= 2.1.1 && <
> 2.1.2.*

[...]

general +1 from me


More information about the Libraries mailing list