Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace tentative proposal-style wording #779

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

aaaidan
Copy link

@aaaidan aaaidan commented Dec 2, 2021

Strengthen wording to reflect the firm industry support SemVer has gained since the spec was first written.

To address #778

Comments and contributions welcome.

@jwdonahue
Copy link
Contributor

I like this. I wouldn't call it "strengthening", but they are good changes. Industry support isn't relevant either. The fact is that semantic versioning, in its many forms, is part of the technical lexicon. SemVer as presented here, is one form of semantic versioning, but the proposal here is limited to just this one scheme. I would reword this to indicate that this is one, arguably the most popular, form of semantic versioning (possibly the first scheme to be formally named as such?).

@aaaidan
Copy link
Author

aaaidan commented Dec 12, 2021

I just had a look, and I can’t find any evidence of anyone using the phrase “semantic versioning” to describe their non-SemVer versioning strategy.

Perhaps it’s just buried, for me, by the common usage that “semantic versioning” == SemVer. In itself, I wonder if that indicates we needn’t worry about falsely “claiming” that phrase.

Realistically, I don’t think it would be reasonable in 2021 and beyond to use the term “semantic versioning” in software circles and not expect the listener to think you’re talking about SemVer.

If I’m right, I think it’s okay to use these terms more or less interchangeably.

Thoughts?

@JohnTitor JohnTitor added the spelling/grammar Grammar changes without affect to specification rules itself label Jul 23, 2022
@jwdonahue
Copy link
Contributor

@aaaidan, WikiPedia mentions several forms of semantic versioning: https://en.wikipedia.org/wiki/Software_versioning#Semantic_versioning

There's always been two kinds of versioning: semantic and numerical, both have histories going back thousands of years.

The "semantic X" craze in the software developers community, was kick started at least as far back as May 2001, in a Scientific American article co-authored by Tim Berners-Lee, James Handler and Ora Lassila titled "The Semantic Web", but they merely defined how semantics, a field as old as language studies, could be applied to the web, such that machines could process it without having to parse human language.

According to the Google: Tom Preston-Werner (aka Mojombo) used the phrase "semantic versioning" when he created SemVer back in 2013, but I recall tracing it back to the 2008..2010 range a few years ago, still attributed to Mojombo, but his original repo is no longer available on GitHub. I think his main contribution was the marriage of a common syntax and semantics, with an easy to remember brand "SemVer", at a time when there were a lot of newbies coming on the scene and chaotically reinventing every wheel they could think of.

The history of software versioning is littered with a huge range of semantics and syntaxes, many of which originated in the phenolic board labeling schemes used by the electronics industry, which itself was adopted from common book and journal versioning schemes that date back to the first printing presses.

SemVer may dominate in the NPM, Nuget, and a handful of other silos, but there are many popular software libraries, operating systems and apps that use other forms of semantic versioning, some of which have more specific labels on them in the WikiPedia article.

There are many forms of Semantic Versioning. Claiming that SemVer “is” Semantic Versioning isn’t necessary and risks implying there other semantic schemes don’t exist.
@aaaidan
Copy link
Author

aaaidan commented Sep 15, 2023

Thanks for the history, very interesting.

On reflection, the “this is” sentence risks implying SemVer is the only semantic versioning. As you explain, that’s not true. It’s also doesn’t seem to be critically important, and only reinforces the “we propose” vibe I’m trying to update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spelling/grammar Grammar changes without affect to specification rules itself
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants