Create a versioner utility object or service

Description

We will need a versioner utility object:
A version is described by the v2.0.0 specification found at http://semver.org/.

This is the Semantic Spec:

Pre-Releases Examples:

Methods to implement in this utility can be:

A leading “=” or “v” character is stripped off and returned
If something other than the major is not sent, then a 0 is returned
Ex: 4 = 4.0.0
Ex: 4.0 = 4.0.0

Is the version a valid semantic version

Is this version a semantic pre-release version

Is v1 equal to v2

Is v1 gt v2

Is v1 gte v2

Is v1 lt v2

Is v1 lte v2

Is v gt v1 and lt v2

Is v gte v1 and lte v2

Bump a version according to type

Return a native struct of the version as:

  • major

  • minor = 0 as default

  • patch = 0 as default

  • pre-releaseID = empty as default

  • buildID = 0 as default

Gliffy Diagrams

Activity

Show:

Luis MajanoMarch 26, 2015 at 9:11 PM

Partially completed

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Fix versions

Priority

Components

Sentry

Created September 30, 2014 at 12:41 AM
Updated March 26, 2015 at 9:11 PM
Resolved March 26, 2015 at 9:11 PM