renovate 42.58.4 → 42.59.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -145,13 +145,13 @@ exports.presets = {
145
145
  tsconfigNodeVersions: {
146
146
  customManagers: [
147
147
  {
148
- autoReplaceStringTemplate: '"extends": "@tsconfig/node{{{major}}}/tsconfig.json"',
148
+ autoReplaceStringTemplate: '"@tsconfig/node{{{major}}}/tsconfig.json"',
149
149
  currentValueTemplate: '{{{major}}}',
150
150
  customType: 'regex',
151
151
  datasourceTemplate: 'npm',
152
152
  managerFilePatterns: ['**/tsconfig.json'],
153
153
  matchStrings: [
154
- '"extends":\\s*"(?<depName>@tsconfig/node(?<major>\\d+))/tsconfig\\.json"',
154
+ '"(?<depName>@tsconfig/node(?<major>\\d+))/tsconfig\\.json"',
155
155
  ],
156
156
  },
157
157
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"custom-managers.js","sourceRoot":"","sources":["../../../../lib/config/presets/internal/custom-managers.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Preset } from '../types';\n\n/* eslint sort-keys: [\"error\", \"asc\", {caseSensitive: false, natural: true}] */\n\nexport const presets: Record<string, Preset> = {\n azurePipelinesVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/).azuredevops/.+\\\\.ya?ml$/',\n '/azure.*pipelines?.*\\\\.ya?ml$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description:\n 'Update `_VERSION` environment variables in Azure Pipelines files.',\n },\n biomeVersions: {\n customManagers: [\n {\n customType: 'jsonata',\n datasourceTemplate: 'npm',\n depNameTemplate: '@biomejs/biome',\n fileFormat: 'json',\n managerFilePatterns: ['/(^|/)biome.jsonc?$/'],\n matchStrings: ['{\"currentValue\": $split($.\"$schema\",(\"/\"))[-2]}'],\n },\n ],\n description:\n 'Update `$schema` version in `biome.json` configuration files.',\n },\n bitbucketPipelinesVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: ['/(^|/)bitbucket-pipelines\\\\.ya?ml$/'],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+.*\\\\s+[A-Za-z0-9_]+?_VERSION[ =:]\\\\s?[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description: 'Update `_VERSION` variables in Bitbucket Pipelines',\n },\n dockerfileVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/|\\\\.)([Dd]ocker|[Cc]ontainer)file$/',\n '/(^|/)([Dd]ocker|[Cc]ontainer)file[^/]*$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s(?:ENV|ARG)\\\\s+[A-Za-z0-9_]+?_VERSION[ =][\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description: 'Update `_VERSION` variables in Dockerfiles.',\n },\n githubActionsVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/)(workflow-templates|\\\\.(?:github|gitea|forgejo)/(?:workflows|actions))/.+\\\\.ya?ml$/',\n '/(^|/)action\\\\.ya?ml$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description:\n 'Update `_VERSION` environment variables in GitHub Action files.',\n },\n gitlabPipelineVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: ['/\\\\.gitlab-ci\\\\.ya?ml$/'],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description:\n 'Update `_VERSION` environment variables in GitLab pipeline file.',\n },\n helmChartYamlAppVersions: {\n customManagers: [\n {\n customType: 'regex',\n datasourceTemplate: 'docker',\n managerFilePatterns: ['/(^|/)Chart\\\\.yaml$/'],\n matchStrings: [\n '#\\\\s*renovate: image=(?<depName>.*?)\\\\s+appVersion:\\\\s*[\"\\']?(?<currentValue>[\\\\w+\\\\.\\\\-]*)',\n ],\n },\n ],\n description: 'Update `appVersion` value in Helm chart `Chart.yaml`.',\n },\n makefileVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/)Makefile$/',\n '/(^|/)makefile$/',\n '/(^|/)GNUMakefile$/',\n '/\\\\.mk$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:*\\\\??=\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description: 'Update `_VERSION` variables in Makefiles.',\n },\n mavenPropertyVersions: {\n customManagers: [\n {\n customType: 'regex',\n datasourceTemplate:\n '{{#if datasource}}{{{datasource}}}{{else}}maven{{/if}}',\n managerFilePatterns: ['/(^|/)pom\\\\.xml$/'],\n matchStrings: [\n '<!--\\\\s?renovate:( datasource=(?<datasource>[a-zA-Z0-9-._]+?))? depName=(?<depName>[^\\\\s]+?)(?: packageName=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?\\\\s+-->\\\\s+<.+\\\\.version>(?<currentValue>.+)<\\\\/.+\\\\.version>',\n ],\n versioningTemplate: '{{#if versioning}}{{{versioning}}}{{/if}}',\n },\n ],\n description: 'Update `*.version` properties in `pom.xml` files.',\n },\n tfvarsVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: ['/.+\\\\.tfvars$/'],\n matchStrings: [\n '#\\\\s*renovate: datasource=(?<datasource>.*?) depName=(?<depName>.*?)( versioning=(?<versioning>.*?))?(?: extractVersion=(?<extractVersion>.*?))?\\\\s.*?_version\\\\s*=\\\\s*\"(?<currentValue>.*)\"',\n ],\n versioningTemplate: '{{#if versioning}}{{{versioning}}}{{/if}}',\n },\n ],\n description: 'Update `*_version` variables in `.tfvars` files.',\n },\n tsconfigNodeVersions: {\n customManagers: [\n {\n autoReplaceStringTemplate:\n '\"extends\": \"@tsconfig/node{{{major}}}/tsconfig.json\"',\n currentValueTemplate: '{{{major}}}',\n customType: 'regex',\n datasourceTemplate: 'npm',\n managerFilePatterns: ['**/tsconfig.json'],\n matchStrings: [\n '\"extends\":\\\\s*\"(?<depName>@tsconfig/node(?<major>\\\\d+))/tsconfig\\\\.json\"',\n ],\n },\n ],\n description: 'Update `@tsconfig/node` extends in `tsconfig.json` files.',\n },\n};\n"]}
1
+ {"version":3,"file":"custom-managers.js","sourceRoot":"","sources":["../../../../lib/config/presets/internal/custom-managers.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Preset } from '../types';\n\n/* eslint sort-keys: [\"error\", \"asc\", {caseSensitive: false, natural: true}] */\n\nexport const presets: Record<string, Preset> = {\n azurePipelinesVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/).azuredevops/.+\\\\.ya?ml$/',\n '/azure.*pipelines?.*\\\\.ya?ml$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description:\n 'Update `_VERSION` environment variables in Azure Pipelines files.',\n },\n biomeVersions: {\n customManagers: [\n {\n customType: 'jsonata',\n datasourceTemplate: 'npm',\n depNameTemplate: '@biomejs/biome',\n fileFormat: 'json',\n managerFilePatterns: ['/(^|/)biome.jsonc?$/'],\n matchStrings: ['{\"currentValue\": $split($.\"$schema\",(\"/\"))[-2]}'],\n },\n ],\n description:\n 'Update `$schema` version in `biome.json` configuration files.',\n },\n bitbucketPipelinesVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: ['/(^|/)bitbucket-pipelines\\\\.ya?ml$/'],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+.*\\\\s+[A-Za-z0-9_]+?_VERSION[ =:]\\\\s?[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description: 'Update `_VERSION` variables in Bitbucket Pipelines',\n },\n dockerfileVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/|\\\\.)([Dd]ocker|[Cc]ontainer)file$/',\n '/(^|/)([Dd]ocker|[Cc]ontainer)file[^/]*$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s(?:ENV|ARG)\\\\s+[A-Za-z0-9_]+?_VERSION[ =][\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description: 'Update `_VERSION` variables in Dockerfiles.',\n },\n githubActionsVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/)(workflow-templates|\\\\.(?:github|gitea|forgejo)/(?:workflows|actions))/.+\\\\.ya?ml$/',\n '/(^|/)action\\\\.ya?ml$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:lookupName|packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description:\n 'Update `_VERSION` environment variables in GitHub Action files.',\n },\n gitlabPipelineVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: ['/\\\\.gitlab-ci\\\\.ya?ml$/'],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description:\n 'Update `_VERSION` environment variables in GitLab pipeline file.',\n },\n helmChartYamlAppVersions: {\n customManagers: [\n {\n customType: 'regex',\n datasourceTemplate: 'docker',\n managerFilePatterns: ['/(^|/)Chart\\\\.yaml$/'],\n matchStrings: [\n '#\\\\s*renovate: image=(?<depName>.*?)\\\\s+appVersion:\\\\s*[\"\\']?(?<currentValue>[\\\\w+\\\\.\\\\-]*)',\n ],\n },\n ],\n description: 'Update `appVersion` value in Helm chart `Chart.yaml`.',\n },\n makefileVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: [\n '/(^|/)Makefile$/',\n '/(^|/)makefile$/',\n '/(^|/)GNUMakefile$/',\n '/\\\\.mk$/',\n ],\n matchStrings: [\n '# renovate: datasource=(?<datasource>[a-zA-Z0-9-._]+?) depName=(?<depName>[^\\\\s]+?)(?: (?:packageName)=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?(?: registryUrl=(?<registryUrl>[^\\\\s]+?))?\\\\s+[A-Za-z0-9_]+?_VERSION\\\\s*:*\\\\??=\\\\s*[\"\\']?(?<currentValue>.+?)[\"\\']?\\\\s',\n ],\n },\n ],\n description: 'Update `_VERSION` variables in Makefiles.',\n },\n mavenPropertyVersions: {\n customManagers: [\n {\n customType: 'regex',\n datasourceTemplate:\n '{{#if datasource}}{{{datasource}}}{{else}}maven{{/if}}',\n managerFilePatterns: ['/(^|/)pom\\\\.xml$/'],\n matchStrings: [\n '<!--\\\\s?renovate:( datasource=(?<datasource>[a-zA-Z0-9-._]+?))? depName=(?<depName>[^\\\\s]+?)(?: packageName=(?<packageName>[^\\\\s]+?))?(?: versioning=(?<versioning>[^\\\\s]+?))?(?: extractVersion=(?<extractVersion>[^\\\\s]+?))?\\\\s+-->\\\\s+<.+\\\\.version>(?<currentValue>.+)<\\\\/.+\\\\.version>',\n ],\n versioningTemplate: '{{#if versioning}}{{{versioning}}}{{/if}}',\n },\n ],\n description: 'Update `*.version` properties in `pom.xml` files.',\n },\n tfvarsVersions: {\n customManagers: [\n {\n customType: 'regex',\n managerFilePatterns: ['/.+\\\\.tfvars$/'],\n matchStrings: [\n '#\\\\s*renovate: datasource=(?<datasource>.*?) depName=(?<depName>.*?)( versioning=(?<versioning>.*?))?(?: extractVersion=(?<extractVersion>.*?))?\\\\s.*?_version\\\\s*=\\\\s*\"(?<currentValue>.*)\"',\n ],\n versioningTemplate: '{{#if versioning}}{{{versioning}}}{{/if}}',\n },\n ],\n description: 'Update `*_version` variables in `.tfvars` files.',\n },\n tsconfigNodeVersions: {\n customManagers: [\n {\n autoReplaceStringTemplate: '\"@tsconfig/node{{{major}}}/tsconfig.json\"',\n currentValueTemplate: '{{{major}}}',\n customType: 'regex',\n datasourceTemplate: 'npm',\n managerFilePatterns: ['**/tsconfig.json'],\n matchStrings: [\n '\"(?<depName>@tsconfig/node(?<major>\\\\d+))/tsconfig\\\\.json\"',\n ],\n },\n ],\n description: 'Update `@tsconfig/node` extends in `tsconfig.json` files.',\n },\n};\n"]}
@@ -94,6 +94,7 @@ class GalaxyCollectionDatasource extends datasource_1.Datasource {
94
94
  return {
95
95
  ...rawDetailedVersion,
96
96
  isDeprecated: basicRelease.isDeprecated,
97
+ releaseTimestamp: basicRelease.releaseTimestamp,
97
98
  };
98
99
  }
99
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/datasource/galaxy-collection/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { cache } from '../../../util/cache/package/decorator';\nimport { HttpError } from '../../../util/http';\nimport * as p from '../../../util/promises';\nimport { regEx } from '../../../util/regex';\nimport { ensureTrailingSlash, joinUrlParts } from '../../../util/url';\nimport * as pep440Versioning from '../../versioning/pep440';\nimport { Datasource } from '../datasource';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types';\nimport { GalaxyV3, GalaxyV3DetailedVersion, GalaxyV3Versions } from './schema';\n\nconst ansibleProtocolRegex = regEx(/^\\S+\\/api\\/ansible\\/.+/);\nconst repositoryRegex = regEx(\n /^\\S+\\/api\\/galaxy\\/content\\/(?<repository>[^/]+)/,\n);\n\nexport class GalaxyCollectionDatasource extends Datasource {\n static readonly id = 'galaxy-collection';\n\n constructor() {\n super(GalaxyCollectionDatasource.id);\n }\n\n override readonly customRegistrySupport = true;\n\n override readonly registryStrategy = 'hunt';\n\n override readonly defaultRegistryUrls = ['https://galaxy.ansible.com/api/'];\n\n override readonly defaultVersioning = pep440Versioning.id;\n\n override readonly releaseTimestampSupport = true;\n override releaseTimestampNote =\n 'The release timestamp is determined from the `created_at` field in the results.';\n // sourceUrl is returned in each release as well as the ReleaseResult\n // the one present in release result is the sourceUrl of the latest release\n override readonly sourceUrlSupport = 'release';\n override readonly sourceUrlNote =\n 'The `sourceUrl` is determined from the `repository` field in the results.';\n\n @cache({\n namespace: `datasource-${GalaxyCollectionDatasource.id}`,\n key: ({ packageName }: GetReleasesConfig) => `getReleases:${packageName}`,\n })\n async getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n const baseUrl = this.constructBaseUrl(registryUrl!, packageName);\n\n const { val: baseProject, err: baseErr } = await this.http\n .getJsonSafe(baseUrl, GalaxyV3)\n .onError((err) => {\n if (!(err instanceof HttpError && err.response?.statusCode === 404)) {\n logger.warn(\n { url: baseUrl, datasource: this.id, packageName, err },\n 'Error fetching from url',\n );\n }\n })\n .unwrap();\n if (baseErr) {\n this.handleGenericErrors(baseErr);\n }\n\n const versionsUrl = ensureTrailingSlash(joinUrlParts(baseUrl, 'versions'));\n\n const { val: rawReleases, err: versionsErr } = await this.http\n .getJsonSafe(versionsUrl, GalaxyV3Versions)\n .onError((err) => {\n logger.warn(\n { url: versionsUrl, datasource: this.id, packageName, err },\n 'Error fetching from url',\n );\n })\n .unwrap();\n if (versionsErr) {\n this.handleGenericErrors(versionsErr);\n }\n\n const releases = rawReleases.map((value) => {\n return {\n ...value,\n isDeprecated: baseProject.deprecated,\n };\n });\n\n // asynchronously get release details\n const enrichedReleases = await p.map(\n releases,\n (release) => this.getVersionDetails(packageName, versionsUrl, release),\n { concurrency: 4 },\n );\n\n // filter failed versions\n const filteredReleases = enrichedReleases.filter(isTruthy);\n // extract base information which are only provided on the release from the newest release\n\n // Find the source URL of the highest version release\n const sourceUrlOfHighestRelease = enrichedReleases.find(\n (release) => baseProject.highest_version.version === release.version,\n )?.sourceUrl;\n\n return {\n releases: filteredReleases,\n sourceUrl: sourceUrlOfHighestRelease,\n };\n }\n\n constructBaseUrl(registryUrl: string, packageName: string): string {\n const [namespace, projectName] = packageName.split('.');\n if (ansibleProtocolRegex.test(registryUrl)) {\n return ensureTrailingSlash(\n joinUrlParts(registryUrl, 'api/v3/collections', namespace, projectName),\n );\n } else {\n const repository =\n repositoryRegex.exec(registryUrl)?.groups?.repository ?? 'published';\n return ensureTrailingSlash(\n joinUrlParts(\n registryUrl,\n 'v3/plugin/ansible/content',\n repository,\n 'collections/index',\n namespace,\n projectName,\n ),\n );\n }\n }\n\n @cache({\n namespace: `datasource-${GalaxyCollectionDatasource.id}`,\n key: (_packageName: string, versionsUrl: string, basicRelease: Release) =>\n `getVersionDetails:${versionsUrl}:${basicRelease.version}`,\n ttlMinutes: 10080, // 1 week\n })\n async getVersionDetails(\n packageName: string,\n versionsUrl: string,\n basicRelease: Release,\n ): Promise<Release> {\n const detailedVersionUrl = ensureTrailingSlash(\n joinUrlParts(versionsUrl, basicRelease.version),\n );\n const { val: rawDetailedVersion, err: versionsErr } = await this.http\n .getJsonSafe(detailedVersionUrl, GalaxyV3DetailedVersion)\n .onError((err) => {\n logger.warn(\n { url: versionsUrl, datasource: this.id, packageName, err },\n 'Error fetching from url',\n );\n })\n .unwrap();\n if (versionsErr) {\n this.handleGenericErrors(versionsErr);\n }\n\n return {\n ...rawDetailedVersion,\n isDeprecated: basicRelease.isDeprecated,\n };\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/datasource/galaxy-collection/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { cache } from '../../../util/cache/package/decorator';\nimport { HttpError } from '../../../util/http';\nimport * as p from '../../../util/promises';\nimport { regEx } from '../../../util/regex';\nimport { ensureTrailingSlash, joinUrlParts } from '../../../util/url';\nimport * as pep440Versioning from '../../versioning/pep440';\nimport { Datasource } from '../datasource';\nimport type { GetReleasesConfig, Release, ReleaseResult } from '../types';\nimport { GalaxyV3, GalaxyV3DetailedVersion, GalaxyV3Versions } from './schema';\n\nconst ansibleProtocolRegex = regEx(/^\\S+\\/api\\/ansible\\/.+/);\nconst repositoryRegex = regEx(\n /^\\S+\\/api\\/galaxy\\/content\\/(?<repository>[^/]+)/,\n);\n\nexport class GalaxyCollectionDatasource extends Datasource {\n static readonly id = 'galaxy-collection';\n\n constructor() {\n super(GalaxyCollectionDatasource.id);\n }\n\n override readonly customRegistrySupport = true;\n\n override readonly registryStrategy = 'hunt';\n\n override readonly defaultRegistryUrls = ['https://galaxy.ansible.com/api/'];\n\n override readonly defaultVersioning = pep440Versioning.id;\n\n override readonly releaseTimestampSupport = true;\n override releaseTimestampNote =\n 'The release timestamp is determined from the `created_at` field in the results.';\n // sourceUrl is returned in each release as well as the ReleaseResult\n // the one present in release result is the sourceUrl of the latest release\n override readonly sourceUrlSupport = 'release';\n override readonly sourceUrlNote =\n 'The `sourceUrl` is determined from the `repository` field in the results.';\n\n @cache({\n namespace: `datasource-${GalaxyCollectionDatasource.id}`,\n key: ({ packageName }: GetReleasesConfig) => `getReleases:${packageName}`,\n })\n async getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n const baseUrl = this.constructBaseUrl(registryUrl!, packageName);\n\n const { val: baseProject, err: baseErr } = await this.http\n .getJsonSafe(baseUrl, GalaxyV3)\n .onError((err) => {\n if (!(err instanceof HttpError && err.response?.statusCode === 404)) {\n logger.warn(\n { url: baseUrl, datasource: this.id, packageName, err },\n 'Error fetching from url',\n );\n }\n })\n .unwrap();\n if (baseErr) {\n this.handleGenericErrors(baseErr);\n }\n\n const versionsUrl = ensureTrailingSlash(joinUrlParts(baseUrl, 'versions'));\n\n const { val: rawReleases, err: versionsErr } = await this.http\n .getJsonSafe(versionsUrl, GalaxyV3Versions)\n .onError((err) => {\n logger.warn(\n { url: versionsUrl, datasource: this.id, packageName, err },\n 'Error fetching from url',\n );\n })\n .unwrap();\n if (versionsErr) {\n this.handleGenericErrors(versionsErr);\n }\n\n const releases = rawReleases.map((value) => {\n return {\n ...value,\n isDeprecated: baseProject.deprecated,\n };\n });\n\n // asynchronously get release details\n const enrichedReleases = await p.map(\n releases,\n (release) => this.getVersionDetails(packageName, versionsUrl, release),\n { concurrency: 4 },\n );\n\n // filter failed versions\n const filteredReleases = enrichedReleases.filter(isTruthy);\n // extract base information which are only provided on the release from the newest release\n\n // Find the source URL of the highest version release\n const sourceUrlOfHighestRelease = enrichedReleases.find(\n (release) => baseProject.highest_version.version === release.version,\n )?.sourceUrl;\n\n return {\n releases: filteredReleases,\n sourceUrl: sourceUrlOfHighestRelease,\n };\n }\n\n constructBaseUrl(registryUrl: string, packageName: string): string {\n const [namespace, projectName] = packageName.split('.');\n if (ansibleProtocolRegex.test(registryUrl)) {\n return ensureTrailingSlash(\n joinUrlParts(registryUrl, 'api/v3/collections', namespace, projectName),\n );\n } else {\n const repository =\n repositoryRegex.exec(registryUrl)?.groups?.repository ?? 'published';\n return ensureTrailingSlash(\n joinUrlParts(\n registryUrl,\n 'v3/plugin/ansible/content',\n repository,\n 'collections/index',\n namespace,\n projectName,\n ),\n );\n }\n }\n\n @cache({\n namespace: `datasource-${GalaxyCollectionDatasource.id}`,\n key: (_packageName: string, versionsUrl: string, basicRelease: Release) =>\n `getVersionDetails:${versionsUrl}:${basicRelease.version}`,\n ttlMinutes: 10080, // 1 week\n })\n async getVersionDetails(\n packageName: string,\n versionsUrl: string,\n basicRelease: Release,\n ): Promise<Release> {\n const detailedVersionUrl = ensureTrailingSlash(\n joinUrlParts(versionsUrl, basicRelease.version),\n );\n const { val: rawDetailedVersion, err: versionsErr } = await this.http\n .getJsonSafe(detailedVersionUrl, GalaxyV3DetailedVersion)\n .onError((err) => {\n logger.warn(\n { url: versionsUrl, datasource: this.id, packageName, err },\n 'Error fetching from url',\n );\n })\n .unwrap();\n if (versionsErr) {\n this.handleGenericErrors(versionsErr);\n }\n\n return {\n ...rawDetailedVersion,\n isDeprecated: basicRelease.isDeprecated,\n releaseTimestamp: basicRelease.releaseTimestamp,\n };\n }\n}\n"]}
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": "42.58.4",
4
+ "version": "42.59.1",
5
5
  "type": "commonjs",
6
6
  "bin": {
7
7
  "renovate": "dist/renovate.js",
@@ -1,7 +1,7 @@
1
1
  {
2
- "title": "JSON schema for Renovate 42.58.4 config files (https://renovatebot.com/)",
2
+ "title": "JSON schema for Renovate 42.59.1 config files (https://renovatebot.com/)",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
- "x-renovate-version": "42.58.4",
4
+ "x-renovate-version": "42.59.1",
5
5
  "allowComments": true,
6
6
  "type": "object",
7
7
  "properties": {