getCurrentVersion().then(({ latest, beta }) => { console.log(`Current Latest: ${latest}, Beta: ${beta}`) const { major, minor } = parse(latest) const [tag, currentBeta] = prerelease(beta) const newStable = `${major}.${minor + 1}.0` const newBeta = sameStableVersion(newStable, beta) ? currentBeta + 1 : 0 const newBetaVersion = `${newStable}-${tag}.${newBeta}` console.log(`New beta: ${newBetaVersion}`) console.log(`##vso[task.setvariable variable=PRE_RELEASE_VERSION;isOutput=true]${newBetaVersion}`) })
function isVersionPrerelease(version) { const parsed = semver.parse(version); if (!parsed) return false; return Boolean(parsed.prerelease.length); }
Object.keys(pick(report, Object.keys(deps))) .map(name => ({ ...report[name], name })) .forEach(({ name: offender, latest, current }) => { // check if semver can parse the versions at all if (!semver.parse(current) || !semver.parse(latest)) return const mitigation = `Upgrade to v${latest} (Current: v${current})` if (semver.major(current) < semver.major(latest)) { results.high({ offender, mitigation, code: `${offender}-1`, description: 'Module is one or more major versions out of date' }) } else if (semver.minor(current) < semver.minor(latest)) { results.medium({ offender, mitigation, code: `${offender}-2`, description: 'Module is one or more minor versions out of date' }) } else if (semver.patch(current) < semver.patch(latest)) { results.low({ offender, mitigation, code: `${offender}-3`, description: 'Module is one or more patch versions out of date' }) } })
const getMajorVersion = (input) => semver.parse(input).major
stdout .trim() .split('\n') .map(l => JSON.parse(l || '{}')) .filter(l => l.type === 'table') .map(finding => finding.data.body) .reduce((flatmap, results) => flatmap.concat(results), []) .reduce((results, [offender, current, _, latest]) => { // check if semver can parse the versions at all if (!semver.parse(current) || !semver.parse(latest)) return results const mitigation = `Upgrade to v${latest} (Current: v${current})` if (semver.major(current) < semver.major(latest)) { results.high({ offender, mitigation, code: `${offender}-1`, description: 'Module is one or more major versions out of date' }) } else if (semver.minor(current) < semver.minor(latest)) { results.medium({ offender, mitigation, code: `${offender}-2`, description: 'Module is one or more minor versions out of date' }) } else if (semver.patch(current) < semver.patch(latest)) { results.low({ offender, mitigation, code: `${offender}-3`, description: 'Module is one or more patch versions out of date' }) } return results }, new ModuleResults(key))
var versionSemver = semver.parse(version) if (versionSemver) {
const parsed = semver.parse(version); if (parsed.prerelease.length && (!usePre || useRel)) continue;
const getMinorVersion = (input) => semver.parse(input).minor
var versionSemver = semver.parse(version) var overrideDistUrl = gyp.opts['dist-url'] || gyp.opts.disturl var isDefaultVersion isDefaultVersion = version === semver.parse(defaultVersion).version ia32: { libUrl: libUrl32, libPath: normalizePath(path.relative(url.parse(baseUrl).path, url.parse(libUrl32).path)) }, x64: { libUrl: libUrl64, libPath: normalizePath(path.relative(url.parse(baseUrl).path, url.parse(libUrl64).path)) }, arm64: { libUrl: libUrlArm64, libPath: normalizePath(path.relative(url.parse(baseUrl).path, url.parse(libUrlArm64).path))