Interface added (V032) a MAJOR increment?
wick-ed opened this issue Β· comments
Hi @tomzx ,
first of all: good work π
Just a quick question though. Do you think adding an interface should be a MAJOR increment?
This came quite as a shock when testing our code.
An added interface does not seem to break backwards compatibility in any manner:
- Not implementing it does not throw any errors
- Other interfaces/implementations are not affected by it
- New API endpoints would rather qualify as a feature
A new interface just sits there exposing potential new features to be used and/or implemented, so why the major increment?
Wouldn't MINOR be better or am I completely missing something? :(
Regards, Bernhard
PS: I tested with php-semver-checker-git
but I assume the same ruleset/core
HI @wick-ed,
First off, I generally start any question about whether a certain rule should be a certain level with a pointer to docs/02-Configuration.md. If you ever feel a level doesn't correspond to your needs, you may manually override it using a configuration file. Sadly, I just realized that configuration file support is missing from php-semver-checker-git
, so I've created tomzx/php-semver-checker-git#17.
Secondly, what you say is correct. Adding an interface shouldn't be a MAJOR increment based on the points you've brought up. A MINOR increment would indeed be better.
I'll update the rules as soon as possible.
Thanks for your feedback!
Updated @ e339c7c. Let me know if you find any other issues!
Hi @tomzx ,
thanks for the fast answer and for implementing the change. π
I have seen the possibility for local configuration override but I think something that fundamental as semver or BC in general should not be tweaked to avoid issues with ones code.
Thanks again for your work.
Will come back here if I find any other issues!
Regards, Bernhard