version support policy
-
Hello!
I have several questions about version compatibility and support policy.
First:
I assume that standart versioning model applied so change of minor (bugfix?) version (0.6.0 -> 0.6.1 -> 0.6.2 -> etc...) do not break anything whereas changes of major version (0.6.x -> 0.7.x) may break. Is it?
Second:
What's your (developers) policy about supporting old versions? I mean if there is some important bug fixed in current version will your propagate it to older versions brunch? For now as I can see there is at least one (https://github.com/NodeBB/NodeBB/commit/c8e0eab34e933ae64178936be5d17fd78b5a9971) that is not propagated. I mention it only because I looked for it.
Personally I think that software like forums tends to stick to one major version. Upgrade may be painful, some plugins may broke, some custom code may broke too, features changes behaviour... It's not obvious if there is any reason to upgrade if everything "just works".
BTW if there is "stable" and "dev" branches shouldn't important bug fixes be propagated to "stable" branch?
Third:
If you don't maintain older release branches for some reason maybe you could anonce which fixes you made in current branch should be backported to older branch so anyone may make own decision about it?
Anyway many thanks for such a great software!
-
Important bug fixes will be backported to stable branch. But not much further. There's no real reason not to keep software up to date unless battling compatability. But if it's an incompatible plugin. I'd be more inclined to update the plugin to work than stay on an out of date version.
-
The commit I mention is still not backported to 0.6.x branch. Do you think it isn't important?
Please don't get me wrong. I really like NodeBB and want to use it in my next project. I like mostly how it's written. And the plugin system is great. All I want is to be sure that stable branch is maintained.
Stable branch can be maintained by someone else like, oh, me for example. But I need a way to separate "bugfix" commits from everything else.
Sincerely yours
-
If there is no such a thing as "stable branch" atm. then please excuse my impatience
-
-
Semantic versioning dictates that patch versions (
0.6.0
to0.6.1
) are bugfixes, minor versions (0.5.0
to0.6.0
) are backwards-compatible, and major versions (0.6.1
to1.0.0
) can contain breaking changes. However, this only applies to versions>=1.0.0
, which we are not. So:I assume that standart versioning model applied so change of minor (bugfix?) version (0.6.0 -> 0.6.1 -> 0.6.2 -> etc...) do not break anything whereas changes of major version (0.6.x -> 0.7.x) may break. Is it?
Yes, this is correct. We provide upgrade scripts for all versions, although a minor version bump will mean there are breaking changes that can break plugins that are tied to a specific version.
If there is a specific bug that you would like backported to the v0.6.x branch, please let us know and we can take a look.
We tend to limit the number of backports only because they may introduce regressions, and the branch is no longer in active development. Simply make the case to us and we'll try to backport it
Edit: c8e0eab34e933ae64178936be5d17fd78b5a9971 has been backported to
v0.6.x
-
thanks!