DEV Community

Discussion on: Don't trust SemVersioning in NPM Modules

Collapse
 
turnerj profile image
James Turner • Edited

Yep, what you've stated is #4 of the official specification for Semantic Versioning:

4. Major version zero (0.y.z) is for initial development. Anything may change at any time. The public API should not be considered stable.

This issue isn't exclusive to NPM either, packages via Composer or Nuget are the same if they follow the specification.

Collapse
 
tobiassn profile image
Tobias SN

It’s just another case of “Don’t get too comfortable doing this.”.

Collapse
 
henryjw profile image
Henry Williams

Thanks for pointing this out. I wasn't aware that the official spec allows for a major version to be 0 for initial development. Although, I have seen many major packages (knex, soap, axios) remain in 'initial development' phases for years. So I think this could still cause problems for unsuspecting developers.

Collapse
 
ptejada profile image
Pablo Tejada

So is not really and issue but a feature. Great!