[GH-ISSUE #315] Should rule #9 be upgraded to a SHOULD #4471

Open
opened 2026-06-13 12:33:50 -05:00 by GiteaMirror · 7 comments
Owner

Originally created by @BurtHarris on GitHub (Jun 13, 2016).
Original GitHub issue: https://github.com/semver/semver/issues/315

Currently, rule 9 indicates that use of pre-release suffixes is optional, by using the word MAY.

In real-world implementations, like npm, consumers often depend on publishers following rule 9. It seems to me like the rule should be updated to use the word SHOULD in place of the first occurance of "MAY".

Originally created by @BurtHarris on GitHub (Jun 13, 2016). Original GitHub issue: https://github.com/semver/semver/issues/315 Currently, rule 9 indicates that use of pre-release suffixes is optional, by using the word MAY. In real-world implementations, like npm, consumers often depend on publishers following rule 9. It seems to me like the rule should be updated to use the word SHOULD in place of the first occurance of "MAY".
GiteaMirror added the spelling/grammarquestionwaiting for PR labels 2026-06-13 12:33:50 -05:00
Author
Owner

@haacked commented on GitHub (Jun 13, 2016):

Hmm, I can see how that is a bit confusing. The way I read it, it's "MAY" because not every version is a pre-release version. So a pre-release version MAY be denoted.

<!-- gh-comment-id:225735020 --> @haacked commented on GitHub (Jun 13, 2016): Hmm, I can see how that is a bit confusing. The way I read it, it's "MAY" because not every version is a pre-release version. So a pre-release version MAY be denoted.
Author
Owner

@BurtHarris commented on GitHub (Jun 17, 2016):

OK, good point. So perhaps rule nine should begin with "Any pre-release version SHOULD be denoted by appending a hyphen..."

<!-- gh-comment-id:226652875 --> @BurtHarris commented on GitHub (Jun 17, 2016): OK, good point. So perhaps rule nine should begin with "**Any** pre-release version **SHOULD** be denoted by appending a hyphen..."
Author
Owner

@FichteFoll commented on GitHub (Jun 17, 2016):

The way you phrased it requires "MUST" to be used.

<!-- gh-comment-id:226736104 --> @FichteFoll commented on GitHub (Jun 17, 2016): The way you phrased it requires "MUST" to be used.
Author
Owner

@crazedsanity commented on GitHub (Jun 17, 2016):

I agree that pre-releases must be distinguished from regular/non-pre-release versions. Having "MAY" there seems indicative of the possibility that pre-releases might not be distinguishable as such. So rule 9 would then change to:

A pre-release version MUST be denoted by appending a hyphen...

Just wanted to (hopefully) clarify the wording to ensure we're all on the same page.

<!-- gh-comment-id:226783316 --> @crazedsanity commented on GitHub (Jun 17, 2016): I agree that pre-releases must be distinguished from regular/non-pre-release versions. Having "MAY" there seems indicative of the possibility that pre-releases might not be distinguishable as such. So rule 9 would then change to: > A pre-release version **MUST** be denoted by appending a hyphen... Just wanted to (hopefully) clarify the wording to ensure we're all on the same page.
Author
Owner

@BurtHarris commented on GitHub (Jun 17, 2016):

I'd be happy enough with either version.

<!-- gh-comment-id:226852190 --> @BurtHarris commented on GitHub (Jun 17, 2016): I'd be happy enough with either version.
Author
Owner

@tdpsk commented on GitHub (Jun 19, 2016):

I agree that in practice, pre-release tags should be mandatory because users rely on them in the context of package repositories. Therefore I have created a corresponding pull request in #316, feel free to comment and discuss.

<!-- gh-comment-id:227004577 --> @tdpsk commented on GitHub (Jun 19, 2016): I agree that in practice, pre-release tags should be mandatory because users rely on them in the context of package repositories. Therefore I have created a corresponding pull request in #316, feel free to comment and discuss.
Author
Owner

@FichteFoll commented on GitHub (Jun 19, 2016):

pre-release tags should be mandatory

This could be misunderstood, but the wording in the PR is clear.

<!-- gh-comment-id:227011757 --> @FichteFoll commented on GitHub (Jun 19, 2016): > pre-release tags should be mandatory This could be misunderstood, but the wording in the PR is clear.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/semver#4471