renovate 44.96.1 → 44.96.3
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/buildpacks-registry/index.js +1 -0
- package/dist/modules/datasource/buildpacks-registry/index.js.map +1 -1
- package/dist/modules/datasource/dotnet-version/index.js +4 -2
- package/dist/modules/datasource/dotnet-version/index.js.map +1 -1
- package/dist/modules/datasource/galaxy/index.js +1 -0
- package/dist/modules/datasource/galaxy/index.js.map +1 -1
- package/dist/modules/datasource/jsr/index.js +1 -0
- package/dist/modules/datasource/jsr/index.js.map +1 -1
- package/dist/modules/datasource/rust-version/index.js +2 -1
- package/dist/modules/datasource/rust-version/index.js.map +1 -1
- package/package.json +5 -5
- package/renovate-schema.json +2 -2
|
@@ -38,6 +38,7 @@ var BuildpacksRegistryDatasource = class BuildpacksRegistryDatasource extends Da
|
|
|
38
38
|
return withCache({
|
|
39
39
|
namespace: `datasource-${BuildpacksRegistryDatasource.id}`,
|
|
40
40
|
key: `${config.registryUrl}:${config.packageName}`,
|
|
41
|
+
cacheable: true,
|
|
41
42
|
fallback: true
|
|
42
43
|
}, () => this._getReleases(config));
|
|
43
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../lib/modules/datasource/buildpacks-registry/index.ts"],"sourcesContent":["import urlJoin from 'url-join';\nimport { ZodError } from 'zod/v4';\nimport { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { Result } from '../../../util/result.ts';\nimport { Datasource } from '../datasource.ts';\nimport { ReleasesConfig } from '../schema.ts';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types.ts';\nimport { BuildpacksRegistryResponse } from './schema.ts';\n\nexport class BuildpacksRegistryDatasource extends Datasource {\n static readonly id = 'buildpacks-registry';\n\n constructor() {\n super(BuildpacksRegistryDatasource.id);\n }\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = ['https://registry.buildpacks.io'];\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is determined from the `published_at` field in the results.';\n override readonly sourceUrlSupport = 'release';\n override readonly sourceUrlNote =\n 'The source URL is determined from the `source_code_url` field of the release object in the results.';\n\n private async _getReleases(\n config: GetReleasesConfig,\n ): Promise<ReleaseResult | null> {\n const result = Result.parse(config, ReleasesConfig)\n .transform(({ packageName, registryUrl }) => {\n const url = urlJoin(\n registryUrl,\n 'api',\n 'v1',\n 'buildpacks',\n packageName,\n );\n\n return this.http.getJsonSafe(url, BuildpacksRegistryResponse);\n })\n .transform(({ versions, latest }): ReleaseResult => {\n const releases: Release[] = versions;\n\n const res: ReleaseResult = { releases };\n\n if (latest?.homepage) {\n res.homepage = latest.homepage;\n }\n\n return res;\n });\n\n const { val, err } = await result.unwrap();\n\n if (err instanceof ZodError) {\n logger.debug({ err }, 'buildpacks: validation error');\n return null;\n }\n\n if (err) {\n this.handleGenericErrors(err);\n }\n\n return val;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${BuildpacksRegistryDatasource.id}`,\n key: `${config.registryUrl}:${config.packageName}`,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;;;AAUA,IAAa,+BAAb,MAAa,qCAAqC,WAAW;CAC3D,OAAgB,KAAK;CAErB,cAAc;EACZ,MAAM,6BAA6B,EAAE;CACvC;CAEA,wBAA0C;CAE1C,sBAAwC,CAAC,gCAAgC;CAEzE,0BAA4C;CAC5C,uBACE;CACF,mBAAqC;CACrC,gBACE;CAEF,MAAc,aACZ,QAC+B;EAyB/B,MAAM,EAAE,KAAK,QAAQ,MAxBN,OAAO,MAAM,QAAQ,cAAc,CAAC,CAChD,WAAW,EAAE,aAAa,kBAAkB;GAC3C,MAAM,MAAM,QACV,aACA,OACA,MACA,cACA,WACF;GAEA,OAAO,KAAK,KAAK,YAAY,KAAK,0BAA0B;EAC9D,CAAC,CAAC,CACD,WAAW,EAAE,UAAU,aAA4B;GAGlD,MAAM,MAAqB,EAAE,UAAA,SAAS;GAEtC,IAAI,QAAQ,UACV,IAAI,WAAW,OAAO;GAGxB,OAAO;EACT,CAE8B,CAAC,CAAC,OAAO;EAEzC,IAAI,eAAe,UAAU;GAC3B,OAAO,MAAM,EAAE,IAAI,GAAG,8BAA8B;GACpD,OAAO;EACT;EAEA,IAAI,KACF,KAAK,oBAAoB,GAAG;EAG9B,OAAO;CACT;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,6BAA6B;GACtD,KAAK,GAAG,OAAO,YAAY,GAAG,OAAO;GACrC,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../lib/modules/datasource/buildpacks-registry/index.ts"],"sourcesContent":["import urlJoin from 'url-join';\nimport { ZodError } from 'zod/v4';\nimport { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { Result } from '../../../util/result.ts';\nimport { Datasource } from '../datasource.ts';\nimport { ReleasesConfig } from '../schema.ts';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types.ts';\nimport { BuildpacksRegistryResponse } from './schema.ts';\n\nexport class BuildpacksRegistryDatasource extends Datasource {\n static readonly id = 'buildpacks-registry';\n\n constructor() {\n super(BuildpacksRegistryDatasource.id);\n }\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = ['https://registry.buildpacks.io'];\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is determined from the `published_at` field in the results.';\n override readonly sourceUrlSupport = 'release';\n override readonly sourceUrlNote =\n 'The source URL is determined from the `source_code_url` field of the release object in the results.';\n\n private async _getReleases(\n config: GetReleasesConfig,\n ): Promise<ReleaseResult | null> {\n const result = Result.parse(config, ReleasesConfig)\n .transform(({ packageName, registryUrl }) => {\n const url = urlJoin(\n registryUrl,\n 'api',\n 'v1',\n 'buildpacks',\n packageName,\n );\n\n return this.http.getJsonSafe(url, BuildpacksRegistryResponse);\n })\n .transform(({ versions, latest }): ReleaseResult => {\n const releases: Release[] = versions;\n\n const res: ReleaseResult = { releases };\n\n if (latest?.homepage) {\n res.homepage = latest.homepage;\n }\n\n return res;\n });\n\n const { val, err } = await result.unwrap();\n\n if (err instanceof ZodError) {\n logger.debug({ err }, 'buildpacks: validation error');\n return null;\n }\n\n if (err) {\n this.handleGenericErrors(err);\n }\n\n return val;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${BuildpacksRegistryDatasource.id}`,\n key: `${config.registryUrl}:${config.packageName}`,\n cacheable: true,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;;;AAUA,IAAa,+BAAb,MAAa,qCAAqC,WAAW;CAC3D,OAAgB,KAAK;CAErB,cAAc;EACZ,MAAM,6BAA6B,EAAE;CACvC;CAEA,wBAA0C;CAE1C,sBAAwC,CAAC,gCAAgC;CAEzE,0BAA4C;CAC5C,uBACE;CACF,mBAAqC;CACrC,gBACE;CAEF,MAAc,aACZ,QAC+B;EAyB/B,MAAM,EAAE,KAAK,QAAQ,MAxBN,OAAO,MAAM,QAAQ,cAAc,CAAC,CAChD,WAAW,EAAE,aAAa,kBAAkB;GAC3C,MAAM,MAAM,QACV,aACA,OACA,MACA,cACA,WACF;GAEA,OAAO,KAAK,KAAK,YAAY,KAAK,0BAA0B;EAC9D,CAAC,CAAC,CACD,WAAW,EAAE,UAAU,aAA4B;GAGlD,MAAM,MAAqB,EAAE,UAAA,SAAS;GAEtC,IAAI,QAAQ,UACV,IAAI,WAAW,OAAO;GAGxB,OAAO;EACT,CAE8B,CAAC,CAAC,OAAO;EAEzC,IAAI,eAAe,UAAU;GAC3B,OAAO,MAAM,EAAE,IAAI,GAAG,8BAA8B;GACpD,OAAO;EACT;EAEA,IAAI,KACF,KAAK,oBAAoB,GAAG;EAG9B,OAAO;CACT;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,6BAA6B;GACtD,KAAK,GAAG,OAAO,YAAY,GAAG,OAAO;GACrC,WAAW;GACX,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
|
@@ -36,7 +36,8 @@ var DotnetVersionDatasource = class DotnetVersionDatasource extends Datasource {
|
|
|
36
36
|
namespace: `datasource-${DotnetVersionDatasource.id}`,
|
|
37
37
|
key: config.packageName,
|
|
38
38
|
ttlMinutes: 1440,
|
|
39
|
-
fallback: true
|
|
39
|
+
fallback: true,
|
|
40
|
+
cacheable: true
|
|
40
41
|
}, () => this._getReleases(config));
|
|
41
42
|
}
|
|
42
43
|
async _getChannelReleases(releaseUrl, packageName) {
|
|
@@ -52,7 +53,8 @@ var DotnetVersionDatasource = class DotnetVersionDatasource extends Datasource {
|
|
|
52
53
|
return withCache({
|
|
53
54
|
namespace: `datasource-${DotnetVersionDatasource.id}`,
|
|
54
55
|
key: `${releaseUrl}:${packageName}`,
|
|
55
|
-
ttlMinutes: 1440
|
|
56
|
+
ttlMinutes: 1440,
|
|
57
|
+
cacheable: true
|
|
56
58
|
}, () => this._getChannelReleases(releaseUrl, packageName));
|
|
57
59
|
}
|
|
58
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["p.map"],"sources":["../../../../lib/modules/datasource/dotnet-version/index.ts"],"sourcesContent":["import { withCache } from '../../../util/cache/package/with-cache.ts';\nimport * as p from '../../../util/promises.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types.ts';\nimport {\n DotnetRuntimeReleases,\n DotnetSdkReleases,\n ReleasesIndex,\n} from './schema.ts';\n\nexport class DotnetVersionDatasource extends Datasource {\n static readonly id = 'dotnet-version';\n\n constructor() {\n super(DotnetVersionDatasource.id);\n }\n\n override readonly caching = true;\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = [\n 'https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/releases-index.json',\n ];\n\n override releaseTimestampSupport = true;\n override releaseTimestampNote =\n 'The release timestamp is determined from the `release-date` field in the results.';\n override readonly sourceUrlSupport = 'package';\n override readonly sourceUrlNote =\n 'We use the URL https://github.com/dotnet/sdk for the `dotnet-sdk` package and, the https://github.com/dotnet/runtime URL for the `dotnet-runtime` package.';\n\n private async _getReleases({\n packageName,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n if (!(packageName === 'dotnet-sdk' || packageName === 'dotnet-runtime')) {\n return null;\n }\n\n try {\n const registryUrl = this.defaultRegistryUrls[0];\n const { body: urls } = await this.http.getJson(\n registryUrl,\n ReleasesIndex,\n );\n\n const channelReleases = await p.map(\n urls,\n (url) => this.getChannelReleases(url, packageName),\n { concurrency: 1, stopOnError: true },\n );\n const releases = channelReleases.flat();\n\n const sourceUrl =\n packageName === 'dotnet-sdk'\n ? 'https://github.com/dotnet/sdk'\n : 'https://github.com/dotnet/runtime';\n\n return { releases, sourceUrl };\n } catch (err) {\n this.handleGenericErrors(err);\n }\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${DotnetVersionDatasource.id}`,\n key: config.packageName,\n ttlMinutes: 1440,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n\n private async _getChannelReleases(\n releaseUrl: string,\n packageName: string,\n ): Promise<Release[]> {\n const schema =\n packageName === 'dotnet-sdk' ? DotnetSdkReleases : DotnetRuntimeReleases;\n try {\n const { body } = await this.http.getJson(releaseUrl, schema);\n return body;\n } catch (err) {\n this.handleGenericErrors(err);\n }\n }\n\n getChannelReleases(\n releaseUrl: string,\n packageName: string,\n ): Promise<Release[]> {\n return withCache(\n {\n namespace: `datasource-${DotnetVersionDatasource.id}`,\n key: `${releaseUrl}:${packageName}`,\n ttlMinutes: 1440,\n },\n () => this._getChannelReleases(releaseUrl, packageName),\n );\n }\n}\n"],"mappings":";;;;;AAUA,IAAa,0BAAb,MAAa,gCAAgC,WAAW;CACtD,OAAgB,KAAK;CAErB,cAAc;EACZ,MAAM,wBAAwB,EAAE;CAClC;CAEA,UAA4B;CAE5B,wBAA0C;CAE1C,sBAAwC,CACtC,qFACF;CAEA,0BAAmC;CACnC,uBACE;CACF,mBAAqC;CACrC,gBACE;CAEF,MAAc,aAAa,EACzB,eACmD;EACnD,IAAI,EAAE,gBAAgB,gBAAgB,gBAAgB,mBACpD,OAAO;EAGT,IAAI;GACF,MAAM,cAAc,KAAK,oBAAoB;GAC7C,MAAM,EAAE,MAAM,SAAS,MAAM,KAAK,KAAK,QACrC,aACA,aACF;GAcA,OAAO;IAAE,WAPQ,MALaA,IAC5B,OACC,QAAQ,KAAK,mBAAmB,KAAK,WAAW,GACjD;KAAE,aAAa;KAAG,aAAa;IAAK,CACtC,EAAA,CACiC,KAOjB;IAAG,WAJjB,gBAAgB,eACZ,kCACA;GAEuB;EAC/B,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;CACF;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,wBAAwB;GACjD,KAAK,OAAO;GACZ,YAAY;GACZ,UAAU;
|
|
1
|
+
{"version":3,"file":"index.js","names":["p.map"],"sources":["../../../../lib/modules/datasource/dotnet-version/index.ts"],"sourcesContent":["import { withCache } from '../../../util/cache/package/with-cache.ts';\nimport * as p from '../../../util/promises.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types.ts';\nimport {\n DotnetRuntimeReleases,\n DotnetSdkReleases,\n ReleasesIndex,\n} from './schema.ts';\n\nexport class DotnetVersionDatasource extends Datasource {\n static readonly id = 'dotnet-version';\n\n constructor() {\n super(DotnetVersionDatasource.id);\n }\n\n override readonly caching = true;\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = [\n 'https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/releases-index.json',\n ];\n\n override releaseTimestampSupport = true;\n override releaseTimestampNote =\n 'The release timestamp is determined from the `release-date` field in the results.';\n override readonly sourceUrlSupport = 'package';\n override readonly sourceUrlNote =\n 'We use the URL https://github.com/dotnet/sdk for the `dotnet-sdk` package and, the https://github.com/dotnet/runtime URL for the `dotnet-runtime` package.';\n\n private async _getReleases({\n packageName,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n if (!(packageName === 'dotnet-sdk' || packageName === 'dotnet-runtime')) {\n return null;\n }\n\n try {\n const registryUrl = this.defaultRegistryUrls[0];\n const { body: urls } = await this.http.getJson(\n registryUrl,\n ReleasesIndex,\n );\n\n const channelReleases = await p.map(\n urls,\n (url) => this.getChannelReleases(url, packageName),\n { concurrency: 1, stopOnError: true },\n );\n const releases = channelReleases.flat();\n\n const sourceUrl =\n packageName === 'dotnet-sdk'\n ? 'https://github.com/dotnet/sdk'\n : 'https://github.com/dotnet/runtime';\n\n return { releases, sourceUrl };\n } catch (err) {\n this.handleGenericErrors(err);\n }\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${DotnetVersionDatasource.id}`,\n key: config.packageName,\n ttlMinutes: 1440,\n fallback: true,\n cacheable: true,\n },\n () => this._getReleases(config),\n );\n }\n\n private async _getChannelReleases(\n releaseUrl: string,\n packageName: string,\n ): Promise<Release[]> {\n const schema =\n packageName === 'dotnet-sdk' ? DotnetSdkReleases : DotnetRuntimeReleases;\n try {\n const { body } = await this.http.getJson(releaseUrl, schema);\n return body;\n } catch (err) {\n this.handleGenericErrors(err);\n }\n }\n\n getChannelReleases(\n releaseUrl: string,\n packageName: string,\n ): Promise<Release[]> {\n return withCache(\n {\n namespace: `datasource-${DotnetVersionDatasource.id}`,\n key: `${releaseUrl}:${packageName}`,\n ttlMinutes: 1440,\n cacheable: true,\n },\n () => this._getChannelReleases(releaseUrl, packageName),\n );\n }\n}\n"],"mappings":";;;;;AAUA,IAAa,0BAAb,MAAa,gCAAgC,WAAW;CACtD,OAAgB,KAAK;CAErB,cAAc;EACZ,MAAM,wBAAwB,EAAE;CAClC;CAEA,UAA4B;CAE5B,wBAA0C;CAE1C,sBAAwC,CACtC,qFACF;CAEA,0BAAmC;CACnC,uBACE;CACF,mBAAqC;CACrC,gBACE;CAEF,MAAc,aAAa,EACzB,eACmD;EACnD,IAAI,EAAE,gBAAgB,gBAAgB,gBAAgB,mBACpD,OAAO;EAGT,IAAI;GACF,MAAM,cAAc,KAAK,oBAAoB;GAC7C,MAAM,EAAE,MAAM,SAAS,MAAM,KAAK,KAAK,QACrC,aACA,aACF;GAcA,OAAO;IAAE,WAPQ,MALaA,IAC5B,OACC,QAAQ,KAAK,mBAAmB,KAAK,WAAW,GACjD;KAAE,aAAa;KAAG,aAAa;IAAK,CACtC,EAAA,CACiC,KAOjB;IAAG,WAJjB,gBAAgB,eACZ,kCACA;GAEuB;EAC/B,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;CACF;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,wBAAwB;GACjD,KAAK,OAAO;GACZ,YAAY;GACZ,UAAU;GACV,WAAW;EACb,SACM,KAAK,aAAa,MAAM,CAChC;CACF;CAEA,MAAc,oBACZ,YACA,aACoB;EACpB,MAAM,SACJ,gBAAgB,eAAe,oBAAoB;EACrD,IAAI;GACF,MAAM,EAAE,SAAS,MAAM,KAAK,KAAK,QAAQ,YAAY,MAAM;GAC3D,OAAO;EACT,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;CACF;CAEA,mBACE,YACA,aACoB;EACpB,OAAO,UACL;GACE,WAAW,cAAc,wBAAwB;GACjD,KAAK,GAAG,WAAW,GAAG;GACtB,YAAY;GACZ,WAAW;EACb,SACM,KAAK,oBAAoB,YAAY,WAAW,CACxD;CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["pep440Versioning.id"],"sources":["../../../../lib/modules/datasource/galaxy/index.ts"],"sourcesContent":["import { isNonEmptyString } from '@sindresorhus/is';\nimport { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport * as pep440Versioning from '../../versioning/pep440/index.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types.ts';\nimport { GalaxyV1 } from './schema.ts';\n\nexport class GalaxyDatasource extends Datasource {\n static readonly id = 'galaxy';\n\n constructor() {\n super(GalaxyDatasource.id);\n }\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = ['https://galaxy.ansible.com/'];\n\n override readonly defaultVersioning = pep440Versioning.id;\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is determined from the `created` field in the results.';\n override readonly sourceUrlSupport = 'package';\n override readonly sourceUrlNote =\n 'The source URL is determined from the `github_user` and `github_repo` fields in the results.';\n\n private async _getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n const lookUp = packageName.split('.');\n const userName = lookUp[0];\n const projectName = lookUp[1];\n\n const galaxyAPIUrl = `${registryUrl}api/v1/roles/?owner__username=${userName}&name=${projectName}`;\n const galaxyProjectUrl = `${registryUrl}${userName}/${projectName}`;\n\n let body: GalaxyV1 | null = null;\n try {\n const raw = await this.http.getJson(galaxyAPIUrl, GalaxyV1);\n body = raw.body;\n } catch (err) {\n this.handleGenericErrors(err);\n }\n\n if (body.results.length > 1) {\n body.results = body.results.filter(\n (result) => result.github_user === userName,\n );\n if (!body.results.length) {\n logger.warn(\n { dependency: packageName, userName },\n `No matching result from galaxy for package`,\n );\n return null;\n }\n }\n if (body.results.length === 0) {\n logger.debug(\n `Received no results for ${packageName} from ${galaxyAPIUrl} `,\n );\n return null;\n }\n\n const resultObject = body.results[0];\n const versions = resultObject.summary_fields.versions;\n\n const result: ReleaseResult = {\n releases: [],\n };\n\n result.dependencyUrl = galaxyProjectUrl;\n const { github_user: user, github_repo: repo } = resultObject;\n if (isNonEmptyString(user) && isNonEmptyString(repo)) {\n result.sourceUrl = `https://github.com/${user}/${repo}`;\n }\n\n result.releases = versions.map(({ version, releaseTimestamp }) => {\n const release: Release = { version };\n if (releaseTimestamp) {\n release.releaseTimestamp = releaseTimestamp;\n }\n return release;\n });\n\n return result;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: 'datasource-galaxy',\n key: config.packageName,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,mBAAb,MAAa,yBAAyB,WAAW;CAC/C,OAAgB,KAAK;CAErB,cAAc;EACZ,MAAM,iBAAiB,EAAE;CAC3B;CAEA,wBAA0C;CAE1C,sBAAwC,CAAC,6BAA6B;CAEtE,oBAAsCA;CAEtC,0BAA4C;CAC5C,uBACE;CACF,mBAAqC;CACrC,gBACE;CAEF,MAAc,aAAa,EACzB,aACA,eACmD;EACnD,MAAM,SAAS,YAAY,MAAM,GAAG;EACpC,MAAM,WAAW,OAAO;EACxB,MAAM,cAAc,OAAO;EAE3B,MAAM,eAAe,GAAG,YAAY,gCAAgC,SAAS,QAAQ;EACrF,MAAM,mBAAmB,GAAG,cAAc,SAAS,GAAG;EAEtD,IAAI,OAAwB;EAC5B,IAAI;GAEF,QAAO,MADW,KAAK,KAAK,QAAQ,cAAc,QAAQ,EAAA,CAC/C;EACb,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;EAEA,IAAI,KAAK,QAAQ,SAAS,GAAG;GAC3B,KAAK,UAAU,KAAK,QAAQ,QACzB,WAAW,OAAO,gBAAgB,QACrC;GACA,IAAI,CAAC,KAAK,QAAQ,QAAQ;IACxB,OAAO,KACL;KAAE,YAAY;KAAa;IAAS,GACpC,4CACF;IACA,OAAO;GACT;EACF;EACA,IAAI,KAAK,QAAQ,WAAW,GAAG;GAC7B,OAAO,MACL,2BAA2B,YAAY,QAAQ,aAAa,EAC9D;GACA,OAAO;EACT;EAEA,MAAM,eAAe,KAAK,QAAQ;EAClC,MAAM,WAAW,aAAa,eAAe;EAE7C,MAAM,SAAwB,EAC5B,UAAU,CAAC,EACb;EAEA,OAAO,gBAAgB;EACvB,MAAM,EAAE,aAAa,MAAM,aAAa,SAAS;EACjD,IAAI,iBAAiB,IAAI,KAAK,iBAAiB,IAAI,GACjD,OAAO,YAAY,sBAAsB,KAAK,GAAG;EAGnD,OAAO,WAAW,SAAS,KAAK,EAAE,SAAS,uBAAuB;GAChE,MAAM,UAAmB,EAAE,QAAQ;GACnC,IAAI,kBACF,QAAQ,mBAAmB;GAE7B,OAAO;EACT,CAAC;EAED,OAAO;CACT;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW;GACX,KAAK,OAAO;GACZ,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["pep440Versioning.id"],"sources":["../../../../lib/modules/datasource/galaxy/index.ts"],"sourcesContent":["import { isNonEmptyString } from '@sindresorhus/is';\nimport { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport * as pep440Versioning from '../../versioning/pep440/index.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types.ts';\nimport { GalaxyV1 } from './schema.ts';\n\nexport class GalaxyDatasource extends Datasource {\n static readonly id = 'galaxy';\n\n constructor() {\n super(GalaxyDatasource.id);\n }\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = ['https://galaxy.ansible.com/'];\n\n override readonly defaultVersioning = pep440Versioning.id;\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is determined from the `created` field in the results.';\n override readonly sourceUrlSupport = 'package';\n override readonly sourceUrlNote =\n 'The source URL is determined from the `github_user` and `github_repo` fields in the results.';\n\n private async _getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n const lookUp = packageName.split('.');\n const userName = lookUp[0];\n const projectName = lookUp[1];\n\n const galaxyAPIUrl = `${registryUrl}api/v1/roles/?owner__username=${userName}&name=${projectName}`;\n const galaxyProjectUrl = `${registryUrl}${userName}/${projectName}`;\n\n let body: GalaxyV1 | null = null;\n try {\n const raw = await this.http.getJson(galaxyAPIUrl, GalaxyV1);\n body = raw.body;\n } catch (err) {\n this.handleGenericErrors(err);\n }\n\n if (body.results.length > 1) {\n body.results = body.results.filter(\n (result) => result.github_user === userName,\n );\n if (!body.results.length) {\n logger.warn(\n { dependency: packageName, userName },\n `No matching result from galaxy for package`,\n );\n return null;\n }\n }\n if (body.results.length === 0) {\n logger.debug(\n `Received no results for ${packageName} from ${galaxyAPIUrl} `,\n );\n return null;\n }\n\n const resultObject = body.results[0];\n const versions = resultObject.summary_fields.versions;\n\n const result: ReleaseResult = {\n releases: [],\n };\n\n result.dependencyUrl = galaxyProjectUrl;\n const { github_user: user, github_repo: repo } = resultObject;\n if (isNonEmptyString(user) && isNonEmptyString(repo)) {\n result.sourceUrl = `https://github.com/${user}/${repo}`;\n }\n\n result.releases = versions.map(({ version, releaseTimestamp }) => {\n const release: Release = { version };\n if (releaseTimestamp) {\n release.releaseTimestamp = releaseTimestamp;\n }\n return release;\n });\n\n return result;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: 'datasource-galaxy',\n key: config.packageName,\n cacheable: true,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;AAQA,IAAa,mBAAb,MAAa,yBAAyB,WAAW;CAC/C,OAAgB,KAAK;CAErB,cAAc;EACZ,MAAM,iBAAiB,EAAE;CAC3B;CAEA,wBAA0C;CAE1C,sBAAwC,CAAC,6BAA6B;CAEtE,oBAAsCA;CAEtC,0BAA4C;CAC5C,uBACE;CACF,mBAAqC;CACrC,gBACE;CAEF,MAAc,aAAa,EACzB,aACA,eACmD;EACnD,MAAM,SAAS,YAAY,MAAM,GAAG;EACpC,MAAM,WAAW,OAAO;EACxB,MAAM,cAAc,OAAO;EAE3B,MAAM,eAAe,GAAG,YAAY,gCAAgC,SAAS,QAAQ;EACrF,MAAM,mBAAmB,GAAG,cAAc,SAAS,GAAG;EAEtD,IAAI,OAAwB;EAC5B,IAAI;GAEF,QAAO,MADW,KAAK,KAAK,QAAQ,cAAc,QAAQ,EAAA,CAC/C;EACb,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;EAEA,IAAI,KAAK,QAAQ,SAAS,GAAG;GAC3B,KAAK,UAAU,KAAK,QAAQ,QACzB,WAAW,OAAO,gBAAgB,QACrC;GACA,IAAI,CAAC,KAAK,QAAQ,QAAQ;IACxB,OAAO,KACL;KAAE,YAAY;KAAa;IAAS,GACpC,4CACF;IACA,OAAO;GACT;EACF;EACA,IAAI,KAAK,QAAQ,WAAW,GAAG;GAC7B,OAAO,MACL,2BAA2B,YAAY,QAAQ,aAAa,EAC9D;GACA,OAAO;EACT;EAEA,MAAM,eAAe,KAAK,QAAQ;EAClC,MAAM,WAAW,aAAa,eAAe;EAE7C,MAAM,SAAwB,EAC5B,UAAU,CAAC,EACb;EAEA,OAAO,gBAAgB;EACvB,MAAM,EAAE,aAAa,MAAM,aAAa,SAAS;EACjD,IAAI,iBAAiB,IAAI,KAAK,iBAAiB,IAAI,GACjD,OAAO,YAAY,sBAAsB,KAAK,GAAG;EAGnD,OAAO,WAAW,SAAS,KAAK,EAAE,SAAS,uBAAuB;GAChE,MAAM,UAAmB,EAAE,QAAQ;GACnC,IAAI,kBACF,QAAQ,mBAAmB;GAE7B,OAAO;EACT,CAAC;EAED,OAAO;CACT;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW;GACX,KAAK,OAAO;GACZ,WAAW;GACX,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
|
@@ -46,6 +46,7 @@ var JsrDatasource = class JsrDatasource extends Datasource {
|
|
|
46
46
|
return withCache({
|
|
47
47
|
namespace: `datasource-${JsrDatasource.id}`,
|
|
48
48
|
key: `getReleases:${config.registryUrl}:${config.packageName}`,
|
|
49
|
+
cacheable: true,
|
|
49
50
|
fallback: true
|
|
50
51
|
}, () => this._getReleases(config));
|
|
51
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["semverId"],"sources":["../../../../lib/modules/datasource/jsr/index.ts"],"sourcesContent":["import { isNull } from '@sindresorhus/is';\nimport { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { joinUrlParts } from '../../../util/url.ts';\nimport { id as semverId } from '../../versioning/semver/index.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, ReleaseResult } from '../types.ts';\nimport { defaultRegistryUrls } from './common.ts';\nimport { JsrPackageMetadata } from './schema.ts';\nimport { extractJsrPackageName } from './util.ts';\n\nexport class JsrDatasource extends Datasource {\n static readonly id = 'jsr';\n\n // custom registry support is not yet supported\n // https://github.com/jsr-io/jsr/issues/203\n override readonly customRegistrySupport = false;\n\n override readonly registryStrategy = 'first';\n // https://jsr.io/docs/using-packages#semver-resolution\n override readonly defaultVersioning = semverId;\n\n // use npm compatible registry api url due to returns\n override readonly defaultRegistryUrls = defaultRegistryUrls;\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is determined from the `createdAt` field in the results. For packages without explicit timestamps, defaults to 2025-09-18.';\n\n constructor() {\n super(JsrDatasource.id);\n }\n\n private async _getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n /* v8 ignore next -- should never happen */\n if (!registryUrl) {\n return null;\n }\n\n const validJsrPackageName = extractJsrPackageName(packageName);\n if (isNull(validJsrPackageName)) {\n logger.debug(`Could not extract packageName: \"${packageName}\"`);\n return null;\n }\n // construct a package metadata url\n // https://jsr.io/docs/api#package-metadata\n const packageInfoUrl = joinUrlParts(registryUrl, packageName, 'meta.json');\n\n const result: ReleaseResult = {\n homepage: joinUrlParts(registryUrl, packageName),\n registryUrl,\n releases: [],\n };\n\n try {\n const { body } = await this.http.getJson(\n packageInfoUrl,\n JsrPackageMetadata,\n );\n result.releases.push(...body);\n } catch (err) {\n logger.warn({ err }, 'JSR: failed to get package details');\n this.handleGenericErrors(err);\n }\n\n return result.releases.length ? result : null;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${JsrDatasource.id}`,\n // TODO: types (#22198)\n key: `getReleases:${config.registryUrl}:${config.packageName}`,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;;;;AAWA,IAAa,gBAAb,MAAa,sBAAsB,WAAW;CAC5C,OAAgB,KAAK;CAIrB,wBAA0C;CAE1C,mBAAqC;CAErC,oBAAsCA;CAGtC,sBAAwC;CAExC,0BAA4C;CAC5C,uBACE;CAEF,cAAc;EACZ,MAAM,cAAc,EAAE;CACxB;CAEA,MAAc,aAAa,EACzB,aACA,eACmD;;EAEnD,IAAI,CAAC,aACH,OAAO;EAGT,MAAM,sBAAsB,sBAAsB,WAAW;EAC7D,IAAI,OAAO,mBAAmB,GAAG;GAC/B,OAAO,MAAM,mCAAmC,YAAY,EAAE;GAC9D,OAAO;EACT;EAGA,MAAM,iBAAiB,aAAa,aAAa,aAAa,WAAW;EAEzE,MAAM,SAAwB;GAC5B,UAAU,aAAa,aAAa,WAAW;GAC/C;GACA,UAAU,CAAC;EACb;EAEA,IAAI;GACF,MAAM,EAAE,SAAS,MAAM,KAAK,KAAK,QAC/B,gBACA,kBACF;GACA,OAAO,SAAS,KAAK,GAAG,IAAI;EAC9B,SAAS,KAAK;GACZ,OAAO,KAAK,EAAE,IAAI,GAAG,oCAAoC;GACzD,KAAK,oBAAoB,GAAG;EAC9B;EAEA,OAAO,OAAO,SAAS,SAAS,SAAS;CAC3C;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,cAAc;GAEvC,KAAK,eAAe,OAAO,YAAY,GAAG,OAAO;GACjD,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["semverId"],"sources":["../../../../lib/modules/datasource/jsr/index.ts"],"sourcesContent":["import { isNull } from '@sindresorhus/is';\nimport { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { joinUrlParts } from '../../../util/url.ts';\nimport { id as semverId } from '../../versioning/semver/index.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, ReleaseResult } from '../types.ts';\nimport { defaultRegistryUrls } from './common.ts';\nimport { JsrPackageMetadata } from './schema.ts';\nimport { extractJsrPackageName } from './util.ts';\n\nexport class JsrDatasource extends Datasource {\n static readonly id = 'jsr';\n\n // custom registry support is not yet supported\n // https://github.com/jsr-io/jsr/issues/203\n override readonly customRegistrySupport = false;\n\n override readonly registryStrategy = 'first';\n // https://jsr.io/docs/using-packages#semver-resolution\n override readonly defaultVersioning = semverId;\n\n // use npm compatible registry api url due to returns\n override readonly defaultRegistryUrls = defaultRegistryUrls;\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is determined from the `createdAt` field in the results. For packages without explicit timestamps, defaults to 2025-09-18.';\n\n constructor() {\n super(JsrDatasource.id);\n }\n\n private async _getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n /* v8 ignore next -- should never happen */\n if (!registryUrl) {\n return null;\n }\n\n const validJsrPackageName = extractJsrPackageName(packageName);\n if (isNull(validJsrPackageName)) {\n logger.debug(`Could not extract packageName: \"${packageName}\"`);\n return null;\n }\n // construct a package metadata url\n // https://jsr.io/docs/api#package-metadata\n const packageInfoUrl = joinUrlParts(registryUrl, packageName, 'meta.json');\n\n const result: ReleaseResult = {\n homepage: joinUrlParts(registryUrl, packageName),\n registryUrl,\n releases: [],\n };\n\n try {\n const { body } = await this.http.getJson(\n packageInfoUrl,\n JsrPackageMetadata,\n );\n result.releases.push(...body);\n } catch (err) {\n logger.warn({ err }, 'JSR: failed to get package details');\n this.handleGenericErrors(err);\n }\n\n return result.releases.length ? result : null;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${JsrDatasource.id}`,\n // TODO: types (#22198)\n key: `getReleases:${config.registryUrl}:${config.packageName}`,\n cacheable: true,\n fallback: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;;;;AAWA,IAAa,gBAAb,MAAa,sBAAsB,WAAW;CAC5C,OAAgB,KAAK;CAIrB,wBAA0C;CAE1C,mBAAqC;CAErC,oBAAsCA;CAGtC,sBAAwC;CAExC,0BAA4C;CAC5C,uBACE;CAEF,cAAc;EACZ,MAAM,cAAc,EAAE;CACxB;CAEA,MAAc,aAAa,EACzB,aACA,eACmD;;EAEnD,IAAI,CAAC,aACH,OAAO;EAGT,MAAM,sBAAsB,sBAAsB,WAAW;EAC7D,IAAI,OAAO,mBAAmB,GAAG;GAC/B,OAAO,MAAM,mCAAmC,YAAY,EAAE;GAC9D,OAAO;EACT;EAGA,MAAM,iBAAiB,aAAa,aAAa,aAAa,WAAW;EAEzE,MAAM,SAAwB;GAC5B,UAAU,aAAa,aAAa,WAAW;GAC/C;GACA,UAAU,CAAC;EACb;EAEA,IAAI;GACF,MAAM,EAAE,SAAS,MAAM,KAAK,KAAK,QAC/B,gBACA,kBACF;GACA,OAAO,SAAS,KAAK,GAAG,IAAI;EAC9B,SAAS,KAAK;GACZ,OAAO,KAAK,EAAE,IAAI,GAAG,oCAAoC;GACzD,KAAK,oBAAoB,GAAG;EAC9B;EAEA,OAAO,OAAO,SAAS,SAAS,SAAS;CAC3C;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,cAAc;GAEvC,KAAK,eAAe,OAAO,YAAY,GAAG,OAAO;GACjD,WAAW;GACX,UAAU;EACZ,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
|
@@ -60,7 +60,8 @@ var RustVersionDatasource = class RustVersionDatasource extends Datasource {
|
|
|
60
60
|
getReleases(config) {
|
|
61
61
|
return withCache({
|
|
62
62
|
namespace: `datasource-${RustVersionDatasource.id}`,
|
|
63
|
-
key: config.registryUrl
|
|
63
|
+
key: config.registryUrl,
|
|
64
|
+
cacheable: true
|
|
64
65
|
}, () => this._getReleases(config));
|
|
65
66
|
}
|
|
66
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["rustVersioning.id"],"sources":["../../../../lib/modules/datasource/rust-version/index.ts"],"sourcesContent":["import { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { asTimestamp } from '../../../util/timestamp.ts';\nimport * as rustVersioning from '../../versioning/rust-release-channel/index.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, ReleaseResult } from '../types.ts';\nimport { parseManifestUrl } from './parse.ts';\nimport type { ParsedManifestUrl } from './types.ts';\n\nexport class RustVersionDatasource extends Datasource {\n static readonly id = 'rust-version';\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = ['https://static.rust-lang.org'];\n\n override readonly defaultVersioning = rustVersioning.id;\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is parsed from the release manifest URL.';\n\n override readonly sourceUrlSupport = 'package';\n\n override readonly caching = true;\n\n constructor() {\n super(RustVersionDatasource.id);\n }\n\n private async getManifests(url: URL): Promise<ParsedManifestUrl[]> {\n const response = await this.http.getText(url);\n const lines = response.body.split('\\n');\n\n const parsedResults = [];\n for (const line of lines) {\n // skip trailing empty element from .split('\\n') upstream\n if (!line.trim()) {\n continue;\n }\n const parsed = parseManifestUrl(line);\n if (parsed) {\n parsedResults.push(parsed);\n } else {\n logger.warn({ line }, 'Failed to parse manifest URL');\n }\n }\n\n return parsedResults;\n }\n\n async _getReleases({\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n const url = new URL('manifests.txt', registryUrl);\n\n let parsedResults: ParsedManifestUrl[];\n try {\n parsedResults = await this.getManifests(url);\n } catch (err) {\n this.handleGenericErrors(err);\n }\n\n // Filter out dated stable and beta channel releases\n // (not supported by the `rust-release-channel` versioning)\n const filteredResults = parsedResults.filter(\n (result) => result.version !== 'stable' && result.version !== 'beta',\n );\n\n // Transform to version strings and deduplicate\n const versionMap = new Map<string, string>();\n for (const parsed of filteredResults) {\n const version =\n parsed.version === 'nightly'\n ? `nightly-${parsed.date}`\n : parsed.version;\n\n // Keep latest date for each version\n versionMap.set(version, parsed.date);\n }\n\n const releaseResult: ReleaseResult = {\n releases: [],\n homepage: 'https://rust-lang.org/',\n sourceUrl: 'https://github.com/rust-lang/rust',\n changelogUrl: 'https://github.com/rust-lang/rust/blob/main/RELEASES.md',\n };\n\n for (const [version, date] of versionMap.entries()) {\n const releaseTimestamp = asTimestamp(date);\n releaseResult.releases.push({ version, releaseTimestamp });\n }\n\n return releaseResult;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${RustVersionDatasource.id}`,\n key: config.registryUrl!,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;AASA,IAAa,wBAAb,MAAa,8BAA8B,WAAW;CACpD,OAAgB,KAAK;CAErB,wBAA0C;CAE1C,sBAAwC,CAAC,8BAA8B;CAEvE,oBAAsCA;CAEtC,0BAA4C;CAC5C,uBACE;CAEF,mBAAqC;CAErC,UAA4B;CAE5B,cAAc;EACZ,MAAM,sBAAsB,EAAE;CAChC;CAEA,MAAc,aAAa,KAAwC;EAEjE,MAAM,SAAQ,MADS,KAAK,KAAK,QAAQ,GAAG,EAAA,CACrB,KAAK,MAAM,IAAI;EAEtC,MAAM,gBAAgB,CAAC;EACvB,KAAK,MAAM,QAAQ,OAAO;GAExB,IAAI,CAAC,KAAK,KAAK,GACb;GAEF,MAAM,SAAS,iBAAiB,IAAI;GACpC,IAAI,QACF,cAAc,KAAK,MAAM;QAEzB,OAAO,KAAK,EAAE,KAAK,GAAG,8BAA8B;EAExD;EAEA,OAAO;CACT;CAEA,MAAM,aAAa,EACjB,eACmD;EACnD,MAAM,MAAM,IAAI,IAAI,iBAAiB,WAAW;EAEhD,IAAI;EACJ,IAAI;GACF,gBAAgB,MAAM,KAAK,aAAa,GAAG;EAC7C,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;EAIA,MAAM,kBAAkB,cAAc,QACnC,WAAW,OAAO,YAAY,YAAY,OAAO,YAAY,MAChE;EAGA,MAAM,6BAAa,IAAI,IAAoB;EAC3C,KAAK,MAAM,UAAU,iBAAiB;GACpC,MAAM,UACJ,OAAO,YAAY,YACf,WAAW,OAAO,SAClB,OAAO;GAGb,WAAW,IAAI,SAAS,OAAO,IAAI;EACrC;EAEA,MAAM,gBAA+B;GACnC,UAAU,CAAC;GACX,UAAU;GACV,WAAW;GACX,cAAc;EAChB;EAEA,KAAK,MAAM,CAAC,SAAS,SAAS,WAAW,QAAQ,GAAG;GAClD,MAAM,mBAAmB,YAAY,IAAI;GACzC,cAAc,SAAS,KAAK;IAAE;IAAS;GAAiB,CAAC;EAC3D;EAEA,OAAO;CACT;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,sBAAsB;GAC/C,KAAK,OAAO;
|
|
1
|
+
{"version":3,"file":"index.js","names":["rustVersioning.id"],"sources":["../../../../lib/modules/datasource/rust-version/index.ts"],"sourcesContent":["import { logger } from '../../../logger/index.ts';\nimport { withCache } from '../../../util/cache/package/with-cache.ts';\nimport { asTimestamp } from '../../../util/timestamp.ts';\nimport * as rustVersioning from '../../versioning/rust-release-channel/index.ts';\nimport { Datasource } from '../datasource.ts';\nimport type { GetReleasesConfig, ReleaseResult } from '../types.ts';\nimport { parseManifestUrl } from './parse.ts';\nimport type { ParsedManifestUrl } from './types.ts';\n\nexport class RustVersionDatasource extends Datasource {\n static readonly id = 'rust-version';\n\n override readonly customRegistrySupport = false;\n\n override readonly defaultRegistryUrls = ['https://static.rust-lang.org'];\n\n override readonly defaultVersioning = rustVersioning.id;\n\n override readonly releaseTimestampSupport = true;\n override readonly releaseTimestampNote =\n 'The release timestamp is parsed from the release manifest URL.';\n\n override readonly sourceUrlSupport = 'package';\n\n override readonly caching = true;\n\n constructor() {\n super(RustVersionDatasource.id);\n }\n\n private async getManifests(url: URL): Promise<ParsedManifestUrl[]> {\n const response = await this.http.getText(url);\n const lines = response.body.split('\\n');\n\n const parsedResults = [];\n for (const line of lines) {\n // skip trailing empty element from .split('\\n') upstream\n if (!line.trim()) {\n continue;\n }\n const parsed = parseManifestUrl(line);\n if (parsed) {\n parsedResults.push(parsed);\n } else {\n logger.warn({ line }, 'Failed to parse manifest URL');\n }\n }\n\n return parsedResults;\n }\n\n async _getReleases({\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n const url = new URL('manifests.txt', registryUrl);\n\n let parsedResults: ParsedManifestUrl[];\n try {\n parsedResults = await this.getManifests(url);\n } catch (err) {\n this.handleGenericErrors(err);\n }\n\n // Filter out dated stable and beta channel releases\n // (not supported by the `rust-release-channel` versioning)\n const filteredResults = parsedResults.filter(\n (result) => result.version !== 'stable' && result.version !== 'beta',\n );\n\n // Transform to version strings and deduplicate\n const versionMap = new Map<string, string>();\n for (const parsed of filteredResults) {\n const version =\n parsed.version === 'nightly'\n ? `nightly-${parsed.date}`\n : parsed.version;\n\n // Keep latest date for each version\n versionMap.set(version, parsed.date);\n }\n\n const releaseResult: ReleaseResult = {\n releases: [],\n homepage: 'https://rust-lang.org/',\n sourceUrl: 'https://github.com/rust-lang/rust',\n changelogUrl: 'https://github.com/rust-lang/rust/blob/main/RELEASES.md',\n };\n\n for (const [version, date] of versionMap.entries()) {\n const releaseTimestamp = asTimestamp(date);\n releaseResult.releases.push({ version, releaseTimestamp });\n }\n\n return releaseResult;\n }\n\n getReleases(config: GetReleasesConfig): Promise<ReleaseResult | null> {\n return withCache(\n {\n namespace: `datasource-${RustVersionDatasource.id}`,\n key: config.registryUrl!,\n cacheable: true,\n },\n () => this._getReleases(config),\n );\n }\n}\n"],"mappings":";;;;;;;AASA,IAAa,wBAAb,MAAa,8BAA8B,WAAW;CACpD,OAAgB,KAAK;CAErB,wBAA0C;CAE1C,sBAAwC,CAAC,8BAA8B;CAEvE,oBAAsCA;CAEtC,0BAA4C;CAC5C,uBACE;CAEF,mBAAqC;CAErC,UAA4B;CAE5B,cAAc;EACZ,MAAM,sBAAsB,EAAE;CAChC;CAEA,MAAc,aAAa,KAAwC;EAEjE,MAAM,SAAQ,MADS,KAAK,KAAK,QAAQ,GAAG,EAAA,CACrB,KAAK,MAAM,IAAI;EAEtC,MAAM,gBAAgB,CAAC;EACvB,KAAK,MAAM,QAAQ,OAAO;GAExB,IAAI,CAAC,KAAK,KAAK,GACb;GAEF,MAAM,SAAS,iBAAiB,IAAI;GACpC,IAAI,QACF,cAAc,KAAK,MAAM;QAEzB,OAAO,KAAK,EAAE,KAAK,GAAG,8BAA8B;EAExD;EAEA,OAAO;CACT;CAEA,MAAM,aAAa,EACjB,eACmD;EACnD,MAAM,MAAM,IAAI,IAAI,iBAAiB,WAAW;EAEhD,IAAI;EACJ,IAAI;GACF,gBAAgB,MAAM,KAAK,aAAa,GAAG;EAC7C,SAAS,KAAK;GACZ,KAAK,oBAAoB,GAAG;EAC9B;EAIA,MAAM,kBAAkB,cAAc,QACnC,WAAW,OAAO,YAAY,YAAY,OAAO,YAAY,MAChE;EAGA,MAAM,6BAAa,IAAI,IAAoB;EAC3C,KAAK,MAAM,UAAU,iBAAiB;GACpC,MAAM,UACJ,OAAO,YAAY,YACf,WAAW,OAAO,SAClB,OAAO;GAGb,WAAW,IAAI,SAAS,OAAO,IAAI;EACrC;EAEA,MAAM,gBAA+B;GACnC,UAAU,CAAC;GACX,UAAU;GACV,WAAW;GACX,cAAc;EAChB;EAEA,KAAK,MAAM,CAAC,SAAS,SAAS,WAAW,QAAQ,GAAG;GAClD,MAAM,mBAAmB,YAAY,IAAI;GACzC,cAAc,SAAS,KAAK;IAAE;IAAS;GAAiB,CAAC;EAC3D;EAEA,OAAO;CACT;CAEA,YAAY,QAA0D;EACpE,OAAO,UACL;GACE,WAAW,cAAc,sBAAsB;GAC/C,KAAK,OAAO;GACZ,WAAW;EACb,SACM,KAAK,aAAa,MAAM,CAChC;CACF;AACF"}
|
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.96.
|
|
4
|
+
"version": "44.96.3",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"renovate": "dist/renovate.js",
|
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
"@renovatebot/good-enough-parser": "2.0.1",
|
|
123
123
|
"@renovatebot/osv-offline": "3.0.10",
|
|
124
124
|
"@renovatebot/pep440": "5.0.1",
|
|
125
|
-
"@renovatebot/pgp": "1.4.
|
|
125
|
+
"@renovatebot/pgp": "1.4.3",
|
|
126
126
|
"@renovatebot/ruby-semver": "5.0.0",
|
|
127
127
|
"@sindresorhus/is": "8.1.0",
|
|
128
128
|
"@yarnpkg/core": "4.9.1",
|
|
@@ -216,7 +216,7 @@
|
|
|
216
216
|
"re2": "1.26.1"
|
|
217
217
|
},
|
|
218
218
|
"devDependencies": {
|
|
219
|
-
"@biomejs/biome": "2.5.
|
|
219
|
+
"@biomejs/biome": "2.5.13",
|
|
220
220
|
"@commander-js/extra-typings": "15.0.0",
|
|
221
221
|
"@containerbase/istanbul-reports-html": "2.0.18",
|
|
222
222
|
"@containerbase/semantic-release-pnpm": "1.4.3",
|
|
@@ -272,10 +272,10 @@
|
|
|
272
272
|
"graphql": "17.0.2",
|
|
273
273
|
"husky": "9.1.7",
|
|
274
274
|
"jest-extended": "7.0.0",
|
|
275
|
-
"lint-staged": "17.5.
|
|
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.72.
|
|
278
|
+
"memfs": "4.72.2",
|
|
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.96.
|
|
3
|
+
"title": "JSON schema for Renovate 44.96.3 config files (https://renovatebot.com/)",
|
|
4
4
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
5
|
-
"x-renovate-version": "44.96.
|
|
5
|
+
"x-renovate-version": "44.96.3",
|
|
6
6
|
"allowComments": true,
|
|
7
7
|
"type": "object",
|
|
8
8
|
"definitions": {
|