renovate 44.105.2 → 44.105.4
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/datasource/rpm/index.js +7 -7
- package/dist/modules/datasource/rpm/index.js.map +1 -1
- package/dist/modules/datasource/rpm/providers/common.js +18 -18
- package/dist/modules/datasource/rpm/providers/common.js.map +1 -1
- package/dist/modules/datasource/rpm/providers/xml.js +5 -5
- package/dist/modules/datasource/rpm/providers/xml.js.map +1 -1
- package/dist/modules/datasource/rpm/repomd.js +2 -2
- package/dist/modules/datasource/rpm/repomd.js.map +1 -1
- package/dist/modules/manager/fingerprint.generated.js +2 -2
- package/dist/modules/manager/fingerprint.generated.js.map +1 -1
- package/dist/modules/manager/gomod/line-parser.js +1 -1
- package/dist/modules/manager/gomod/line-parser.js.map +1 -1
- package/dist/modules/manager/quadlet/schema.js +1 -1
- package/dist/modules/manager/quadlet/schema.js.map +1 -1
- package/package.json +2 -2
- package/renovate-schema.json +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { withCache } from "../../../util/cache/package/with-cache.js";
|
|
2
2
|
import { Datasource } from "../datasource.js";
|
|
3
3
|
import { RpmXmlMetadataProvider } from "./providers/xml.js";
|
|
4
|
-
import {
|
|
4
|
+
import { fetchPrimaryUrl } from "./repomd.js";
|
|
5
5
|
//#region lib/modules/datasource/rpm/index.ts
|
|
6
6
|
var RpmDatasource = class RpmDatasource extends Datasource {
|
|
7
7
|
static id = "rpm";
|
|
@@ -34,8 +34,8 @@ var RpmDatasource = class RpmDatasource extends Datasource {
|
|
|
34
34
|
async _getReleases({ registryUrl, packageName }) {
|
|
35
35
|
if (!registryUrl || !packageName) return null;
|
|
36
36
|
try {
|
|
37
|
-
const
|
|
38
|
-
return await this.getReleasesByPackageName(
|
|
37
|
+
const primaryUrl = await this.getPrimaryUrl(registryUrl);
|
|
38
|
+
return await this.getReleasesByPackageName(primaryUrl, packageName);
|
|
39
39
|
} catch (err) {
|
|
40
40
|
this.handleGenericErrors(err);
|
|
41
41
|
}
|
|
@@ -48,15 +48,15 @@ var RpmDatasource = class RpmDatasource extends Datasource {
|
|
|
48
48
|
fallback: true
|
|
49
49
|
}, () => this._getReleases(config));
|
|
50
50
|
}
|
|
51
|
-
|
|
51
|
+
getPrimaryUrl(registryUrl) {
|
|
52
52
|
return withCache({
|
|
53
53
|
namespace: `datasource-${RpmDatasource.id}`,
|
|
54
54
|
key: registryUrl,
|
|
55
55
|
ttlMinutes: 1440
|
|
56
|
-
}, () =>
|
|
56
|
+
}, () => fetchPrimaryUrl(this.http, registryUrl));
|
|
57
57
|
}
|
|
58
|
-
getReleasesByPackageName(
|
|
59
|
-
return this.xmlProvider.getReleases(
|
|
58
|
+
getReleasesByPackageName(primaryUrl, packageName) {
|
|
59
|
+
return this.xmlProvider.getReleases(primaryUrl, packageName);
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
62
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../lib/modules/datasource/rpm/index.ts"],"sourcesContent":["import { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, ReleaseResult } from '../types.ts';\nimport { datasource } from './common.ts';\nimport { RpmXmlMetadataProvider } from './providers/xml.ts';\nimport {
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../lib/modules/datasource/rpm/index.ts"],"sourcesContent":["import { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, ReleaseResult } from '../types.ts';\nimport { datasource } from './common.ts';\nimport { RpmXmlMetadataProvider } from './providers/xml.ts';\nimport { fetchPrimaryUrl } from './repomd.ts';\n\nexport class RpmDatasource extends Datasource {\n static readonly id = datasource;\n\n private readonly xmlProvider: RpmXmlMetadataProvider;\n\n constructor() {\n super(RpmDatasource.id);\n this.xmlProvider = new RpmXmlMetadataProvider(this.http);\n }\n\n /**\n * Users are able to specify custom RPM repositories as long as they follow the format.\n * There is a URI http://linux.duke.edu/metadata/common in the <sha>-primary.xml.\n * But according to this post, it's not something we can really look into or reference.\n * @see{https://lists.rpm.org/pipermail/rpm-ecosystem/2015-October/000283.html}\n */\n override readonly customRegistrySupport = true;\n\n /**\n * Users can specify multiple repositories and the datasource will aggregate the releases\n * @example\n * Every Fedora release has \"release\" and \"updates\" repositories.\n * To get the latest package version, these repositories should be aggregated.\n */\n override readonly registryStrategy = 'merge';\n\n /**\n * Fetches the release information for a given package from the registry URL.\n *\n * @param registryUrl - the registryUrl should be the folder which contains repodata.xml and its corresponding file list <sha256>-primary.xml.gz, e.g.: https://packages.microsoft.com/azurelinux/3.0/prod/cloud-native/x86_64/repodata/\n * @param packageName - the name of the package to fetch releases for.\n * @returns The release result if the package is found, otherwise null.\n */\n private async _getReleases({\n registryUrl,\n packageName,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n if (!registryUrl || !packageName) {\n return null;\n }\n\n try {\n const primaryUrl = await this.getPrimaryUrl(registryUrl);\n return await this.getReleasesByPackageName(primaryUrl, packageName);\n } catch (err) {\n this.handleGenericErrors(err);\n }\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${RpmDatasource.id}`,\n key: `${config.registryUrl}:${config.packageName}`,\n ttlMinutes: 1440,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n\n getPrimaryUrl(registryUrl: string): Promise<string> {\n return withCache(\n {\n namespace: `datasource-${RpmDatasource.id}`,\n key: registryUrl,\n ttlMinutes: 1440,\n },\n () => fetchPrimaryUrl(this.http, registryUrl),\n );\n }\n\n getReleasesByPackageName(\n primaryUrl: string,\n packageName: string,\n ): Promise<ReleaseResult | null> {\n return this.xmlProvider.getReleases(primaryUrl, packageName);\n }\n}\n"],"mappings":";;;;;AAOA,IAAa,gBAAb,MAAa,sBAAsB,WAAW;CAC5C,OAAgB,KAAA;CAEhB;CAEA,cAAc;EACZ,MAAM,cAAc,EAAE;EACtB,KAAK,cAAc,IAAI,uBAAuB,KAAK,IAAI;CACzD;;;;;;;CAQA,wBAA0C;;;;;;;CAQ1C,mBAAqC;;;;;;;;CASrC,MAAc,aAAa,EACzB,aACA,eACmD;EACnD,IAAI,CAAC,eAAe,CAAC,aACnB,OAAO;EAGT,IAAI;GACF,MAAM,aAAa,MAAM,KAAK,cAAc,WAAW;GACvD,OAAO,MAAM,KAAK,yBAAyB,YAAY,WAAW;EACpE,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;CACF;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,cAAc;GACvC,KAAK,GAAG,OAAO,YAAY,GAAG,OAAO;GACrC,YAAY;GACZ,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;CAEA,cAAc,aAAsC;EAClD,OAAO,UACL;GACE,WAAW,cAAc,cAAc;GACvC,KAAK;GACL,YAAY;EACd,SACM,gBAAgB,KAAK,MAAM,WAAW,CAC9C;CACF;CAEA,yBACE,YACA,aAC+B;EAC/B,OAAO,KAAK,YAAY,YAAY,YAAY,WAAW;CAC7D;AACF"}
|
|
@@ -35,7 +35,7 @@ async function checkIfModified(url, lastDownloadTimestamp, http) {
|
|
|
35
35
|
return true;
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
async function
|
|
38
|
+
async function downloadFileToCache(url, cachePath, http, lastDownloadTimestamp) {
|
|
39
39
|
let needsToDownload = true;
|
|
40
40
|
if (lastDownloadTimestamp) needsToDownload = await checkIfModified(url, lastDownloadTimestamp, http);
|
|
41
41
|
if (!needsToDownload) {
|
|
@@ -43,52 +43,52 @@ async function downloadGzipFile(url, compressedFile, http, lastDownloadTimestamp
|
|
|
43
43
|
return false;
|
|
44
44
|
}
|
|
45
45
|
const readStream = http.stream(url);
|
|
46
|
-
const writeStream = createCacheWriteStream(
|
|
46
|
+
const writeStream = createCacheWriteStream(cachePath);
|
|
47
47
|
await pipeline(readStream, writeStream);
|
|
48
|
-
const compressedStats = await statCacheFile(
|
|
48
|
+
const compressedStats = await statCacheFile(cachePath);
|
|
49
49
|
if (!compressedStats || compressedStats.size === 0) {
|
|
50
50
|
logger.debug(`Empty response body from getting ${url}.`);
|
|
51
51
|
throw new Error(`Empty response body from getting ${url}.`);
|
|
52
52
|
}
|
|
53
53
|
return true;
|
|
54
54
|
}
|
|
55
|
-
async function
|
|
56
|
-
await pipeline(createCacheReadStream(compressedFile), createGunzip(), createCacheWriteStream(
|
|
55
|
+
async function decompressFile(compressedFile, decompressedFile) {
|
|
56
|
+
await pipeline(createCacheReadStream(compressedFile), createGunzip(), createCacheWriteStream(decompressedFile));
|
|
57
57
|
}
|
|
58
|
-
async function
|
|
59
|
-
const releaseLock = await acquireLock(`
|
|
58
|
+
async function getCachedDecompressedFile(http, url, extension) {
|
|
59
|
+
const releaseLock = await acquireLock(`decompressed-file:${url}:${extension}`, "datasource-rpm");
|
|
60
60
|
try {
|
|
61
61
|
const cacheDir = await ensureCacheDir(cacheSubDir);
|
|
62
62
|
const urlHash = toSha256(url);
|
|
63
|
-
const
|
|
64
|
-
let lastTimestamp = await getFileCreationTime(
|
|
63
|
+
const decompressedFile = upath.join(cacheDir, `${urlHash}.${extension}`);
|
|
64
|
+
let lastTimestamp = await getFileCreationTime(decompressedFile);
|
|
65
65
|
const compressedFile = upath.join(cacheDir, `${randomUUID()}_${urlHash}.gz`);
|
|
66
|
-
const
|
|
66
|
+
const decompressedTempFile = upath.join(cacheDir, `${randomUUID()}_${urlHash}.${extension}`);
|
|
67
67
|
try {
|
|
68
|
-
if (await
|
|
69
|
-
await
|
|
70
|
-
await renameCacheFile(
|
|
71
|
-
lastTimestamp = await getFileCreationTime(
|
|
68
|
+
if (await downloadFileToCache(url, compressedFile, http, lastTimestamp) || !lastTimestamp) try {
|
|
69
|
+
await decompressFile(compressedFile, decompressedTempFile);
|
|
70
|
+
await renameCacheFile(decompressedTempFile, decompressedFile);
|
|
71
|
+
lastTimestamp = await getFileCreationTime(decompressedFile);
|
|
72
72
|
} catch (err) {
|
|
73
73
|
logger.warn({
|
|
74
74
|
compressedFile,
|
|
75
75
|
err,
|
|
76
76
|
extension,
|
|
77
|
-
|
|
77
|
+
decompressedFile,
|
|
78
78
|
url
|
|
79
79
|
}, "Failed to extract RPM metadata file from compressed file");
|
|
80
80
|
}
|
|
81
81
|
if (!lastTimestamp) throw new Error("Missing metadata in extracted RPM metadata file!");
|
|
82
|
-
return
|
|
82
|
+
return decompressedFile;
|
|
83
83
|
} finally {
|
|
84
84
|
if (await cachePathExists(compressedFile)) await rmCache(compressedFile);
|
|
85
|
-
if (await cachePathExists(
|
|
85
|
+
if (await cachePathExists(decompressedTempFile)) await rmCache(decompressedTempFile);
|
|
86
86
|
}
|
|
87
87
|
} finally {
|
|
88
88
|
releaseLock();
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
//#endregion
|
|
92
|
-
export { buildReleaseResult, formatRpmVersion,
|
|
92
|
+
export { buildReleaseResult, formatRpmVersion, getCachedDecompressedFile };
|
|
93
93
|
|
|
94
94
|
//# sourceMappingURL=common.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","names":["fs.statCacheFile","fs.createCacheWriteStream","fs.pipeline","fs.createCacheReadStream","fs.ensureCacheDir","fs.renameCacheFile","fs.cachePathExists","fs.rmCache"],"sources":["../../../../../lib/modules/datasource/rpm/providers/common.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\nimport { createGunzip } from 'node:zlib';\nimport { isNullOrUndefined } from '@sindresorhus/is';\nimport upath from 'upath';\nimport { logger } from '../../../../logger/index.ts';\nimport * as fs from '../../../../util/fs/index.ts';\nimport { toSha256 } from '../../../../util/hash.ts';\nimport type { Http, HttpOptions } from '../../../../util/http/index.ts';\nimport { acquireLock } from '../../../../util/mutex.ts';\nimport type { ReleaseResult } from '../../types.ts';\nimport { datasource } from '../common.ts';\n\nconst cacheSubDir = datasource;\n\ntype RpmVersionValue = boolean | number | string | null | undefined;\n\nexport function formatRpmVersion(\n ver: RpmVersionValue,\n rel?: RpmVersionValue,\n): string | null {\n if (isNullOrUndefined(ver)) {\n return null;\n }\n\n const version = String(ver);\n\n if (isNullOrUndefined(rel)) {\n return version;\n }\n\n return `${version}-${String(rel)}`;\n}\n\nexport function buildReleaseResult(\n versions: Iterable<string>,\n): ReleaseResult | null {\n const uniqueVersions = [...new Set(versions)];\n\n if (uniqueVersions.length === 0) {\n return null;\n }\n\n return {\n releases: uniqueVersions.map((version) => ({ version })),\n };\n}\n\nasync function getFileCreationTime(\n filePath: string,\n): Promise<Date | undefined> {\n const stats = await fs.statCacheFile(filePath);\n return stats?.ctime;\n}\n\nasync function checkIfModified(\n url: string,\n lastDownloadTimestamp: Date,\n http: Http,\n): Promise<boolean> {\n const options: HttpOptions = {\n headers: {\n 'If-Modified-Since': lastDownloadTimestamp.toUTCString(),\n },\n };\n\n try {\n const response = await http.head(url, options);\n return response.statusCode !== 304;\n } catch (err) {\n logger.warn(\n {\n err,\n lastDownloadTimestamp,\n url,\n },\n 'Could not determine if metadata file is modified since last download',\n );\n return true;\n }\n}\n\nasync function
|
|
1
|
+
{"version":3,"file":"common.js","names":["fs.statCacheFile","fs.createCacheWriteStream","fs.pipeline","fs.createCacheReadStream","fs.ensureCacheDir","fs.renameCacheFile","fs.cachePathExists","fs.rmCache"],"sources":["../../../../../lib/modules/datasource/rpm/providers/common.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\nimport { createGunzip } from 'node:zlib';\nimport { isNullOrUndefined } from '@sindresorhus/is';\nimport upath from 'upath';\nimport { logger } from '../../../../logger/index.ts';\nimport * as fs from '../../../../util/fs/index.ts';\nimport { toSha256 } from '../../../../util/hash.ts';\nimport type { Http, HttpOptions } from '../../../../util/http/index.ts';\nimport { acquireLock } from '../../../../util/mutex.ts';\nimport type { ReleaseResult } from '../../types.ts';\nimport { datasource } from '../common.ts';\n\nconst cacheSubDir = datasource;\n\ntype RpmVersionValue = boolean | number | string | null | undefined;\n\nexport function formatRpmVersion(\n ver: RpmVersionValue,\n rel?: RpmVersionValue,\n): string | null {\n if (isNullOrUndefined(ver)) {\n return null;\n }\n\n const version = String(ver);\n\n if (isNullOrUndefined(rel)) {\n return version;\n }\n\n return `${version}-${String(rel)}`;\n}\n\nexport function buildReleaseResult(\n versions: Iterable<string>,\n): ReleaseResult | null {\n const uniqueVersions = [...new Set(versions)];\n\n if (uniqueVersions.length === 0) {\n return null;\n }\n\n return {\n releases: uniqueVersions.map((version) => ({ version })),\n };\n}\n\nasync function getFileCreationTime(\n filePath: string,\n): Promise<Date | undefined> {\n const stats = await fs.statCacheFile(filePath);\n return stats?.ctime;\n}\n\nasync function checkIfModified(\n url: string,\n lastDownloadTimestamp: Date,\n http: Http,\n): Promise<boolean> {\n const options: HttpOptions = {\n headers: {\n 'If-Modified-Since': lastDownloadTimestamp.toUTCString(),\n },\n };\n\n try {\n const response = await http.head(url, options);\n return response.statusCode !== 304;\n } catch (err) {\n logger.warn(\n {\n err,\n lastDownloadTimestamp,\n url,\n },\n 'Could not determine if metadata file is modified since last download',\n );\n return true;\n }\n}\n\nasync function downloadFileToCache(\n url: string,\n cachePath: string,\n http: Http,\n lastDownloadTimestamp?: Date,\n): Promise<boolean> {\n let needsToDownload = true;\n\n if (lastDownloadTimestamp) {\n needsToDownload = await checkIfModified(url, lastDownloadTimestamp, http);\n }\n\n if (!needsToDownload) {\n logger.debug(`No need to download ${url}, file is up to date.`);\n return false;\n }\n\n const readStream = http.stream(url);\n const writeStream = fs.createCacheWriteStream(cachePath);\n await fs.pipeline(readStream, writeStream);\n\n const compressedStats = await fs.statCacheFile(cachePath);\n if (!compressedStats || compressedStats.size === 0) {\n logger.debug(`Empty response body from getting ${url}.`);\n throw new Error(`Empty response body from getting ${url}.`);\n }\n\n return true;\n}\n\nasync function decompressFile(\n compressedFile: string,\n decompressedFile: string,\n): Promise<void> {\n await fs.pipeline(\n fs.createCacheReadStream(compressedFile),\n createGunzip(),\n fs.createCacheWriteStream(decompressedFile),\n );\n}\n\nexport async function getCachedDecompressedFile(\n http: Http,\n url: string,\n extension: 'xml',\n): Promise<string> {\n const releaseLock = await acquireLock(\n `decompressed-file:${url}:${extension}`,\n 'datasource-rpm',\n );\n\n try {\n const cacheDir = await fs.ensureCacheDir(cacheSubDir);\n const urlHash = toSha256(url);\n const decompressedFile = upath.join(cacheDir, `${urlHash}.${extension}`);\n let lastTimestamp = await getFileCreationTime(decompressedFile);\n\n const compressedFile = upath.join(\n cacheDir,\n `${randomUUID()}_${urlHash}.gz`,\n );\n const decompressedTempFile = upath.join(\n cacheDir,\n `${randomUUID()}_${urlHash}.${extension}`,\n );\n\n try {\n const wasUpdated = await downloadFileToCache(\n url,\n compressedFile,\n http,\n lastTimestamp,\n );\n\n if (wasUpdated || !lastTimestamp) {\n try {\n // Only replace the shared cache file after a successful decompress.\n await decompressFile(compressedFile, decompressedTempFile);\n await fs.renameCacheFile(decompressedTempFile, decompressedFile);\n lastTimestamp = await getFileCreationTime(decompressedFile);\n } catch (err) {\n logger.warn(\n {\n compressedFile,\n err,\n extension,\n decompressedFile,\n url,\n },\n 'Failed to extract RPM metadata file from compressed file',\n );\n }\n }\n\n if (!lastTimestamp) {\n throw new Error('Missing metadata in extracted RPM metadata file!');\n }\n\n return decompressedFile;\n } finally {\n if (await fs.cachePathExists(compressedFile)) {\n await fs.rmCache(compressedFile);\n }\n if (await fs.cachePathExists(decompressedTempFile)) {\n await fs.rmCache(decompressedTempFile);\n }\n }\n } finally {\n releaseLock();\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { logger } from "../../../../logger/index.js";
|
|
2
2
|
import { createCacheReadStream } from "../../../../util/fs/index.js";
|
|
3
|
-
import { buildReleaseResult, formatRpmVersion,
|
|
3
|
+
import { buildReleaseResult, formatRpmVersion, getCachedDecompressedFile } from "./common.js";
|
|
4
4
|
import sax from "sax";
|
|
5
5
|
//#region lib/modules/datasource/rpm/providers/xml.ts
|
|
6
6
|
var RpmXmlMetadataProvider = class {
|
|
@@ -8,8 +8,8 @@ var RpmXmlMetadataProvider = class {
|
|
|
8
8
|
constructor(http) {
|
|
9
9
|
this.http = http;
|
|
10
10
|
}
|
|
11
|
-
async getReleases(
|
|
12
|
-
const primaryXmlFile = await
|
|
11
|
+
async getReleases(primaryUrl, packageName) {
|
|
12
|
+
const primaryXmlFile = await getCachedDecompressedFile(this.http, primaryUrl, "xml");
|
|
13
13
|
const releases = /* @__PURE__ */ new Set();
|
|
14
14
|
let insidePackage = false;
|
|
15
15
|
let isTargetPackage = false;
|
|
@@ -44,7 +44,7 @@ var RpmXmlMetadataProvider = class {
|
|
|
44
44
|
saxParser.on("error", (err) => {
|
|
45
45
|
if (settled) return;
|
|
46
46
|
settled = true;
|
|
47
|
-
logger.debug(`SAX parsing error in ${
|
|
47
|
+
logger.debug(`SAX parsing error in ${primaryUrl}: ${err.message}`);
|
|
48
48
|
setImmediate(() => saxParser.removeAllListeners());
|
|
49
49
|
reject(err);
|
|
50
50
|
});
|
|
@@ -56,7 +56,7 @@ var RpmXmlMetadataProvider = class {
|
|
|
56
56
|
createCacheReadStream(primaryXmlFile).pipe(saxParser);
|
|
57
57
|
});
|
|
58
58
|
const result = buildReleaseResult(releases);
|
|
59
|
-
if (!result) logger.trace(`No releases found for package ${packageName} in ${
|
|
59
|
+
if (!result) logger.trace(`No releases found for package ${packageName} in ${primaryUrl}`);
|
|
60
60
|
return result;
|
|
61
61
|
}
|
|
62
62
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xml.js","names":[],"sources":["../../../../../lib/modules/datasource/rpm/providers/xml.ts"],"sourcesContent":["import sax from 'sax';\nimport { logger } from '../../../../logger/index.ts';\nimport * as fs from '../../../../util/fs/index.ts';\nimport type { Http } from '../../../../util/http/index.ts';\nimport type { ReleaseResult } from '../../types.ts';\nimport {\n buildReleaseResult,\n formatRpmVersion,\n
|
|
1
|
+
{"version":3,"file":"xml.js","names":[],"sources":["../../../../../lib/modules/datasource/rpm/providers/xml.ts"],"sourcesContent":["import sax from 'sax';\nimport { logger } from '../../../../logger/index.ts';\nimport * as fs from '../../../../util/fs/index.ts';\nimport type { Http } from '../../../../util/http/index.ts';\nimport type { ReleaseResult } from '../../types.ts';\nimport {\n buildReleaseResult,\n formatRpmVersion,\n getCachedDecompressedFile,\n} from './common.ts';\n\nexport class RpmXmlMetadataProvider {\n private readonly http: Http;\n\n constructor(http: Http) {\n this.http = http;\n }\n\n async getReleases(\n primaryUrl: string,\n packageName: string,\n ): Promise<ReleaseResult | null> {\n const primaryXmlFile = await getCachedDecompressedFile(\n this.http,\n primaryUrl,\n 'xml',\n );\n const releases = new Set<string>();\n let insidePackage = false;\n let isTargetPackage = false;\n let insideName = false;\n\n const saxParser = sax.createStream(true, {\n lowercase: true,\n trim: true,\n });\n\n saxParser.on('opentag', (node: sax.Tag) => {\n if (node.name === 'package' && node.attributes.type === 'rpm') {\n insidePackage = true;\n isTargetPackage = false;\n }\n if (insidePackage && node.name === 'name') {\n insideName = true;\n }\n if (insidePackage && isTargetPackage && node.name === 'version') {\n const version = formatRpmVersion(\n node.attributes.ver,\n node.attributes.rel,\n );\n if (version) {\n releases.add(version);\n }\n }\n });\n saxParser.on('text', (text: string) => {\n if (insidePackage && insideName && text.trim() === packageName) {\n isTargetPackage = true;\n }\n });\n saxParser.on('closetag', (tag: string) => {\n if (tag === 'name' && insidePackage) {\n insideName = false;\n }\n if (tag === 'package') {\n insidePackage = false;\n isTargetPackage = false;\n }\n });\n\n await new Promise<void>((resolve, reject) => {\n let settled = false;\n saxParser.on('error', (err: Error) => {\n if (settled) {\n return;\n }\n settled = true;\n logger.debug(`SAX parsing error in ${primaryUrl}: ${err.message}`);\n setImmediate(() => saxParser.removeAllListeners());\n reject(err);\n });\n saxParser.on('end', () => {\n settled = true;\n setImmediate(() => saxParser.removeAllListeners());\n resolve();\n });\n fs.createCacheReadStream(primaryXmlFile).pipe(saxParser);\n });\n\n const result = buildReleaseResult(releases);\n if (!result) {\n logger.trace(\n `No releases found for package ${packageName} in ${primaryUrl}`,\n );\n }\n\n return result;\n }\n}\n"],"mappings":";;;;;AAWA,IAAa,yBAAb,MAAoC;CAClC;CAEA,YAAY,MAAY;EACtB,KAAK,OAAO;CACd;CAEA,MAAM,YACJ,YACA,aAC+B;EAC/B,MAAM,iBAAiB,MAAM,0BAC3B,KAAK,MACL,YACA,KACF;EACA,MAAM,2BAAW,IAAI,IAAY;EACjC,IAAI,gBAAgB;EACpB,IAAI,kBAAkB;EACtB,IAAI,aAAa;EAEjB,MAAM,YAAY,IAAI,aAAa,MAAM;GACvC,WAAW;GACX,MAAM;EACR,CAAC;EAED,UAAU,GAAG,YAAY,SAAkB;GACzC,IAAI,KAAK,SAAS,aAAa,KAAK,WAAW,SAAS,OAAO;IAC7D,gBAAgB;IAChB,kBAAkB;GACpB;GACA,IAAI,iBAAiB,KAAK,SAAS,QACjC,aAAa;GAEf,IAAI,iBAAiB,mBAAmB,KAAK,SAAS,WAAW;IAC/D,MAAM,UAAU,iBACd,KAAK,WAAW,KAChB,KAAK,WAAW,GAClB;IACA,IAAI,SACF,SAAS,IAAI,OAAO;GAExB;EACF,CAAC;EACD,UAAU,GAAG,SAAS,SAAiB;GACrC,IAAI,iBAAiB,cAAc,KAAK,KAAK,MAAM,aACjD,kBAAkB;EAEtB,CAAC;EACD,UAAU,GAAG,aAAa,QAAgB;GACxC,IAAI,QAAQ,UAAU,eACpB,aAAa;GAEf,IAAI,QAAQ,WAAW;IACrB,gBAAgB;IAChB,kBAAkB;GACpB;EACF,CAAC;EAED,MAAM,IAAI,SAAe,SAAS,WAAW;GAC3C,IAAI,UAAU;GACd,UAAU,GAAG,UAAU,QAAe;IACpC,IAAI,SACF;IAEF,UAAU;IACV,OAAO,MAAM,wBAAwB,WAAW,IAAI,IAAI,SAAS;IACjE,mBAAmB,UAAU,mBAAmB,CAAC;IACjD,OAAO,GAAG;GACZ,CAAC;GACD,UAAU,GAAG,aAAa;IACxB,UAAU;IACV,mBAAmB,UAAU,mBAAmB,CAAC;IACjD,QAAQ;GACV,CAAC;GACD,sBAAyB,cAAc,CAAC,CAAC,KAAK,SAAS;EACzD,CAAC;EAED,MAAM,SAAS,mBAAmB,QAAQ;EAC1C,IAAI,CAAC,QACH,OAAO,MACL,iCAAiC,YAAY,MAAM,YACrD;EAGF,OAAO;CACT;AACF"}
|
|
@@ -14,7 +14,7 @@ function getPrimaryRepodataUrl(xml, registryUrl, repomdUrl) {
|
|
|
14
14
|
const registryUrlWithoutRepodata = registryUrl.replace(regEx(/\/repodata\/?$/), "/");
|
|
15
15
|
return joinUrlParts(registryUrlWithoutRepodata, href);
|
|
16
16
|
}
|
|
17
|
-
async function
|
|
17
|
+
async function fetchPrimaryUrl(http, registryUrl) {
|
|
18
18
|
const repomdUrl = joinUrlParts(registryUrl, repomdXmlFileName);
|
|
19
19
|
const response = await http.getText(repomdUrl.toString());
|
|
20
20
|
const repomdBody = response.body.trimStart();
|
|
@@ -34,6 +34,6 @@ async function fetchPrimaryGzipUrl(http, registryUrl) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
//#endregion
|
|
37
|
-
export {
|
|
37
|
+
export { fetchPrimaryUrl };
|
|
38
38
|
|
|
39
39
|
//# sourceMappingURL=repomd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repomd.js","names":[],"sources":["../../../../lib/modules/datasource/rpm/repomd.ts"],"sourcesContent":["import { XmlDocument } from 'xmldoc';\nimport { logger } from '../../../logger/index.ts';\nimport type { Http } from '../../../util/http/index.ts';\nimport { regEx } from '../../../util/regex.ts';\nimport { joinUrlParts } from '../../../util/url.ts';\nimport { datasource, repomdXmlFileName } from './common.ts';\n\nfunction getPrimaryRepodataUrl(\n xml: XmlDocument,\n registryUrl: string,\n repomdUrl: string,\n): string {\n const primaryData = xml.childWithAttribute('type', 'primary');\n\n if (!primaryData) {\n throw new Error(`No primary data found in ${repomdUrl}`);\n }\n\n const locationElement = primaryData.childNamed('location');\n if (!locationElement) {\n throw new Error(`No location element found in ${repomdUrl}`);\n }\n\n const href = locationElement.attr.href;\n if (!href) {\n throw new Error(`No href found in ${repomdUrl}`);\n }\n\n // replace trailing \"repodata/\" from registryUrl, if it exists, with a \"/\"\n // because href includes \"repodata/\"\n const registryUrlWithoutRepodata = registryUrl.replace(\n regEx(/\\/repodata\\/?$/),\n '/',\n );\n\n return joinUrlParts(registryUrlWithoutRepodata, href);\n}\n\nexport async function
|
|
1
|
+
{"version":3,"file":"repomd.js","names":[],"sources":["../../../../lib/modules/datasource/rpm/repomd.ts"],"sourcesContent":["import { XmlDocument } from 'xmldoc';\nimport { logger } from '../../../logger/index.ts';\nimport type { Http } from '../../../util/http/index.ts';\nimport { regEx } from '../../../util/regex.ts';\nimport { joinUrlParts } from '../../../util/url.ts';\nimport { datasource, repomdXmlFileName } from './common.ts';\n\nfunction getPrimaryRepodataUrl(\n xml: XmlDocument,\n registryUrl: string,\n repomdUrl: string,\n): string {\n const primaryData = xml.childWithAttribute('type', 'primary');\n\n if (!primaryData) {\n throw new Error(`No primary data found in ${repomdUrl}`);\n }\n\n const locationElement = primaryData.childNamed('location');\n if (!locationElement) {\n throw new Error(`No location element found in ${repomdUrl}`);\n }\n\n const href = locationElement.attr.href;\n if (!href) {\n throw new Error(`No href found in ${repomdUrl}`);\n }\n\n // replace trailing \"repodata/\" from registryUrl, if it exists, with a \"/\"\n // because href includes \"repodata/\"\n const registryUrlWithoutRepodata = registryUrl.replace(\n regEx(/\\/repodata\\/?$/),\n '/',\n );\n\n return joinUrlParts(registryUrlWithoutRepodata, href);\n}\n\nexport async function fetchPrimaryUrl(\n http: Http,\n registryUrl: string,\n): Promise<string> {\n const repomdUrl = joinUrlParts(registryUrl, repomdXmlFileName);\n const response = await http.getText(repomdUrl.toString());\n const repomdBody = response.body.trimStart();\n\n // repomd.xml may omit the XML declaration and start directly with the root element\n if (!(repomdBody.startsWith('<?xml') || repomdBody.startsWith('<repomd'))) {\n logger.debug({ datasource, url: repomdUrl }, 'Invalid response format');\n throw new Error(\n `${repomdUrl} is not in XML format. Response body: ${response.body}`,\n );\n }\n\n const xml = new XmlDocument(repomdBody);\n\n try {\n return getPrimaryRepodataUrl(xml, registryUrl, repomdUrl.toString());\n } catch (err) {\n if (\n err instanceof Error &&\n err.message.startsWith('No primary data found')\n ) {\n logger.debug(\n `No primary data found in ${repomdUrl}, xml contents: ${response.body}`,\n );\n }\n\n throw err;\n }\n}\n"],"mappings":";;;;;;AAOA,SAAS,sBACP,KACA,aACA,WACQ;CACR,MAAM,cAAc,IAAI,mBAAmB,QAAQ,SAAS;CAE5D,IAAI,CAAC,aACH,MAAM,IAAI,MAAM,4BAA4B,WAAW;CAGzD,MAAM,kBAAkB,YAAY,WAAW,UAAU;CACzD,IAAI,CAAC,iBACH,MAAM,IAAI,MAAM,gCAAgC,WAAW;CAG7D,MAAM,OAAO,gBAAgB,KAAK;CAClC,IAAI,CAAC,MACH,MAAM,IAAI,MAAM,oBAAoB,WAAW;CAKjD,MAAM,6BAA6B,YAAY,QAC7C,MAAM,gBAAgB,GACtB,GACF;CAEA,OAAO,aAAa,4BAA4B,IAAI;AACtD;AAEA,eAAsB,gBACpB,MACA,aACiB;CACjB,MAAM,YAAY,aAAa,aAAa,iBAAiB;CAC7D,MAAM,WAAW,MAAM,KAAK,QAAQ,UAAU,SAAS,CAAC;CACxD,MAAM,aAAa,SAAS,KAAK,UAAU;CAG3C,IAAI,EAAE,WAAW,WAAW,OAAO,KAAK,WAAW,WAAW,SAAS,IAAI;EACzE,OAAO,MAAM;GAAE,YAAA;GAAY,KAAK;EAAU,GAAG,yBAAyB;EACtE,MAAM,IAAI,MACR,GAAG,UAAU,wCAAwC,SAAS,MAChE;CACF;CAEA,MAAM,MAAM,IAAI,YAAY,UAAU;CAEtC,IAAI;EACF,OAAO,sBAAsB,KAAK,aAAa,UAAU,SAAS,CAAC;CACrE,SAAS,KAAK;EACZ,IACE,eAAe,SACf,IAAI,QAAQ,WAAW,uBAAuB,GAE9C,OAAO,MACL,4BAA4B,UAAU,kBAAkB,SAAS,MACnE;EAGF,MAAM;CACR;AACF"}
|
|
@@ -48,7 +48,7 @@ hashMap.set("gitlabci", "a5e1e66ef461e1c1e71062f85f35a212417e23627f4b002810f9a98
|
|
|
48
48
|
hashMap.set("gitlabci-include", "8860a15ab516fde00694f9bd9bf56fce4addafe5a55b5ddb9a4ec477d301d351");
|
|
49
49
|
hashMap.set("glasskube", "93e7b9000a17efa15a1abaaf320b5af9169b1ecd828fc0c881d98570ef9d9e30");
|
|
50
50
|
hashMap.set("gleam", "5e9b9f5f914afe5ed7b526c06c65111e3716d2dea9b0cbe7907bbc96db1064a3");
|
|
51
|
-
hashMap.set("gomod", "
|
|
51
|
+
hashMap.set("gomod", "6011c22e60814460fb4a40f834608a868776b91eff2cae2d3bfea1e73ccd8aeb");
|
|
52
52
|
hashMap.set("gradle", "9e3ff52ce4ad2555929acdd4d32c417c4ef8714c23a92f2893ecc580fa4d6064");
|
|
53
53
|
hashMap.set("gradle-wrapper", "73ba30c34955fab7737454b5cff9aca6d1b5607d53c17c9e13d8ad96f6eaae87");
|
|
54
54
|
hashMap.set("haskell-cabal", "f158b7725e3143dfd2950e3de0bbccc2a61cd7eba87f7a54c5057e01252348e2");
|
|
@@ -93,7 +93,7 @@ hashMap.set("proto", "412053d4550026b4ace490b46e970915b87ec1abf0b0a0c6c8c58ccf1f
|
|
|
93
93
|
hashMap.set("pub", "8e7c65dfd1999de4f7c44392e949a4d8f4701eb86df59d550e4657feb06b1872");
|
|
94
94
|
hashMap.set("puppet", "ba58ab689e44acc8f61c3569ab8b40fde01b8a9d3aad712708e2a419e57d8b45");
|
|
95
95
|
hashMap.set("pyenv", "9ede8becc97774f9040b40f4472d3e933534b596e04c360bfe0f3c6f95f25182");
|
|
96
|
-
hashMap.set("quadlet", "
|
|
96
|
+
hashMap.set("quadlet", "40927b98dd2bac45dba60e66b5fd0e6b84b61d02db8be536fda7b14546a4feb7");
|
|
97
97
|
hashMap.set("renovate-config", "dfaf3f03ddaf70c332f7916106648f36dbfa6a36dd76d15dd27fa116ab3c174c");
|
|
98
98
|
hashMap.set("ruby-version", "2db2140d9eee8c555e729a4de0396fa2d78846d3149890ee12fa515bd654be97");
|
|
99
99
|
hashMap.set("runtime-version", "b582b168c0cc595e39010feb10f4b97a82683eb269e9598216fbb11cc186e160");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fingerprint.generated.js","names":[],"sources":["../../../lib/modules/manager/fingerprint.generated.ts"],"sourcesContent":["export const hashMap = new Map<string, string>();\n\nhashMap.set('ansible','a52394a36ac5517f7330473c31d93aa05b2ce607c5e951b48f25a4693cd20a81');\nhashMap.set('ansible-galaxy','0a264d6be73953d801510fdeff271e4071c274339569c6dab4e2a128eaf4869f');\nhashMap.set('ant','2df5943cf0ed19a21b94df13729dbb925655548130caf37e3e22bebaed518e17');\nhashMap.set('apm','bdb6931cc03f4ac02ebfdb56c4b3483bb6c5250fa952545f1a25584d502bbffd');\nhashMap.set('argocd','cff9cd22257bc460ae4b9936570bf0ed5585f280a55d26629deaeeb0bfee8eb5');\nhashMap.set('asdf','430eb99b58171700c8a59c78b9e648575e9b176b781d90dd10a710f7b69015bb');\nhashMap.set('azure-pipelines','a051fe5e7e4fef8208b5864131a2b52b4ae319936f1dd8ee5a4e1ef11359ec09');\nhashMap.set('batect','375d39b432013bedb1330cf40a2199dd822751b28578214f219e7bab98594b8d');\nhashMap.set('batect-wrapper','d999355511ea7f4053325a18b8cfc8d2b586c61e6760c35e557d383a673e3939');\nhashMap.set('bazel','c31bc0a0e23d32726bcc09aa67533ebc5058124bf89c88e09c837419f550801a');\nhashMap.set('bazel-module','9fbba0339f9f7785d52ab85c5f0f6385003093c063483c13feccba13ae438bef');\nhashMap.set('bazelisk','770f75a746dc6ba90c518788d5987d7df4243ef9eee122d1bb0556a93d6e1b11');\nhashMap.set('bicep','7246e0bfc06e0e28cbb03ac088c5591f648956b086e106aeb251fe5d628329db');\nhashMap.set('bitbucket-pipelines','59c0503494ab1442b127914503c01b97ac17b6742b19c632292d5aa24de115cd');\nhashMap.set('bitrise','478dfd316221fad7c29e177c70d1018d832fb2626b53308a5d0f1f0380e69f42');\nhashMap.set('buildkite','b8b404f53cd5d61c39153fddf93945e621471c4ac6aa9960c881cd868922bb4c');\nhashMap.set('buildpacks','6bef3cb04d66b5cfbb195adb4829bcbccae6408518706744d291bacf0610421f');\nhashMap.set('bun','5820cfb6ebe018b8c336d481ea9ae319daaee6a2e368c45196fc8bc67cb3e755');\nhashMap.set('bun-version','df3ae8e4a5de1fa1b4544f3d7fc8117e80adb1e151c46d1ede54a4dbea6521e4');\nhashMap.set('bundler','6e4784dd98c1f86ef64cc8cbf3128df48aebf920032d7792b54fdedd3dd9d4d5');\nhashMap.set('cake','9ebd8b481220b30a8860121d26184540a1a2fcc05ef780df9295dea39b386fad');\nhashMap.set('cargo','fe8136135c895dd08819f91a60cf105f8b951251b057092700101ace991ae1d7');\nhashMap.set('cdnurl','9a81c8e3c6ad6c788498c99fc1067ffdfcd92a427c3afaf8c0130975d83131f2');\nhashMap.set('circleci','91cbeb33ea20f9838e2c81a1195eb806f0b38fa282bc3679f62552f20575ca85');\nhashMap.set('cloudbuild','f4e40388944652c8a19f8518771ac8d3f3c4ccf81ddef0e68b463aca833cb73c');\nhashMap.set('cocoapods','f832e2beef885bb3fd697ed9bb3e8cd742926bfec37ff41212edd2dbb4edb3ba');\nhashMap.set('composer','f1294fb3866ff65a75d98fdef80b1df3d3a8856535b8c690d1799e1205e4b639');\nhashMap.set('conan','8d46e9a30ae628e26118aea10a98d1b846f7c5d96d51ce24693437d555f6d125');\nhashMap.set('copier','10ae4d7f8ff35faf3a3f9f25bf4c969ea960e19aaf8c012aee11f93f4d10533e');\nhashMap.set('cpanfile','07813fec3f3c2197056500e9266a0553b9774c02f2c74d5ca2e213188c7c12d3');\nhashMap.set('crossplane','5c26b1201a1a51454ffb94d829e223a76a781569bf79cdb1e47087c30233ec40');\nhashMap.set('crow','eb9a5f9f95041855dded67bcce3dd54724f690995ed6268d272e8a666ff28fd0');\nhashMap.set('deno','05e7ab60494a20a5e7477f06a9e723e443d37643b6e1d9ba8d3d87126a051175');\nhashMap.set('deps-edn','06783dbc8b9c7bb84e162d1f75b7db56dfa021cc6f809dfd2314cee8b64af08d');\nhashMap.set('devbox','a40050cc61bd9b5d500ec111abb17bb15d5f82ab5b7699f66f628307ba8382c9');\nhashMap.set('devcontainer','24320ed1cb6191d04cb8b2707214d82c08c682597aed1d84f250aa00ad1632ec');\nhashMap.set('docker-compose','fba87b82cb0f2bfd66526631fbe928b8153e7ca701a5790d02b944df17417bb9');\nhashMap.set('dockerfile','995048a257692db3b48dccda029ef5230ebd2a17085e837fc4eb848aae9ba64f');\nhashMap.set('droneci','661d2a2d7295af8dd7a1234c7090c42a89306bd574c3adf1fc67782efaad3998');\nhashMap.set('fleet','4942d52e82f35c41e2d46cf76f426e2d91b350338cfc0bbcb97e8aaae2a1ac0b');\nhashMap.set('flux','aad8c786c4a2b5820663027452eeb8fe84c3af8c8399261e85f0eade2e484fe8');\nhashMap.set('fvm','9b161df0f14bc6e536368952adf373e343630097121a913cea60ee284027fb90');\nhashMap.set('git-submodules','df8bb92b2906d8cddda2d4b302ee503f8002e3554d32d74cef2f584fe891f38f');\nhashMap.set('github-actions','7adddc8e590786084855ffe53292bff3098ac672f91c21cc39d45bcf0af2271f');\nhashMap.set('gitlabci','a5e1e66ef461e1c1e71062f85f35a212417e23627f4b002810f9a98295d6e672');\nhashMap.set('gitlabci-include','8860a15ab516fde00694f9bd9bf56fce4addafe5a55b5ddb9a4ec477d301d351');\nhashMap.set('glasskube','93e7b9000a17efa15a1abaaf320b5af9169b1ecd828fc0c881d98570ef9d9e30');\nhashMap.set('gleam','5e9b9f5f914afe5ed7b526c06c65111e3716d2dea9b0cbe7907bbc96db1064a3');\nhashMap.set('gomod','de042f3b5a900346c5f2df41f793f1716dc12145c38705c3064c6a7150b49495');\nhashMap.set('gradle','9e3ff52ce4ad2555929acdd4d32c417c4ef8714c23a92f2893ecc580fa4d6064');\nhashMap.set('gradle-wrapper','73ba30c34955fab7737454b5cff9aca6d1b5607d53c17c9e13d8ad96f6eaae87');\nhashMap.set('haskell-cabal','f158b7725e3143dfd2950e3de0bbccc2a61cd7eba87f7a54c5057e01252348e2');\nhashMap.set('helm-requirements','7ee9dace4c036dfe113c0c0e46369d8b83a739caa831660142ca98d3236a180a');\nhashMap.set('helm-values','0aa79bb0257d0d72e54dfd2653e59bfef63b97e46c035b7443593bdf6e6382aa');\nhashMap.set('helmfile','28572dd24b6746ca7065ee467aa13bbc8c3e8c0f88ae48e33bce88468c600100');\nhashMap.set('helmsman','951deeb3355da751ef39c9e932b26ea749450e32e75759e4b5fc29359e100b37');\nhashMap.set('helmv3','e2d464055503d3702d3cf7323ce593747fe482def8ee59aea2dcaadb0bb0f72c');\nhashMap.set('hermit','0fb25b7766c3a264fbb765ff75b1542b24136c4c9f933696d4a5aecfed637071');\nhashMap.set('homeassistant-manifest','05043c6db870cffbb6f8f3e351c025e3de227eaae0b24134b796aec46f84b65f');\nhashMap.set('homebrew','dffe954a4e18c2dc4bfdaa12222fe8ddc3395869afd5afa603fc2b6264747984');\nhashMap.set('html','81fa6c2bf2b868596584a48b949645207a2aa3081951ed99183ee50b70b77d5f');\nhashMap.set('jenkins','7fda0e7e0f3d5e18088ccb3594f727f4cfc48b064706bdaaf1a0a075b6a2cff5');\nhashMap.set('jsonnet-bundler','4cedeb0394e5c38361d1868ff45b4f34747ab8c492378b6e63dcaf1f4f3c024d');\nhashMap.set('kotlin-script','95ebc844c040ca047321b207d525220e29774a2a1fe06f9639e8353c66908564');\nhashMap.set('kubernetes','321e7d77fb3600dd4c00a86eaa1294927e7f92300b74fa2977d813dcaa3bb4de');\nhashMap.set('kustomize','aa830c27302555e12d7f04e342c96125d68c231028a2d3c459c4431516382584');\nhashMap.set('leiningen','c8397e376f1717c2f771ae9ea3ba6b720d2422b133cf937e762c44e42be146a2');\nhashMap.set('maven','c110b99291c2a5bc82cf7a69330275e9bbd7dc8ba3e9e987611dfcffbe002d8d');\nhashMap.set('maven-wrapper','6e53b6e4abf1d20b75094c7a70d66b4a5ac39954f009aa401f5e55dada8be4d0');\nhashMap.set('meteor','4636a47ba4dcfff19fe662572ef7a40d17146be3c966e00ef437e1fc8de92776');\nhashMap.set('mint','248fe4f1ea5c985921c286785792c97e06fc41f402b2d45df82f6aecd17f710e');\nhashMap.set('mise','eaedf27c1c87e4658c7eef17903cf222b42805f718e960c111632d2c8c649664');\nhashMap.set('mix','0f79163dc2a1c896599d152be635c23beaf16812ae3d8fbfffec98c7bd0de872');\nhashMap.set('nix','0f80f0b81f2197a7e588be5c115a32a826fc184593f4e879f7b60fafd97a977e');\nhashMap.set('nodenv','ac652c28481b001f7471f4183eac07b45d98ecbe83efc275830b0a1b2e0459b8');\nhashMap.set('npm','30c78bc1c29eeecbdedb4eacc52bd93eedfb07279fd385f893193dcac6196466');\nhashMap.set('nuget','b81fb0ca6cfeb86b004592b38ce176673e056d6a2ed41a9807afb0eb7ad405d2');\nhashMap.set('nvm','3eb77c7b0acf6d64753de78fad2499b352719853aa6872878c40675d14152322');\nhashMap.set('ocb','032b216684c14b0954e0bb019513a2aca3faaee5748587acb668d377d7c891ca');\nhashMap.set('osgi','d6567a733ef3983112b46fdccd7ceebfcd48411104e0c6b6e714d4310db48024');\nhashMap.set('pep621','52450676f8b0e05134b3e8947b832195ef40bcaec1ce43d71351a2f797b80d75');\nhashMap.set('pep723','77022a0eae6a3cbb74a1e6d596db1276e379768e40448192b3fa81edd14ca73f');\nhashMap.set('pip-compile','a98dc76a002e1dc21662237f009ff8fea36236bb4e24cb82ee30c6a78f57271f');\nhashMap.set('pip_requirements','bf3a407f72abf711230247bef94ba5dc84c08a35107b0f017912fad66afa716a');\nhashMap.set('pip_setup','df18fba2bdcf48f3ca12a8f7e5cd28df31e2368d5528127277038ef4206eca79');\nhashMap.set('pipenv','baf237cd77173c1a7a9c7fa2a8bfb214f3c488ba0cc27f0e8f334df192e3a398');\nhashMap.set('pixi','e31c397982ffa34222b061f23f3b3683f42523dd5dca45ecce2448b0ebc55ea2');\nhashMap.set('poetry','e9dea5d591c87956b9f018414cb3dab8f2e13580a13be00550fdce198fdf08e6');\nhashMap.set('pre-commit','760f2c291ae084db889f722390798a0e2d431ccdc3bc676e73b14901ebea19ac');\nhashMap.set('proto','412053d4550026b4ace490b46e970915b87ec1abf0b0a0c6c8c58ccf1fc16843');\nhashMap.set('pub','8e7c65dfd1999de4f7c44392e949a4d8f4701eb86df59d550e4657feb06b1872');\nhashMap.set('puppet','ba58ab689e44acc8f61c3569ab8b40fde01b8a9d3aad712708e2a419e57d8b45');\nhashMap.set('pyenv','9ede8becc97774f9040b40f4472d3e933534b596e04c360bfe0f3c6f95f25182');\nhashMap.set('quadlet','e1fc88a4e14cd595e89bb3d79b4adf2add3ce5eb80f75276e712c32598cca53d');\nhashMap.set('renovate-config','dfaf3f03ddaf70c332f7916106648f36dbfa6a36dd76d15dd27fa116ab3c174c');\nhashMap.set('ruby-version','2db2140d9eee8c555e729a4de0396fa2d78846d3149890ee12fa515bd654be97');\nhashMap.set('runtime-version','b582b168c0cc595e39010feb10f4b97a82683eb269e9598216fbb11cc186e160');\nhashMap.set('rust-toolchain','6ace53db02874d73620d2d872291839820a512a9529c42d174358c692e5db720');\nhashMap.set('sbt','e1eb5c7f0171a9bb1b6bd4a36a91039a31b6c84e0983d91d930be31a69506d9e');\nhashMap.set('scalafmt','9d36159b56835e96498af026a1fb0543200db0581681ef95ec54988f411e180f');\nhashMap.set('setup-cfg','4a3a7c812d34739c07685691e7e64c7d3127f9d7d4aff99dc45a25df97ed9745');\nhashMap.set('smithy','9641b91d065ffb63be0dd888139a0402dba41e550f8b44c592db9daf52109100');\nhashMap.set('sveltos','60dd75bb53ace31217211100d622fdb65068c6162758b6ae7103a6ce8bdc9f90');\nhashMap.set('swift','cdf063debdbf36888523ff8cec6d2d1b0ec6f49b37b2fbcd80b0d4f6a31114e1');\nhashMap.set('tekton','33948f5bdf7553909fa63744adb26da97ddf366e9499bccab1250879570267c9');\nhashMap.set('terraform','5b0037e4a88e06efe6f006eff15c24d9e1fefdda40d282aa99f54c2637d21c4d');\nhashMap.set('terraform-version','ec8f786b9731d47f2c2fe0307caf64d7ddd83046fe7ff1f7d8423239f8b0f2aa');\nhashMap.set('terragrunt','300f8fb3c09667654412d2f5dd8ab4882e0f5d1d7a8bc39794993d2e7e58d1b7');\nhashMap.set('terragrunt-version','eea6087b33717d22ede2fc68c2f64df8390b75abe82110ed831a180648feb51d');\nhashMap.set('tflint-plugin','f423bfa2b42a2bfc0e38a33ebd4f9d452473e7ed4e7ad6384a99eb9a35d97479');\nhashMap.set('travis','f3e2f38e699c390b00ff481be5e91dceaa81609e93caf9a4214933de759c84fc');\nhashMap.set('typst','d080a79fbd961c6e21fcc505d544b7e0ff2126142acb1dcabdf6abbcd9339248');\nhashMap.set('unity3d','f13e25e115e3443f4e16cf31578acffa78fb1a5e23339680a92d8d6de6052920');\nhashMap.set('velaci','fda00ddb7cc23e9a37e0a8a253151df0a6930b4276d3e4f78cc54b9ac09af7de');\nhashMap.set('vendir','7db907b3b77ef5f3465f3c4339fbab56bbcdfd1bf34b3d33e4c178d2e07e23e7');\nhashMap.set('woodpecker','6110d3bec33aaeb3511d4bbfa896cec3c8e02fb04a6cff50c9ba81061c851045');\nhashMap.set('xcodegen','dad511d88a9ce1dbdde8b9731f3da7f2bdaa4ca8a083294ee58d56da62ab1683');\nhashMap.set('jsonata','416bcf61144b276b3112814c6e6d261aa29608f46fbb0516c471d35c16f8f0d7');\nhashMap.set('regex','20be5247fdc164173871a051acb0527da017d0c155c653d7563601f55e7b3ff5');"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fingerprint.generated.js","names":[],"sources":["../../../lib/modules/manager/fingerprint.generated.ts"],"sourcesContent":["export const hashMap = new Map<string, string>();\n\nhashMap.set('ansible','a52394a36ac5517f7330473c31d93aa05b2ce607c5e951b48f25a4693cd20a81');\nhashMap.set('ansible-galaxy','0a264d6be73953d801510fdeff271e4071c274339569c6dab4e2a128eaf4869f');\nhashMap.set('ant','2df5943cf0ed19a21b94df13729dbb925655548130caf37e3e22bebaed518e17');\nhashMap.set('apm','bdb6931cc03f4ac02ebfdb56c4b3483bb6c5250fa952545f1a25584d502bbffd');\nhashMap.set('argocd','cff9cd22257bc460ae4b9936570bf0ed5585f280a55d26629deaeeb0bfee8eb5');\nhashMap.set('asdf','430eb99b58171700c8a59c78b9e648575e9b176b781d90dd10a710f7b69015bb');\nhashMap.set('azure-pipelines','a051fe5e7e4fef8208b5864131a2b52b4ae319936f1dd8ee5a4e1ef11359ec09');\nhashMap.set('batect','375d39b432013bedb1330cf40a2199dd822751b28578214f219e7bab98594b8d');\nhashMap.set('batect-wrapper','d999355511ea7f4053325a18b8cfc8d2b586c61e6760c35e557d383a673e3939');\nhashMap.set('bazel','c31bc0a0e23d32726bcc09aa67533ebc5058124bf89c88e09c837419f550801a');\nhashMap.set('bazel-module','9fbba0339f9f7785d52ab85c5f0f6385003093c063483c13feccba13ae438bef');\nhashMap.set('bazelisk','770f75a746dc6ba90c518788d5987d7df4243ef9eee122d1bb0556a93d6e1b11');\nhashMap.set('bicep','7246e0bfc06e0e28cbb03ac088c5591f648956b086e106aeb251fe5d628329db');\nhashMap.set('bitbucket-pipelines','59c0503494ab1442b127914503c01b97ac17b6742b19c632292d5aa24de115cd');\nhashMap.set('bitrise','478dfd316221fad7c29e177c70d1018d832fb2626b53308a5d0f1f0380e69f42');\nhashMap.set('buildkite','b8b404f53cd5d61c39153fddf93945e621471c4ac6aa9960c881cd868922bb4c');\nhashMap.set('buildpacks','6bef3cb04d66b5cfbb195adb4829bcbccae6408518706744d291bacf0610421f');\nhashMap.set('bun','5820cfb6ebe018b8c336d481ea9ae319daaee6a2e368c45196fc8bc67cb3e755');\nhashMap.set('bun-version','df3ae8e4a5de1fa1b4544f3d7fc8117e80adb1e151c46d1ede54a4dbea6521e4');\nhashMap.set('bundler','6e4784dd98c1f86ef64cc8cbf3128df48aebf920032d7792b54fdedd3dd9d4d5');\nhashMap.set('cake','9ebd8b481220b30a8860121d26184540a1a2fcc05ef780df9295dea39b386fad');\nhashMap.set('cargo','fe8136135c895dd08819f91a60cf105f8b951251b057092700101ace991ae1d7');\nhashMap.set('cdnurl','9a81c8e3c6ad6c788498c99fc1067ffdfcd92a427c3afaf8c0130975d83131f2');\nhashMap.set('circleci','91cbeb33ea20f9838e2c81a1195eb806f0b38fa282bc3679f62552f20575ca85');\nhashMap.set('cloudbuild','f4e40388944652c8a19f8518771ac8d3f3c4ccf81ddef0e68b463aca833cb73c');\nhashMap.set('cocoapods','f832e2beef885bb3fd697ed9bb3e8cd742926bfec37ff41212edd2dbb4edb3ba');\nhashMap.set('composer','f1294fb3866ff65a75d98fdef80b1df3d3a8856535b8c690d1799e1205e4b639');\nhashMap.set('conan','8d46e9a30ae628e26118aea10a98d1b846f7c5d96d51ce24693437d555f6d125');\nhashMap.set('copier','10ae4d7f8ff35faf3a3f9f25bf4c969ea960e19aaf8c012aee11f93f4d10533e');\nhashMap.set('cpanfile','07813fec3f3c2197056500e9266a0553b9774c02f2c74d5ca2e213188c7c12d3');\nhashMap.set('crossplane','5c26b1201a1a51454ffb94d829e223a76a781569bf79cdb1e47087c30233ec40');\nhashMap.set('crow','eb9a5f9f95041855dded67bcce3dd54724f690995ed6268d272e8a666ff28fd0');\nhashMap.set('deno','05e7ab60494a20a5e7477f06a9e723e443d37643b6e1d9ba8d3d87126a051175');\nhashMap.set('deps-edn','06783dbc8b9c7bb84e162d1f75b7db56dfa021cc6f809dfd2314cee8b64af08d');\nhashMap.set('devbox','a40050cc61bd9b5d500ec111abb17bb15d5f82ab5b7699f66f628307ba8382c9');\nhashMap.set('devcontainer','24320ed1cb6191d04cb8b2707214d82c08c682597aed1d84f250aa00ad1632ec');\nhashMap.set('docker-compose','fba87b82cb0f2bfd66526631fbe928b8153e7ca701a5790d02b944df17417bb9');\nhashMap.set('dockerfile','995048a257692db3b48dccda029ef5230ebd2a17085e837fc4eb848aae9ba64f');\nhashMap.set('droneci','661d2a2d7295af8dd7a1234c7090c42a89306bd574c3adf1fc67782efaad3998');\nhashMap.set('fleet','4942d52e82f35c41e2d46cf76f426e2d91b350338cfc0bbcb97e8aaae2a1ac0b');\nhashMap.set('flux','aad8c786c4a2b5820663027452eeb8fe84c3af8c8399261e85f0eade2e484fe8');\nhashMap.set('fvm','9b161df0f14bc6e536368952adf373e343630097121a913cea60ee284027fb90');\nhashMap.set('git-submodules','df8bb92b2906d8cddda2d4b302ee503f8002e3554d32d74cef2f584fe891f38f');\nhashMap.set('github-actions','7adddc8e590786084855ffe53292bff3098ac672f91c21cc39d45bcf0af2271f');\nhashMap.set('gitlabci','a5e1e66ef461e1c1e71062f85f35a212417e23627f4b002810f9a98295d6e672');\nhashMap.set('gitlabci-include','8860a15ab516fde00694f9bd9bf56fce4addafe5a55b5ddb9a4ec477d301d351');\nhashMap.set('glasskube','93e7b9000a17efa15a1abaaf320b5af9169b1ecd828fc0c881d98570ef9d9e30');\nhashMap.set('gleam','5e9b9f5f914afe5ed7b526c06c65111e3716d2dea9b0cbe7907bbc96db1064a3');\nhashMap.set('gomod','6011c22e60814460fb4a40f834608a868776b91eff2cae2d3bfea1e73ccd8aeb');\nhashMap.set('gradle','9e3ff52ce4ad2555929acdd4d32c417c4ef8714c23a92f2893ecc580fa4d6064');\nhashMap.set('gradle-wrapper','73ba30c34955fab7737454b5cff9aca6d1b5607d53c17c9e13d8ad96f6eaae87');\nhashMap.set('haskell-cabal','f158b7725e3143dfd2950e3de0bbccc2a61cd7eba87f7a54c5057e01252348e2');\nhashMap.set('helm-requirements','7ee9dace4c036dfe113c0c0e46369d8b83a739caa831660142ca98d3236a180a');\nhashMap.set('helm-values','0aa79bb0257d0d72e54dfd2653e59bfef63b97e46c035b7443593bdf6e6382aa');\nhashMap.set('helmfile','28572dd24b6746ca7065ee467aa13bbc8c3e8c0f88ae48e33bce88468c600100');\nhashMap.set('helmsman','951deeb3355da751ef39c9e932b26ea749450e32e75759e4b5fc29359e100b37');\nhashMap.set('helmv3','e2d464055503d3702d3cf7323ce593747fe482def8ee59aea2dcaadb0bb0f72c');\nhashMap.set('hermit','0fb25b7766c3a264fbb765ff75b1542b24136c4c9f933696d4a5aecfed637071');\nhashMap.set('homeassistant-manifest','05043c6db870cffbb6f8f3e351c025e3de227eaae0b24134b796aec46f84b65f');\nhashMap.set('homebrew','dffe954a4e18c2dc4bfdaa12222fe8ddc3395869afd5afa603fc2b6264747984');\nhashMap.set('html','81fa6c2bf2b868596584a48b949645207a2aa3081951ed99183ee50b70b77d5f');\nhashMap.set('jenkins','7fda0e7e0f3d5e18088ccb3594f727f4cfc48b064706bdaaf1a0a075b6a2cff5');\nhashMap.set('jsonnet-bundler','4cedeb0394e5c38361d1868ff45b4f34747ab8c492378b6e63dcaf1f4f3c024d');\nhashMap.set('kotlin-script','95ebc844c040ca047321b207d525220e29774a2a1fe06f9639e8353c66908564');\nhashMap.set('kubernetes','321e7d77fb3600dd4c00a86eaa1294927e7f92300b74fa2977d813dcaa3bb4de');\nhashMap.set('kustomize','aa830c27302555e12d7f04e342c96125d68c231028a2d3c459c4431516382584');\nhashMap.set('leiningen','c8397e376f1717c2f771ae9ea3ba6b720d2422b133cf937e762c44e42be146a2');\nhashMap.set('maven','c110b99291c2a5bc82cf7a69330275e9bbd7dc8ba3e9e987611dfcffbe002d8d');\nhashMap.set('maven-wrapper','6e53b6e4abf1d20b75094c7a70d66b4a5ac39954f009aa401f5e55dada8be4d0');\nhashMap.set('meteor','4636a47ba4dcfff19fe662572ef7a40d17146be3c966e00ef437e1fc8de92776');\nhashMap.set('mint','248fe4f1ea5c985921c286785792c97e06fc41f402b2d45df82f6aecd17f710e');\nhashMap.set('mise','eaedf27c1c87e4658c7eef17903cf222b42805f718e960c111632d2c8c649664');\nhashMap.set('mix','0f79163dc2a1c896599d152be635c23beaf16812ae3d8fbfffec98c7bd0de872');\nhashMap.set('nix','0f80f0b81f2197a7e588be5c115a32a826fc184593f4e879f7b60fafd97a977e');\nhashMap.set('nodenv','ac652c28481b001f7471f4183eac07b45d98ecbe83efc275830b0a1b2e0459b8');\nhashMap.set('npm','30c78bc1c29eeecbdedb4eacc52bd93eedfb07279fd385f893193dcac6196466');\nhashMap.set('nuget','b81fb0ca6cfeb86b004592b38ce176673e056d6a2ed41a9807afb0eb7ad405d2');\nhashMap.set('nvm','3eb77c7b0acf6d64753de78fad2499b352719853aa6872878c40675d14152322');\nhashMap.set('ocb','032b216684c14b0954e0bb019513a2aca3faaee5748587acb668d377d7c891ca');\nhashMap.set('osgi','d6567a733ef3983112b46fdccd7ceebfcd48411104e0c6b6e714d4310db48024');\nhashMap.set('pep621','52450676f8b0e05134b3e8947b832195ef40bcaec1ce43d71351a2f797b80d75');\nhashMap.set('pep723','77022a0eae6a3cbb74a1e6d596db1276e379768e40448192b3fa81edd14ca73f');\nhashMap.set('pip-compile','a98dc76a002e1dc21662237f009ff8fea36236bb4e24cb82ee30c6a78f57271f');\nhashMap.set('pip_requirements','bf3a407f72abf711230247bef94ba5dc84c08a35107b0f017912fad66afa716a');\nhashMap.set('pip_setup','df18fba2bdcf48f3ca12a8f7e5cd28df31e2368d5528127277038ef4206eca79');\nhashMap.set('pipenv','baf237cd77173c1a7a9c7fa2a8bfb214f3c488ba0cc27f0e8f334df192e3a398');\nhashMap.set('pixi','e31c397982ffa34222b061f23f3b3683f42523dd5dca45ecce2448b0ebc55ea2');\nhashMap.set('poetry','e9dea5d591c87956b9f018414cb3dab8f2e13580a13be00550fdce198fdf08e6');\nhashMap.set('pre-commit','760f2c291ae084db889f722390798a0e2d431ccdc3bc676e73b14901ebea19ac');\nhashMap.set('proto','412053d4550026b4ace490b46e970915b87ec1abf0b0a0c6c8c58ccf1fc16843');\nhashMap.set('pub','8e7c65dfd1999de4f7c44392e949a4d8f4701eb86df59d550e4657feb06b1872');\nhashMap.set('puppet','ba58ab689e44acc8f61c3569ab8b40fde01b8a9d3aad712708e2a419e57d8b45');\nhashMap.set('pyenv','9ede8becc97774f9040b40f4472d3e933534b596e04c360bfe0f3c6f95f25182');\nhashMap.set('quadlet','40927b98dd2bac45dba60e66b5fd0e6b84b61d02db8be536fda7b14546a4feb7');\nhashMap.set('renovate-config','dfaf3f03ddaf70c332f7916106648f36dbfa6a36dd76d15dd27fa116ab3c174c');\nhashMap.set('ruby-version','2db2140d9eee8c555e729a4de0396fa2d78846d3149890ee12fa515bd654be97');\nhashMap.set('runtime-version','b582b168c0cc595e39010feb10f4b97a82683eb269e9598216fbb11cc186e160');\nhashMap.set('rust-toolchain','6ace53db02874d73620d2d872291839820a512a9529c42d174358c692e5db720');\nhashMap.set('sbt','e1eb5c7f0171a9bb1b6bd4a36a91039a31b6c84e0983d91d930be31a69506d9e');\nhashMap.set('scalafmt','9d36159b56835e96498af026a1fb0543200db0581681ef95ec54988f411e180f');\nhashMap.set('setup-cfg','4a3a7c812d34739c07685691e7e64c7d3127f9d7d4aff99dc45a25df97ed9745');\nhashMap.set('smithy','9641b91d065ffb63be0dd888139a0402dba41e550f8b44c592db9daf52109100');\nhashMap.set('sveltos','60dd75bb53ace31217211100d622fdb65068c6162758b6ae7103a6ce8bdc9f90');\nhashMap.set('swift','cdf063debdbf36888523ff8cec6d2d1b0ec6f49b37b2fbcd80b0d4f6a31114e1');\nhashMap.set('tekton','33948f5bdf7553909fa63744adb26da97ddf366e9499bccab1250879570267c9');\nhashMap.set('terraform','5b0037e4a88e06efe6f006eff15c24d9e1fefdda40d282aa99f54c2637d21c4d');\nhashMap.set('terraform-version','ec8f786b9731d47f2c2fe0307caf64d7ddd83046fe7ff1f7d8423239f8b0f2aa');\nhashMap.set('terragrunt','300f8fb3c09667654412d2f5dd8ab4882e0f5d1d7a8bc39794993d2e7e58d1b7');\nhashMap.set('terragrunt-version','eea6087b33717d22ede2fc68c2f64df8390b75abe82110ed831a180648feb51d');\nhashMap.set('tflint-plugin','f423bfa2b42a2bfc0e38a33ebd4f9d452473e7ed4e7ad6384a99eb9a35d97479');\nhashMap.set('travis','f3e2f38e699c390b00ff481be5e91dceaa81609e93caf9a4214933de759c84fc');\nhashMap.set('typst','d080a79fbd961c6e21fcc505d544b7e0ff2126142acb1dcabdf6abbcd9339248');\nhashMap.set('unity3d','f13e25e115e3443f4e16cf31578acffa78fb1a5e23339680a92d8d6de6052920');\nhashMap.set('velaci','fda00ddb7cc23e9a37e0a8a253151df0a6930b4276d3e4f78cc54b9ac09af7de');\nhashMap.set('vendir','7db907b3b77ef5f3465f3c4339fbab56bbcdfd1bf34b3d33e4c178d2e07e23e7');\nhashMap.set('woodpecker','6110d3bec33aaeb3511d4bbfa896cec3c8e02fb04a6cff50c9ba81061c851045');\nhashMap.set('xcodegen','dad511d88a9ce1dbdde8b9731f3da7f2bdaa4ca8a083294ee58d56da62ab1683');\nhashMap.set('jsonata','416bcf61144b276b3112814c6e6d261aa29608f46fbb0516c471d35c16f8f0d7');\nhashMap.set('regex','20be5247fdc164173871a051acb0527da017d0c155c653d7563601f55e7b3ff5');"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ function trimQuotes(str) {
|
|
|
10
10
|
const requireRegex = regEx(/^(?<keyword>require)?\s+(?<module>[^\s]+\/?[^\s]+)\s+(?<version>[^\s]+)(?:\s*\/\/\s*(?<comment>[^\s]+)\s*)?$/);
|
|
11
11
|
const replaceRegex = regEx(/^(?<keyword>replace)?\s+(?<module>[^\s]+\/?[^\s]+)\s*=>\s*(?<replacement>[^\s]+)(?:\s+(?<version>[^\s]+))?(?:\s*\/\/\s*(?<comment>[^\s]+)\s*)?$/);
|
|
12
12
|
const excludeBlockStartRegex = regEx(/^(?<keyword>exclude)\s+\(\s*$/);
|
|
13
|
-
const endBlockRegex = regEx(/^\s
|
|
13
|
+
const endBlockRegex = regEx(/^\s*\)\s*$/);
|
|
14
14
|
const toolRegex = regEx(/^(?<keyword>tool)?\s+(?<module>[^\s]+\/?[^\s]+)\s*$/);
|
|
15
15
|
const goVersionRegex = regEx(/^\s*go\s+(?<version>[^\s]+)\s*$/);
|
|
16
16
|
const toolchainVersionRegex = regEx(/^\s*toolchain\s+go(?<version>[^\s]+)\s*$/);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line-parser.js","names":[],"sources":["../../../../lib/modules/manager/gomod/line-parser.ts"],"sourcesContent":["import semver from 'semver';\nimport { regEx } from '../../../util/regex.ts';\nimport { GoDatasource } from '../../datasource/go/index.ts';\nimport { GolangVersionDatasource } from '../../datasource/golang-version/index.ts';\nimport { isVersion } from '../../versioning/semver/index.ts';\nimport type { PackageDependency } from '../types.ts';\n\nfunction trimQuotes(str: string): string {\n return str.replace(regEx(/^\"(?<value>.*)\"$/), '$<value>');\n}\n\nconst requireRegex = regEx(\n /^(?<keyword>require)?\\s+(?<module>[^\\s]+\\/?[^\\s]+)\\s+(?<version>[^\\s]+)(?:\\s*\\/\\/\\s*(?<comment>[^\\s]+)\\s*)?$/,\n);\n\nconst replaceRegex = regEx(\n /^(?<keyword>replace)?\\s+(?<module>[^\\s]+\\/?[^\\s]+)\\s*=>\\s*(?<replacement>[^\\s]+)(?:\\s+(?<version>[^\\s]+))?(?:\\s*\\/\\/\\s*(?<comment>[^\\s]+)\\s*)?$/,\n);\n\nexport const excludeBlockStartRegex = regEx(/^(?<keyword>exclude)\\s+\\(\\s*$/);\n\nexport const endBlockRegex = regEx(/^\\s
|
|
1
|
+
{"version":3,"file":"line-parser.js","names":[],"sources":["../../../../lib/modules/manager/gomod/line-parser.ts"],"sourcesContent":["import semver from 'semver';\nimport { regEx } from '../../../util/regex.ts';\nimport { GoDatasource } from '../../datasource/go/index.ts';\nimport { GolangVersionDatasource } from '../../datasource/golang-version/index.ts';\nimport { isVersion } from '../../versioning/semver/index.ts';\nimport type { PackageDependency } from '../types.ts';\n\nfunction trimQuotes(str: string): string {\n return str.replace(regEx(/^\"(?<value>.*)\"$/), '$<value>');\n}\n\nconst requireRegex = regEx(\n /^(?<keyword>require)?\\s+(?<module>[^\\s]+\\/?[^\\s]+)\\s+(?<version>[^\\s]+)(?:\\s*\\/\\/\\s*(?<comment>[^\\s]+)\\s*)?$/,\n);\n\nconst replaceRegex = regEx(\n /^(?<keyword>replace)?\\s+(?<module>[^\\s]+\\/?[^\\s]+)\\s*=>\\s*(?<replacement>[^\\s]+)(?:\\s+(?<version>[^\\s]+))?(?:\\s*\\/\\/\\s*(?<comment>[^\\s]+)\\s*)?$/,\n);\n\nexport const excludeBlockStartRegex = regEx(/^(?<keyword>exclude)\\s+\\(\\s*$/);\n\nexport const endBlockRegex = regEx(/^\\s*\\)\\s*$/);\n\nconst toolRegex = regEx(/^(?<keyword>tool)?\\s+(?<module>[^\\s]+\\/?[^\\s]+)\\s*$/);\n\nconst goVersionRegex = regEx(/^\\s*go\\s+(?<version>[^\\s]+)\\s*$/);\n\nconst toolchainVersionRegex = regEx(/^\\s*toolchain\\s+go(?<version>[^\\s]+)\\s*$/);\n\nconst pseudoVersionRegex = regEx(GoDatasource.pversionRegexp);\n\nconst placeholderPseudoVersion = 'v0.0.0-00010101000000-000000000000';\n\nfunction extractDigest(input: string): string | undefined {\n const match = pseudoVersionRegex.exec(input);\n return match?.groups?.digest;\n}\n\nfunction isPlaceholderPseudoVersion(version: string): boolean {\n return version === placeholderPseudoVersion;\n}\n\nexport function parseLine(input: string): PackageDependency | null {\n const goVersionMatches = goVersionRegex.exec(input)?.groups;\n if (goVersionMatches) {\n const { version: currentValue } = goVersionMatches;\n\n const dep: PackageDependency = {\n datasource: GolangVersionDatasource.id,\n versioning: 'go-mod-directive',\n depType: 'golang',\n depName: 'go',\n currentValue,\n commitMessageTopic: 'go module directive',\n };\n\n if (!semver.validRange(currentValue)) {\n dep.skipReason = 'invalid-version';\n }\n\n return dep;\n }\n\n const toolchainMatches = toolchainVersionRegex.exec(input)?.groups;\n if (toolchainMatches) {\n const { version: currentValue } = toolchainMatches;\n\n const dep: PackageDependency = {\n datasource: GolangVersionDatasource.id,\n depType: 'toolchain',\n depName: 'go',\n currentValue,\n commitMessageTopic: 'go toolchain directive',\n };\n\n if (!semver.valid(currentValue)) {\n dep.skipReason = 'invalid-version';\n }\n\n return dep;\n }\n\n const requireMatches = requireRegex.exec(input)?.groups;\n if (requireMatches) {\n const { keyword, module, version: currentValue, comment } = requireMatches;\n\n const depName = trimQuotes(module);\n\n const dep: PackageDependency = {\n datasource: GoDatasource.id,\n depType: 'require',\n depName,\n currentValue,\n };\n\n if (isVersion(currentValue)) {\n const digest = extractDigest(currentValue);\n if (digest) {\n dep.currentDigest = digest;\n dep.digestOneAndOnly = true;\n dep.versioning = 'loose';\n if (isPlaceholderPseudoVersion(currentValue)) {\n dep.skipReason = 'invalid-version';\n }\n }\n } else {\n dep.skipReason = 'invalid-version';\n }\n\n if (comment === 'indirect') {\n dep.depType = 'indirect';\n dep.enabled = false;\n }\n\n if (!keyword) {\n dep.managerData = { multiLine: true };\n }\n\n return dep;\n }\n\n const replaceMatches = replaceRegex.exec(input)?.groups;\n if (replaceMatches) {\n const {\n keyword,\n replacement,\n version: currentValue,\n comment,\n } = replaceMatches;\n\n const depName = trimQuotes(replacement);\n\n const dep: PackageDependency = {\n datasource: GoDatasource.id,\n depType: 'replace',\n depName,\n currentValue,\n };\n\n if (isVersion(currentValue)) {\n const digest = extractDigest(currentValue);\n if (digest) {\n dep.currentDigest = digest;\n dep.digestOneAndOnly = true;\n dep.versioning = 'loose';\n if (isPlaceholderPseudoVersion(currentValue)) {\n dep.skipReason = 'invalid-version';\n }\n }\n } else if (currentValue) {\n dep.skipReason = 'invalid-version';\n } else {\n dep.skipReason = 'unspecified-version';\n delete dep.currentValue;\n }\n\n if (comment === 'indirect') {\n dep.depType = 'indirect';\n dep.enabled = false;\n }\n\n if (!keyword) {\n dep.managerData = { multiLine: true };\n }\n\n if (depName.startsWith('/') || depName.startsWith('.')) {\n dep.skipReason = 'local-dependency';\n }\n\n return dep;\n }\n\n const toolMatches = toolRegex.exec(input)?.groups;\n if (toolMatches) {\n const { keyword, module } = toolMatches;\n\n const depName = trimQuotes(module);\n\n const dep: PackageDependency = {\n datasource: GoDatasource.id,\n depType: 'tool',\n depName,\n skipReason: 'unversioned-reference',\n };\n\n if (!keyword) {\n dep.managerData = { multiLine: true };\n }\n\n return dep;\n }\n\n return null;\n}\n"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { z } from "zod/v4";
|
|
|
4
4
|
const QuadletFile = Ini.pipe(z.object({
|
|
5
5
|
Container: z.object({ Image: z.string() }).optional(),
|
|
6
6
|
Image: z.object({ Image: z.string() }).optional(),
|
|
7
|
-
Volume: z.object({ Image: z.string() }).optional()
|
|
7
|
+
Volume: z.object({ Image: z.string().optional() }).optional()
|
|
8
8
|
}));
|
|
9
9
|
//#endregion
|
|
10
10
|
export { QuadletFile };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","names":[],"sources":["../../../../lib/modules/manager/quadlet/schema.ts"],"sourcesContent":["import { z } from 'zod/v4';\nimport { Ini } from '../../../util/schema-utils/index.ts';\n\nexport const QuadletFile = Ini.pipe(\n z.object({\n Container: z\n .object({\n Image: z.string(),\n })\n .optional(),\n Image: z\n .object({\n Image: z.string(),\n })\n .optional(),\n Volume: z\n .object({\n Image: z.string(),\n })\n .optional(),\n }),\n);\nexport type QuadletFile = z.infer<typeof QuadletFile>;\n"],"mappings":";;;AAGA,MAAa,cAAc,IAAI,KAC7B,EAAE,OAAO;CACP,WAAW,EACR,OAAO,EACN,OAAO,EAAE,OAAO,EAClB,CAAC,CAAC,CACD,SAAS;CACZ,OAAO,EACJ,OAAO,EACN,OAAO,EAAE,OAAO,EAClB,CAAC,CAAC,CACD,SAAS;CACZ,QAAQ,EACL,OAAO,EACN,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"schema.js","names":[],"sources":["../../../../lib/modules/manager/quadlet/schema.ts"],"sourcesContent":["import { z } from 'zod/v4';\nimport { Ini } from '../../../util/schema-utils/index.ts';\n\nexport const QuadletFile = Ini.pipe(\n z.object({\n Container: z\n .object({\n Image: z.string(),\n })\n .optional(),\n Image: z\n .object({\n Image: z.string(),\n })\n .optional(),\n Volume: z\n .object({\n Image: z.string().optional(),\n })\n .optional(),\n }),\n);\nexport type QuadletFile = z.infer<typeof QuadletFile>;\n"],"mappings":";;;AAGA,MAAa,cAAc,IAAI,KAC7B,EAAE,OAAO;CACP,WAAW,EACR,OAAO,EACN,OAAO,EAAE,OAAO,EAClB,CAAC,CAAC,CACD,SAAS;CACZ,OAAO,EACJ,OAAO,EACN,OAAO,EAAE,OAAO,EAClB,CAAC,CAAC,CACD,SAAS;CACZ,QAAQ,EACL,OAAO,EACN,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,EAC7B,CAAC,CAAC,CACD,SAAS;AACd,CAAC,CACH"}
|
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.105.
|
|
4
|
+
"version": "44.105.4",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"renovate": "dist/renovate.js",
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"agentkeepalive": "4.6.0",
|
|
133
133
|
"async-mutex": "0.5.0",
|
|
134
134
|
"aws4": "1.13.2",
|
|
135
|
-
"azure-devops-node-api": "17.0.
|
|
135
|
+
"azure-devops-node-api": "17.0.1",
|
|
136
136
|
"bunyan": "1.8.15",
|
|
137
137
|
"cacache": "20.0.4",
|
|
138
138
|
"changelog-filename-regex": "2.0.1",
|
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.105.
|
|
3
|
+
"title": "JSON schema for Renovate 44.105.4 config files (https://renovatebot.com/)",
|
|
4
4
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
5
|
-
"x-renovate-version": "44.105.
|
|
5
|
+
"x-renovate-version": "44.105.4",
|
|
6
6
|
"allowComments": true,
|
|
7
7
|
"type": "object",
|
|
8
8
|
"definitions": {
|