renovate 44.103.7 → 44.104.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/modules/versioning/generic-range.js +56 -0
- package/dist/modules/versioning/generic-range.js.map +1 -0
- package/dist/modules/versioning/index.d.ts +2 -2
- package/dist/modules/versioning/regex/index.js +29 -0
- package/dist/modules/versioning/regex/index.js.map +1 -1
- package/dist/modules/versioning/types.d.ts +9 -1
- package/package.json +3 -3
- package/renovate-schema.json +2 -2
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { regEx } from "../../util/regex.js";
|
|
2
|
+
import { isNonEmptyString } from "@sindresorhus/is";
|
|
3
|
+
//#region lib/modules/versioning/generic-range.ts
|
|
4
|
+
const operators = [
|
|
5
|
+
"<=",
|
|
6
|
+
">=",
|
|
7
|
+
"==",
|
|
8
|
+
"<",
|
|
9
|
+
">",
|
|
10
|
+
"="
|
|
11
|
+
];
|
|
12
|
+
const separator = regEx(/[\s,]+/);
|
|
13
|
+
/**
|
|
14
|
+
* Parse a comparator range (for example `<=1.2.3`, `>1.0 <2.0`, or `=1.2.3`)
|
|
15
|
+
* into its `{ operator, version }` terms, which are ANDed together. Returns
|
|
16
|
+
* `null` when the input is not a comparator range (such as a bare version), so
|
|
17
|
+
* callers can fall back to treating it as a version.
|
|
18
|
+
*
|
|
19
|
+
* The `isVersion` predicate validates each operand against the caller's own
|
|
20
|
+
* version format and the caller compares with its own ordering, so this parser
|
|
21
|
+
* stays independent of any single versioning scheme (unlike npm `semver`,
|
|
22
|
+
* whose parser also coerces and normalizes the operands).
|
|
23
|
+
*/
|
|
24
|
+
function parseRange(range, isVersion) {
|
|
25
|
+
if (!isNonEmptyString(range)) return null;
|
|
26
|
+
const comparators = [];
|
|
27
|
+
for (const term of range.trim().split(separator)) {
|
|
28
|
+
const operator = operators.find((op) => term.startsWith(op));
|
|
29
|
+
if (!operator) return null;
|
|
30
|
+
const version = term.slice(operator.length);
|
|
31
|
+
if (!isVersion(version)) return null;
|
|
32
|
+
comparators.push({
|
|
33
|
+
operator,
|
|
34
|
+
version
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
return comparators;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Given the result of comparing a version against a comparator's version
|
|
41
|
+
* (negative when lower, zero when equal, positive when higher), return whether
|
|
42
|
+
* the comparator's operator is satisfied.
|
|
43
|
+
*/
|
|
44
|
+
function satisfiesComparator(comparison, operator) {
|
|
45
|
+
switch (operator) {
|
|
46
|
+
case "<": return comparison < 0;
|
|
47
|
+
case "<=": return comparison <= 0;
|
|
48
|
+
case ">": return comparison > 0;
|
|
49
|
+
case ">=": return comparison >= 0;
|
|
50
|
+
default: return comparison === 0;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { parseRange, satisfiesComparator };
|
|
55
|
+
|
|
56
|
+
//# sourceMappingURL=generic-range.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generic-range.js","names":[],"sources":["../../../lib/modules/versioning/generic-range.ts"],"sourcesContent":["import { isNonEmptyString } from '@sindresorhus/is';\nimport { regEx } from '../../util/regex.ts';\nimport type { RangeComparator } from './types.ts';\n\n// Comparator operators, longest first so `<=` is matched ahead of `<`, `>=`\n// ahead of `>`, and `==` ahead of `=`.\nconst operators = ['<=', '>=', '==', '<', '>', '='];\nconst separator = regEx(/[\\s,]+/);\n\n/**\n * Parse a comparator range (for example `<=1.2.3`, `>1.0 <2.0`, or `=1.2.3`)\n * into its `{ operator, version }` terms, which are ANDed together. Returns\n * `null` when the input is not a comparator range (such as a bare version), so\n * callers can fall back to treating it as a version.\n *\n * The `isVersion` predicate validates each operand against the caller's own\n * version format and the caller compares with its own ordering, so this parser\n * stays independent of any single versioning scheme (unlike npm `semver`,\n * whose parser also coerces and normalizes the operands).\n */\nexport function parseRange(\n range: string,\n isVersion: (version: string) => boolean,\n): RangeComparator[] | null {\n if (!isNonEmptyString(range)) {\n return null;\n }\n const comparators: RangeComparator[] = [];\n for (const term of range.trim().split(separator)) {\n const operator = operators.find((op) => term.startsWith(op));\n if (!operator) {\n return null;\n }\n const version = term.slice(operator.length);\n if (!isVersion(version)) {\n return null;\n }\n comparators.push({ operator, version });\n }\n return comparators;\n}\n\n/**\n * Given the result of comparing a version against a comparator's version\n * (negative when lower, zero when equal, positive when higher), return whether\n * the comparator's operator is satisfied.\n */\nexport function satisfiesComparator(\n comparison: number,\n operator: string,\n): boolean {\n switch (operator) {\n case '<':\n return comparison < 0;\n case '<=':\n return comparison <= 0;\n case '>':\n return comparison > 0;\n case '>=':\n return comparison >= 0;\n default:\n return comparison === 0;\n }\n}\n"],"mappings":";;;AAMA,MAAM,YAAY;CAAC;CAAM;CAAM;CAAM;CAAK;CAAK;AAAG;AAClD,MAAM,YAAY,MAAM,QAAQ;;;;;;;;;;;;AAahC,SAAgB,WACd,OACA,WAC0B;CAC1B,IAAI,CAAC,iBAAiB,KAAK,GACzB,OAAO;CAET,MAAM,cAAiC,CAAC;CACxC,KAAK,MAAM,QAAQ,MAAM,KAAK,CAAC,CAAC,MAAM,SAAS,GAAG;EAChD,MAAM,WAAW,UAAU,MAAM,OAAO,KAAK,WAAW,EAAE,CAAC;EAC3D,IAAI,CAAC,UACH,OAAO;EAET,MAAM,UAAU,KAAK,MAAM,SAAS,MAAM;EAC1C,IAAI,CAAC,UAAU,OAAO,GACpB,OAAO;EAET,YAAY,KAAK;GAAE;GAAU;EAAQ,CAAC;CACxC;CACA,OAAO;AACT;;;;;;AAOA,SAAgB,oBACd,YACA,UACS;CACT,QAAQ,UAAR;EACE,KAAK,KACH,OAAO,aAAa;EACtB,KAAK,MACH,OAAO,cAAc;EACvB,KAAK,KACH,OAAO,aAAa;EACtB,KAAK,MACH,OAAO,cAAc;EACvB,SACE,OAAO,eAAe;CAC1B;AACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DistroDataFile, DistroInfoRecord, DistroInfoRecordWithVersion, DistroSchedule, GenericVersion, NewValueConfig, VersionComparator, VersionParser, VersioningApi, VersioningApiConstructor } from "./types.js";
|
|
1
|
+
import { DistroDataFile, DistroInfoRecord, DistroInfoRecordWithVersion, DistroSchedule, GenericVersion, NewValueConfig, RangeComparator, VersionComparator, VersionParser, VersioningApi, VersioningApiConstructor } from "./types.js";
|
|
2
2
|
import { index_d_exports } from "./semver-coerced/index.js";
|
|
3
3
|
//#region lib/modules/versioning/index.d.ts
|
|
4
4
|
declare const defaultVersioning: typeof index_d_exports;
|
|
@@ -9,5 +9,5 @@ declare function getVersioningList(): string[];
|
|
|
9
9
|
declare function getVersionings(): Map<string, VersioningApi | VersioningApiConstructor>;
|
|
10
10
|
declare function get(versioning: string | null | undefined): VersioningApi;
|
|
11
11
|
//#endregion
|
|
12
|
-
export { DistroDataFile, DistroInfoRecord, DistroInfoRecordWithVersion, DistroSchedule, GenericVersion, NewValueConfig, VersionComparator, VersionParser, VersioningApi, VersioningApiConstructor, defaultVersioning, get, getVersioningList, getVersionings };
|
|
12
|
+
export { DistroDataFile, DistroInfoRecord, DistroInfoRecordWithVersion, DistroSchedule, GenericVersion, NewValueConfig, RangeComparator, VersionComparator, VersionParser, VersioningApi, VersioningApiConstructor, defaultVersioning, get, getVersioningList, getVersionings };
|
|
13
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CONFIG_VALIDATION } from "../../../constants/error-messages.js";
|
|
2
2
|
import { regEx } from "../../../util/regex.js";
|
|
3
3
|
import { GenericVersioningApi } from "../generic.js";
|
|
4
|
+
import { parseRange, satisfiesComparator } from "../generic-range.js";
|
|
4
5
|
import { isUndefined } from "@sindresorhus/is";
|
|
5
6
|
//#region lib/modules/versioning/regex/index.ts
|
|
6
7
|
const id = "regex";
|
|
@@ -41,6 +42,34 @@ var RegExpVersioningApi = class extends GenericVersioningApi {
|
|
|
41
42
|
const parsedCurrent = this._parse(current);
|
|
42
43
|
return !!(parsedVersion && parsedVersion.compatibility === parsedCurrent?.compatibility);
|
|
43
44
|
}
|
|
45
|
+
isValid(input) {
|
|
46
|
+
return this.isVersion(input) || parseRange(input, (v) => this.isVersion(v)) !== null;
|
|
47
|
+
}
|
|
48
|
+
isVersion(version) {
|
|
49
|
+
return this._parse(version) !== null;
|
|
50
|
+
}
|
|
51
|
+
isSingleVersion(input) {
|
|
52
|
+
const range = parseRange(input, (v) => this.isVersion(v));
|
|
53
|
+
if (range) return range.length === 1 && (range[0].operator === "=" || range[0].operator === "==");
|
|
54
|
+
return this.isVersion(input);
|
|
55
|
+
}
|
|
56
|
+
matches(version, range) {
|
|
57
|
+
const comparators = parseRange(range, (v) => this.isVersion(v));
|
|
58
|
+
if (!comparators) return this.equals(version, range);
|
|
59
|
+
return comparators.every((comparator) => satisfiesComparator(this._compare(version, comparator.version), comparator.operator));
|
|
60
|
+
}
|
|
61
|
+
getSatisfyingVersion(versions, range) {
|
|
62
|
+
if (parseRange(range, (v) => this.isVersion(v)) === null) return super.getSatisfyingVersion(versions, range);
|
|
63
|
+
const matching = versions.filter((v) => this.matches(v, range));
|
|
64
|
+
matching.sort((a, b) => this._compare(a, b));
|
|
65
|
+
return matching.at(-1) ?? null;
|
|
66
|
+
}
|
|
67
|
+
minSatisfyingVersion(versions, range) {
|
|
68
|
+
if (parseRange(range, (v) => this.isVersion(v)) === null) return super.minSatisfyingVersion(versions, range);
|
|
69
|
+
const matching = versions.filter((v) => this.matches(v, range));
|
|
70
|
+
matching.sort((a, b) => this._compare(a, b));
|
|
71
|
+
return matching.at(0) ?? null;
|
|
72
|
+
}
|
|
44
73
|
};
|
|
45
74
|
const api = RegExpVersioningApi;
|
|
46
75
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../lib/modules/versioning/regex/index.ts"],"sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport { CONFIG_VALIDATION } from '../../../constants/error-messages.ts';\nimport { regEx } from '../../../util/regex.ts';\nimport { GenericVersioningApi } from '../generic.ts';\nimport type { VersioningApiConstructor } from '../types.ts';\nimport type { RegExpVersion } from './types.ts';\n\nexport const id = 'regex';\nexport const displayName = 'Regular Expression';\nexport const urls = [];\nexport const supportsRanges = false;\n\nexport class RegExpVersioningApi extends GenericVersioningApi<RegExpVersion> {\n // config is expected to be overridden by a user-specified RegExp value\n // sample values:\n //\n // * emulates the \"semver\" configuration:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(-(?<prerelease>.*))?$')\n // * emulates the \"docker\" configuration:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(-(?<compatibility>.*))?$')\n // * matches the versioning approach used by the Python images on DockerHub:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(?<prerelease>[^.-]+)?(-(?<compatibility>.*))?$');\n // * matches the versioning approach used by the Bitnami images on DockerHub:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(:?-(?<compatibility>.*-r)(?<build>\\\\d+))?$');\n protected readonly _config: RegExp;\n\n constructor(_new_config: string | undefined) {\n super();\n const new_config = _new_config ?? '^(?<major>\\\\d+)?$';\n\n // without at least one of {major, minor, patch} specified in the regex,\n // this versioner will not work properly\n if (\n !new_config.includes('<major>') &&\n !new_config.includes('<minor>') &&\n !new_config.includes('<patch>')\n ) {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = new_config;\n error.validationError =\n 'regex versioning needs at least one major, minor or patch group defined';\n throw error;\n }\n\n // TODO: should we validate the user has not added extra unsupported\n // capture groups? (#9717)\n this._config = regEx(new_config);\n }\n\n // convenience method for passing a string into a Version given current config.\n protected _parse(version: string): RegExpVersion | null {\n const groups = this._config?.exec(version)?.groups;\n if (!groups) {\n return null;\n }\n\n const { major, minor, patch, build, revision, prerelease, compatibility } =\n groups;\n const release = [\n isUndefined(major) ? 0 : Number.parseInt(major, 10),\n isUndefined(minor) ? 0 : Number.parseInt(minor, 10),\n isUndefined(patch) ? 0 : Number.parseInt(patch, 10),\n ];\n\n if (build) {\n release.push(Number.parseInt(build, 10));\n if (revision) {\n release.push(Number.parseInt(revision, 10));\n }\n }\n\n return {\n release,\n prerelease,\n compatibility,\n };\n }\n\n override isCompatible(version: string, current: string): boolean {\n const parsedVersion = this._parse(version);\n const parsedCurrent = this._parse(current);\n return !!(\n parsedVersion &&\n parsedVersion.compatibility === parsedCurrent?.compatibility\n );\n }\n}\n\nexport const api: VersioningApiConstructor = RegExpVersioningApi;\n\nexport default api;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../lib/modules/versioning/regex/index.ts"],"sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport { CONFIG_VALIDATION } from '../../../constants/error-messages.ts';\nimport { regEx } from '../../../util/regex.ts';\nimport { GenericVersioningApi } from '../generic.ts';\nimport { parseRange, satisfiesComparator } from '../generic-range.ts';\nimport type { VersioningApiConstructor } from '../types.ts';\nimport type { RegExpVersion } from './types.ts';\n\nexport const id = 'regex';\nexport const displayName = 'Regular Expression';\nexport const urls = [];\nexport const supportsRanges = false;\n\nexport class RegExpVersioningApi extends GenericVersioningApi<RegExpVersion> {\n // config is expected to be overridden by a user-specified RegExp value\n // sample values:\n //\n // * emulates the \"semver\" configuration:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(-(?<prerelease>.*))?$')\n // * emulates the \"docker\" configuration:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(-(?<compatibility>.*))?$')\n // * matches the versioning approach used by the Python images on DockerHub:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(?<prerelease>[^.-]+)?(-(?<compatibility>.*))?$');\n // * matches the versioning approach used by the Bitnami images on DockerHub:\n // RegExp('^(?<major>\\\\d+)\\\\.(?<minor>\\\\d+)\\\\.(?<patch>\\\\d+)(:?-(?<compatibility>.*-r)(?<build>\\\\d+))?$');\n protected readonly _config: RegExp;\n\n constructor(_new_config: string | undefined) {\n super();\n const new_config = _new_config ?? '^(?<major>\\\\d+)?$';\n\n // without at least one of {major, minor, patch} specified in the regex,\n // this versioner will not work properly\n if (\n !new_config.includes('<major>') &&\n !new_config.includes('<minor>') &&\n !new_config.includes('<patch>')\n ) {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = new_config;\n error.validationError =\n 'regex versioning needs at least one major, minor or patch group defined';\n throw error;\n }\n\n // TODO: should we validate the user has not added extra unsupported\n // capture groups? (#9717)\n this._config = regEx(new_config);\n }\n\n // convenience method for passing a string into a Version given current config.\n protected _parse(version: string): RegExpVersion | null {\n const groups = this._config?.exec(version)?.groups;\n if (!groups) {\n return null;\n }\n\n const { major, minor, patch, build, revision, prerelease, compatibility } =\n groups;\n const release = [\n isUndefined(major) ? 0 : Number.parseInt(major, 10),\n isUndefined(minor) ? 0 : Number.parseInt(minor, 10),\n isUndefined(patch) ? 0 : Number.parseInt(patch, 10),\n ];\n\n if (build) {\n release.push(Number.parseInt(build, 10));\n if (revision) {\n release.push(Number.parseInt(revision, 10));\n }\n }\n\n return {\n release,\n prerelease,\n compatibility,\n };\n }\n\n override isCompatible(version: string, current: string): boolean {\n const parsedVersion = this._parse(version);\n const parsedCurrent = this._parse(current);\n return !!(\n parsedVersion &&\n parsedVersion.compatibility === parsedCurrent?.compatibility\n );\n }\n\n override isValid(input: string): boolean {\n return (\n this.isVersion(input) ||\n parseRange(input, (v) => this.isVersion(v)) !== null\n );\n }\n\n override isVersion(version: string): boolean {\n return this._parse(version) !== null;\n }\n\n override isSingleVersion(input: string): boolean {\n const range = parseRange(input, (v) => this.isVersion(v));\n if (range) {\n return (\n range.length === 1 &&\n (range[0].operator === '=' || range[0].operator === '==')\n );\n }\n return this.isVersion(input);\n }\n\n override matches(version: string, range: string): boolean {\n const comparators = parseRange(range, (v) => this.isVersion(v));\n if (!comparators) {\n return this.equals(version, range);\n }\n return comparators.every((comparator) =>\n satisfiesComparator(\n this._compare(version, comparator.version),\n comparator.operator,\n ),\n );\n }\n\n override getSatisfyingVersion(\n versions: string[],\n range: string,\n ): string | null {\n if (parseRange(range, (v) => this.isVersion(v)) === null) {\n return super.getSatisfyingVersion(versions, range);\n }\n const matching = versions.filter((v) => this.matches(v, range));\n matching.sort((a, b) => this._compare(a, b));\n return matching.at(-1) ?? null;\n }\n\n override minSatisfyingVersion(\n versions: string[],\n range: string,\n ): string | null {\n if (parseRange(range, (v) => this.isVersion(v)) === null) {\n return super.minSatisfyingVersion(versions, range);\n }\n const matching = versions.filter((v) => this.matches(v, range));\n matching.sort((a, b) => this._compare(a, b));\n return matching.at(0) ?? null;\n }\n}\n\nexport const api: VersioningApiConstructor = RegExpVersioningApi;\n\nexport default api;\n"],"mappings":";;;;;;AAQA,MAAa,KAAK;AAKlB,IAAa,sBAAb,cAAyC,qBAAoC;CAY3E;CAEA,YAAY,aAAiC;EAC3C,MAAM;EACN,MAAM,aAAa,eAAe;EAIlC,IACE,CAAC,WAAW,SAAS,SAAS,KAC9B,CAAC,WAAW,SAAS,SAAS,KAC9B,CAAC,WAAW,SAAS,SAAS,GAC9B;GACA,MAAM,QAAQ,IAAI,MAAM,iBAAiB;GACzC,MAAM,mBAAmB;GACzB,MAAM,kBACJ;GACF,MAAM;EACR;EAIA,KAAK,UAAU,MAAM,UAAU;CACjC;CAGA,OAAiB,SAAuC;EACtD,MAAM,SAAS,KAAK,SAAS,KAAK,OAAO,CAAC,EAAE;EAC5C,IAAI,CAAC,QACH,OAAO;EAGT,MAAM,EAAE,OAAO,OAAO,OAAO,OAAO,UAAU,YAAY,kBACxD;EACF,MAAM,UAAU;GACd,YAAY,KAAK,IAAI,IAAI,OAAO,SAAS,OAAO,EAAE;GAClD,YAAY,KAAK,IAAI,IAAI,OAAO,SAAS,OAAO,EAAE;GAClD,YAAY,KAAK,IAAI,IAAI,OAAO,SAAS,OAAO,EAAE;EACpD;EAEA,IAAI,OAAO;GACT,QAAQ,KAAK,OAAO,SAAS,OAAO,EAAE,CAAC;GACvC,IAAI,UACF,QAAQ,KAAK,OAAO,SAAS,UAAU,EAAE,CAAC;EAE9C;EAEA,OAAO;GACL;GACA;GACA;EACF;CACF;CAEA,aAAsB,SAAiB,SAA0B;EAC/D,MAAM,gBAAgB,KAAK,OAAO,OAAO;EACzC,MAAM,gBAAgB,KAAK,OAAO,OAAO;EACzC,OAAO,CAAC,EACN,iBACA,cAAc,kBAAkB,eAAe;CAEnD;CAEA,QAAiB,OAAwB;EACvC,OACE,KAAK,UAAU,KAAK,KACpB,WAAW,QAAQ,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM;CAEpD;CAEA,UAAmB,SAA0B;EAC3C,OAAO,KAAK,OAAO,OAAO,MAAM;CAClC;CAEA,gBAAyB,OAAwB;EAC/C,MAAM,QAAQ,WAAW,QAAQ,MAAM,KAAK,UAAU,CAAC,CAAC;EACxD,IAAI,OACF,OACE,MAAM,WAAW,MAChB,MAAM,EAAE,CAAC,aAAa,OAAO,MAAM,EAAE,CAAC,aAAa;EAGxD,OAAO,KAAK,UAAU,KAAK;CAC7B;CAEA,QAAiB,SAAiB,OAAwB;EACxD,MAAM,cAAc,WAAW,QAAQ,MAAM,KAAK,UAAU,CAAC,CAAC;EAC9D,IAAI,CAAC,aACH,OAAO,KAAK,OAAO,SAAS,KAAK;EAEnC,OAAO,YAAY,OAAO,eACxB,oBACE,KAAK,SAAS,SAAS,WAAW,OAAO,GACzC,WAAW,QACb,CACF;CACF;CAEA,qBACE,UACA,OACe;EACf,IAAI,WAAW,QAAQ,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM,MAClD,OAAO,MAAM,qBAAqB,UAAU,KAAK;EAEnD,MAAM,WAAW,SAAS,QAAQ,MAAM,KAAK,QAAQ,GAAG,KAAK,CAAC;EAC9D,SAAS,MAAM,GAAG,MAAM,KAAK,SAAS,GAAG,CAAC,CAAC;EAC3C,OAAO,SAAS,GAAG,EAAE,KAAK;CAC5B;CAEA,qBACE,UACA,OACe;EACf,IAAI,WAAW,QAAQ,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM,MAClD,OAAO,MAAM,qBAAqB,UAAU,KAAK;EAEnD,MAAM,WAAW,SAAS,QAAQ,MAAM,KAAK,QAAQ,GAAG,KAAK,CAAC;EAC9D,SAAS,MAAM,GAAG,MAAM,KAAK,SAAS,GAAG,CAAC,CAAC;EAC3C,OAAO,SAAS,GAAG,CAAC,KAAK;CAC3B;AACF;AAEA,MAAa,MAAgC"}
|
|
@@ -155,6 +155,14 @@ interface VersioningApi {
|
|
|
155
155
|
isSame?(type: 'major' | 'minor' | 'patch', a: string, b: string): boolean;
|
|
156
156
|
}
|
|
157
157
|
type VersioningApiConstructor = new (config?: string) => VersioningApi;
|
|
158
|
+
/**
|
|
159
|
+
* One term of a comparator range, such as the `<=` and the `1.2.3` of `<=1.2.3`.
|
|
160
|
+
* The terms parsed from a single range are ANDed together.
|
|
161
|
+
*/
|
|
162
|
+
interface RangeComparator {
|
|
163
|
+
operator: string;
|
|
164
|
+
version: string;
|
|
165
|
+
}
|
|
158
166
|
//#endregion
|
|
159
|
-
export { DistroDataFile, DistroInfoRecord, DistroInfoRecordWithVersion, DistroSchedule, GenericVersion, NewValueConfig, VersionComparator, VersionParser, VersioningApi, VersioningApiConstructor };
|
|
167
|
+
export { DistroDataFile, DistroInfoRecord, DistroInfoRecordWithVersion, DistroSchedule, GenericVersion, NewValueConfig, RangeComparator, VersionComparator, VersionParser, VersioningApi, VersioningApiConstructor };
|
|
160
168
|
//# sourceMappingURL=types.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "renovate",
|
|
3
3
|
"description": "Automated dependency updates. Flexible so you don't need to be.",
|
|
4
|
-
"version": "44.
|
|
4
|
+
"version": "44.104.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"renovate": "dist/renovate.js",
|
|
@@ -209,7 +209,7 @@
|
|
|
209
209
|
"xmldoc": "3.0.0",
|
|
210
210
|
"yaml": "2.9.1",
|
|
211
211
|
"yauzl": "3.4.0",
|
|
212
|
-
"zod": "4.6.
|
|
212
|
+
"zod": "4.6.5"
|
|
213
213
|
},
|
|
214
214
|
"optionalDependencies": {
|
|
215
215
|
"openpgp": "6.3.1",
|
|
@@ -275,7 +275,7 @@
|
|
|
275
275
|
"lint-staged": "17.5.1",
|
|
276
276
|
"markdownlint-cli2": "0.23.2",
|
|
277
277
|
"markdownlint-cli2-formatter-template": "0.0.4",
|
|
278
|
-
"memfs": "4.
|
|
278
|
+
"memfs": "4.78.0",
|
|
279
279
|
"nock": "14.0.17",
|
|
280
280
|
"npm-run-all2": "9.0.3",
|
|
281
281
|
"nyc": "18.0.0",
|
package/renovate-schema.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$id": "https://docs.renovatebot.com/renovate-schema.json",
|
|
3
|
-
"title": "JSON schema for Renovate 44.
|
|
3
|
+
"title": "JSON schema for Renovate 44.104.1 config files (https://renovatebot.com/)",
|
|
4
4
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
5
|
-
"x-renovate-version": "44.
|
|
5
|
+
"x-renovate-version": "44.104.1",
|
|
6
6
|
"allowComments": true,
|
|
7
7
|
"type": "object",
|
|
8
8
|
"definitions": {
|