UNPKG

renovate

Version:

Automated dependency updates. Flexible so you don't need to be.

56 lines (55 loc) 1.79 kB
import { getNewValue, getPinnedValue, isLessThanRange } from "./range.js"; import * as pep440 from "@renovatebot/pep440"; //#region lib/modules/versioning/pep440/index.ts const id = "pep440"; const { compare: sortVersions, satisfies: satisfies$1, valid, validRange, explain, gt: isGreaterThan, major: getMajor, minor: getMinor, patch: getPatch, eq } = pep440; function isVersion(input) { return !!valid(input); } const isStable = (input) => { const version = explain(input); if (!version) return false; return !version.is_prerelease; }; function isValid(input) { return validRange(input) || isVersion(input); } function getSatisfyingVersion(versions, range) { const found = pep440.filter(versions, range).sort(sortVersions); return found.length === 0 ? null : found[found.length - 1]; } function minSatisfyingVersion(versions, range) { const found = pep440.filter(versions, range).sort(sortVersions); return found.length === 0 ? null : found[0]; } function isSingleVersion(constraint) { return isVersion(constraint) || constraint?.startsWith("==") && isVersion(constraint.substring(2).trim()); } const equals = (version1, version2) => isVersion(version1) && isVersion(version2) && eq(version1, version2); function matches(version, range) { if (!isVersion(version)) return false; if (isVersion(range)) return equals(version, range); return isValid(range) && satisfies$1(version, range, { prereleases: true }); } const api = { equals, getMajor, getMinor, getPatch, isCompatible: isVersion, isGreaterThan, isSingleVersion, isStable, isValid, isVersion, matches, getSatisfyingVersion, minSatisfyingVersion, getNewValue, getPinnedValue, sortVersions, isLessThanRange }; //#endregion export { api as default, id, isValid, matches }; //# sourceMappingURL=index.js.map