Skip to content

Ruby gem versions don't follow pure semantic versioning #1598

@cwize1

Description

@cwize1

Ruby gems use a slight variation on the Semantic Versioning specification. In Semantic Versioning, the pre-release specifier is provided after the dash (-). However, for Ruby gems, the platform and OS are placed after the dash and pre-releases are specified by using non-numerical characters in the version's core components.

For example, 2.0.0.a is the pre-release version a of the 2.0.0 version.

The particular issue I am running into is that nokogiri version 1.18.9-x86_64-linux-gnu is being treated as less-than 1.18.9. However, the -x86_64-linux-gnu string is not part of version string and should be ignored for version comparison.

Source: https://guides.rubygems.org/patterns/#semantic-versioning

Note: I am not a Ruby expert. I am just using jekyll to build docs. While I believe what I wrote is accurate, it would be good to double check.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions