| Hey hey! So, primarily I am saying "ish" for two reasons: one, as I said below, I mis-understood how versions were actually used within Go. There's a lot of stuff out there, and keeping the three or four implementations I do know well is tough enough. Second, I don't want to say, definitively, that any particular implementation "does not implement Semver", because I think the spec is deficient enough that it's really hard to say in general. On to your specific points: > That said, as far as I am aware, requiring the "v" prefix for VCS tags is allowed by the semver spec This is true, SemVer says nothing about VCSes. > However, being able to parse parse something like "v1" or "v1.2" is used for example as part of a version query mechanism. Right, so that's what I thought this was getting at, and the general "range" concept isn't in the spec, so all of that is fine, spec speaking. However, that doc comment describes it a bit differently than you are. It describes them as version numbers. So it's possible that the doc comment is a bit mis-leading, maybe. That's very reasonable! This is why we need to clean up the spec text. |
Again, happy to learn otherwise...