-
Notifications
You must be signed in to change notification settings - Fork 522
Description
From SemVer 2.0
How do I know when to release 1.0.0?
If your software is being used in production, it should probably already be 1.0.0. If you have a stable API on which users have come to depend, you should be 1.0.0. If you’re worrying a lot about backward compatibility, you should probably already be 1.0.0.
I am going to argue that this is normally actually the case when you register in general.
If you don't intend for people to use it you shouldn't be registering it.
Perhaps by exception people are registering with intent to iterate rapidly in a breaking way.
But it is exceptional and we can always use the functionality to bypass that rule.
It's problematic we people register pre-1.0
Because
- People struggle to draw the line when to hug 1.0, but on registration is a good time
- Releasing 1.0 once "stability is achieved" is breaking for no reason.
- They can't use full range of semver 3 digits, which makes backporting sometimes impossible.
I propose we only enforce this on new package registration. And allow old packages to be grandfathered.
We have talked about this on and off for years