A Developer's Guide to System Versioning With SemVer and Changesets
Quick question: why is your package at 1.0.0? Why did you pick that version number?
Not your package name. Not your tech stack. The version number. The one sitting in your package.json, your pyproject.toml, your Cargo.toml right now. Did you pick it deliberately, or did some tutorial four years ago start you at 1.0.0 and you've been incrementing by feel ever since?
I ask because I've reviewed a lot of open-source code and talked to a lot of engineers. The honest answer from most of them is: vibes. The number felt right. The feature felt big. The patch felt small.
That's not versioning. That's superstition.
This matters more than it sounds. Your version number is a signal that travels far beyond your own codebase. It lands in manifest files at companies you've never heard of. It gets evaluated by automated dependency tools at 3am when nobody is watching....
Copyright of this story solely belongs to hackernoon.com. To see the full text click HERE