lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Mon, Jan 20, 2020 at 4:06 PM Dibyendu Majumdar <mobile@majumdar.org.uk> wrote:
Hi,

I am watching a talk on CMake - and one of the things the presenter is
talking about (or recommending) is semantic versioning (semver.org).
Made me think that Lua's numbering is not compliant if a minor release
is meant to be signify full backward compatibility. So 5.4 ought be
6.0; and 5.3 and 5.2 ought to have had major version changes too.

Regards

semver is not the only sensible standard for semantic versioning.

Lua follows the older model. The major version number is constrained to only change when there are substantial changes to the design. The minor version number represents what should be interchangeable in terms of compatibility, modulo bugfixes. The patch version number represents bugfixes.

Blindly following semver can result in version numbers that are less meaningful in practice for some projects. It makes different versions of the software look more distinct than they actually are. And it's only really logical at all if the software isn't seeing incrementally added new features -- for something like Lua, you would never see a x.1.x release because that's just not how Lua works.

/s/ Adam