mirror of
https://github.com/semver/semver.git
synced 2026-07-11 08:02:23 -05:00
[GH-ISSUE #257] Deprecation of APIs and introdcuing backwards incompatible API changes in semantic versioning #1047
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @gnijuohz on GitHub (Jun 4, 2015).
Original GitHub issue: https://github.com/semver/semver/issues/257
From the document, I understand that after version 1.0.0, deprecation of APIs (without introducing any backwards incompatible API changes) should increase the minor version number and introducing backwards incompatible API changes should increase the major version number.
It also talks about deprecating functionality in the FAQ section. But it doesn't say something like this, you should deprecate an API if you are going to delete it. (which I think is a good practice)
So I suppose as long as one conforms to the specification (i.e., increase the major release version number), backwards incompatible API changes can be introduced without related APIs being deprecated first? That doesn't sound good.
Should there be some rule preventing sudden changes? Is it out of the scope of this specification? should it be something that's up to the developers?
@stecman commented on GitHub (Jun 9, 2015):
@gnijuohz - the FAQ about deprecating functionality already has a sentence to the effect of "you should deprecate an API if you are going to delete it":
I'm pretty sure that covers the case you're describing. I presume this is in the FAQs rather than in the spec definition as it's more of a "good neighbour" thing to do, rather than something that is required for semver to work.
@jwdonahue commented on GitHub (Dec 8, 2017):
@gnijuohz, unless you have additional questions on this matter, please close this issue at your earliest possible convenience.