Relaxin the PVP with regards to adding instances

Michael Sloan mgsloan at gmail.com
Thu Sep 6 09:30:42 CEST 2012


Yes, that is why I said "Orphan instances are also discouraged, so for
*consistency* with the policy for regular additions, it would make
sense for libraries adding instances to only necessitate a minor
version bump."

To be clear, I know the PVP well, and have thought about versioning
and API compatibility issues a lot.  It's an important problem that
people seem content to let languish.

-mgsloan

On Thu, Sep 6, 2012 at 12:27 AM, Erik Hesselink <hesselink at gmail.com> wrote:
> On Thu, Sep 6, 2012 at 7:01 AM, Michael Sloan <mgsloan at gmail.com> wrote:
>> Thing is, that if this is the design goal of the PVP, then _any_
>> addition to the exports of a module should necessitate a major version
>> bump, because of the potential for clashing unqualified, non-explicit
>> imports.  The reasoning for this seems to be that the chances are low
>> (very context dependent) and unqualified, non-explicit imports are
>> discouraged and bad style.  Orphan instances are also discouraged, so
>> for consistency with the policy for regular additions, it would make
>> sense for libraries adding instances to only necessitate a minor
>> version bump.
>
> No, the PVP explicitly mentions this. An added export needs only a
> minor version bump. A user of the package can then:
>
>  * Depend on only the range of bugfix releases (A.B.C.*), thus
> guarding against additions. Or,
>  * Depend on a range of minor versions (A.B.*), and use only explicit
> or qualified imports, again guarding against additions.
>
> Erik



More information about the Libraries mailing list