Nocturnal Programmer's Machine
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    semver-utilspublic

    semver-utils.js

    | Sponsored by ppl

    Some utils that aren't provided by the mainstream semver module.

    Usage

    npm install --save semver-utils
    'use strict';
     
    var semverUtils = require('semver-utils');
    var version = require('./package.json').version;
    var semver = semverUtils.parse(version);
     
    console.log(semver);

    API

    • semverUtils.parse(semverString)
    • semverUtils.stringify(semverObject)
    • semverUtils.parseRange(rangeString)
    • semverUtils.stringifyRange(rangeArray)

    semverUtils.parse(semverString)

    Turns a string such as 1.0.6-1+build-623 into the object

    { semver:   '1.0.6-1+build-623'
    , version:  '1.0.6'
    , major:    '1'
    , minor:    '0'
    , patch:    '6'
    , release:  '1'
    , build:    'build-623'
    }
    

    returns null on error

    semverUtils.stringify(semverObject)

    Creates a string such as 1.0.6-1+build-623 from the object

    { major:    '1'
    , minor:    '0'
    , patch:    '6'
    , release:  '1'
    , build:    'build-623'
    }
    

    semverUtils.parseRange(rangeString)

    A solution to https://github.com/isaacs/node-semver/issues/10

    Parses a range string into an array of semver objects

    >= 1.1.7 < 2.0.0 || 1.1.3 becomes

    [
        {
            "semver": ">= v1.1.7"
          , "operator": ">="
          , "major": 1
          , "minor": 1
          , "patch": 7
        }
      , {
            "semver": "< v2.0.0"
          , "operator": "<"
          , "major": 2
          , "minor": 0
          , "patch": 0
        }
      , {
            "operator": "||"
        }
      , {
            "semver": "v1.1.3"
          , "operator": "="
          , "major": 1
          , "minor": 1
          , "patch": 3
        }
    
    ]
    

    semverUtils.stringifyRange(rangeArray)

    Creates a range string such as >= 1.1.7 < 2.0.0 || 1.1.3 from an array of semver objects (and operators) such as

    [
        { "semver": ">= v1.1.7"
        , "operator": ">="
        , "major": 1
        , "minor": 1
        , "patch": 7
        }
      , { "semver": "< v2.0.0"
        , "operator": "<"
        , "major": 2
        , "minor": 0
        , "patch": 0
        }
      , { "operator": "||"
        }
      , { "semver": "v1.1.3"
        , "operator": "="
        , "major": 1
        , "minor": 1
        , "patch": 3
        }
    
    ]
    

    Obsolete Work

    install

    npm i semver-utils

    Downloadslast 7 days

    60,890

    version

    1.1.2

    license

    APACHEv2

    last publish

    collaborators

    • avatar