diff --git a/lib/util/semver.js b/lib/util/semver.js index cacfa2bf65673dc36eb832874c234025e78ebeab..b4e054df13329e20257610059670a1c081ca44c9 100644 --- a/lib/util/semver.js +++ b/lib/util/semver.js @@ -16,7 +16,6 @@ const { patch: getPatch, satisfies: matchesSemver, valid: isPinnedVersion, - validRange: isValidSemver, } = semver; const padRange = range => range + '.0'.repeat(3 - range.split('.').length); @@ -28,6 +27,9 @@ const getMajor = input => { const isRange = input => isValidSemver(input) && !isPinnedVersion(input); +// If this is left as an alias, inputs like "17.04.0" throw errors +const isValidSemver = input => semver.validRange(input); + module.exports = { getMajor, getMinor, diff --git a/test/util/semver.spec.js b/test/util/semver.spec.js index 18bd7b70f0769a9604a78f909816f514856c9a47..bfd5c79a4ab506bb0988f6be1a9f537864918a64 100644 --- a/test/util/semver.spec.js +++ b/test/util/semver.spec.js @@ -1,6 +1,9 @@ const semver = require('../../lib/util/semver'); describe('.isValidSemver(input)', () => { + it('should return null for irregular versions', () => { + expect(!!semver.isValidSemver('17.04.0')).toBe(false); + }); it('should support simple semver', () => { expect(!!semver.isValidSemver('1.2.3')).toBe(true); });