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

Ordering Explicit Versions #16

Open
Nixinova opened this issue Jun 2, 2020 · 1 comment
Open

Ordering Explicit Versions #16

Nixinova opened this issue Jun 2, 2020 · 1 comment

Comments

@Nixinova
Copy link

Nixinova commented Jun 2, 2020

In this spec, pre-release identifiers (like 1.6.2.0-Alpha1) are treated the same to release identifiers (like 3.5.0.1-LTS_2021-07). However, this should not be the case; when ordering versions, pre-releases should be placed before the full release and EOS & LTS should probably be placed after.

This spec doesn't mention how versions should be compared, something like 0.16.1.4 < 1.0.0.0-Alpha1 < 1.0.0.0-Beta2 < 1.0.0.0-RC1.

I'd recommend following the SemVer method of using a plus sign to append metadata about the build, which I would consider EOS & LTS to be a part of (for example, 1.0.6.2+LTS_2020-12), and then also follow the SemVer method of ordering versions by disregarding the contents of the metadata and then comparing in numerical order for the dotted versions and ASCII order for the pre-release identifiers. i.e., disruptive -> incompatible -> compatible -> fix -> identifiers, which release versions being ordered after pre-releases. This change would split §Optional Identifiers into a new section about build metadata, which could also be expanded on to support information other than EOS & LTS like build IDs etc.

@Exadra37
Copy link
Member

Exadra37 commented Jun 2, 2020

Hi @Nixinova. I have edited your issue format in order to make it more readable.

Thanks for you suggestions, and I will give them a though.

At a first glance:

  • I can say that I like your suggestion of using the + to separate the metadata.
  • I agree that we may have a section that explicitly specifies how versions must be compared, because now we only address it partially with the examples given in the documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants