renovate 41.169.4 → 41.170.0
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.
|
@@ -34,6 +34,7 @@ exports.GITHUB_API_USING_HOST_TYPES = [
|
|
|
34
34
|
'hermit',
|
|
35
35
|
'github-changelog',
|
|
36
36
|
'conan',
|
|
37
|
+
// DEPRECATED: do not add additional datasource-specific entries here, if they use `api.github.com` to look up new versions
|
|
37
38
|
];
|
|
38
39
|
exports.GITLAB_API_USING_HOST_TYPES = [
|
|
39
40
|
'gitlab',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platforms.js","sourceRoot":"","sources":["../../lib/constants/platforms.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG;IACjC,OAAO;IACP,WAAW;IACX,kBAAkB;IAClB,YAAY;IACZ,SAAS;IACT,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,OAAO;CACC,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO;IACP,iBAAiB;IACjB,gBAAgB;IAChB,YAAY;CACb,CAAC;AAEW,QAAA,4BAA4B,GAAG;IAC1C,SAAS;IACT,mBAAmB;IACnB,kBAAkB;IAClB,cAAc;CACf,CAAC;AAEW,QAAA,2BAA2B,GAAG;IACzC,QAAQ;IACR,iBAAiB;IACjB,4BAA4B;IAC5B,aAAa;IACb,KAAK;IACL,QAAQ;IACR,kBAAkB;IAClB,OAAO;
|
|
1
|
+
{"version":3,"file":"platforms.js","sourceRoot":"","sources":["../../lib/constants/platforms.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG;IACjC,OAAO;IACP,WAAW;IACX,kBAAkB;IAClB,YAAY;IACZ,SAAS;IACT,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,OAAO;CACC,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO;IACP,iBAAiB;IACjB,gBAAgB;IAChB,YAAY;CACb,CAAC;AAEW,QAAA,4BAA4B,GAAG;IAC1C,SAAS;IACT,mBAAmB;IACnB,kBAAkB;IAClB,cAAc;CACf,CAAC;AAEW,QAAA,2BAA2B,GAAG;IACzC,QAAQ;IACR,iBAAiB;IACjB,4BAA4B;IAC5B,aAAa;IACb,KAAK;IACL,QAAQ;IACR,kBAAkB;IAClB,OAAO;IACP,2HAA2H;CAC5H,CAAC;AAEW,QAAA,2BAA2B,GAAG;IACzC,QAAQ;IACR,iBAAiB;IACjB,aAAa;IACb,iBAAiB;IACjB,kBAAkB;IAClB,MAAM;CACP,CAAC;AAEW,QAAA,8BAA8B,GAAG;IAC5C,WAAW;IACX,qBAAqB;IACrB,gBAAgB;CACjB,CAAC;AAEW,QAAA,qCAAqC,GAAG;IACnD,kBAAkB;IAClB,4BAA4B;IAC5B,uBAAuB;CACxB,CAAC","sourcesContent":["export const PLATFORM_HOST_TYPES = [\n 'azure',\n 'bitbucket',\n 'bitbucket-server',\n 'codecommit',\n 'forgejo',\n 'gerrit',\n 'gitea',\n 'github',\n 'gitlab',\n 'local',\n] as const;\n\nexport type PlatformId = (typeof PLATFORM_HOST_TYPES)[number];\n\nexport const GITEA_API_USING_HOST_TYPES = [\n 'gitea',\n 'gitea-changelog',\n 'gitea-releases',\n 'gitea-tags',\n];\n\nexport const FORGEJO_API_USING_HOST_TYPES = [\n 'forgejo',\n 'forgejo-changelog',\n 'forgejo-releases',\n 'forgejo-tags',\n];\n\nexport const GITHUB_API_USING_HOST_TYPES = [\n 'github',\n 'github-releases',\n 'github-release-attachments',\n 'github-tags',\n 'pod',\n 'hermit',\n 'github-changelog',\n 'conan',\n // DEPRECATED: do not add additional datasource-specific entries here, if they use `api.github.com` to look up new versions\n];\n\nexport const GITLAB_API_USING_HOST_TYPES = [\n 'gitlab',\n 'gitlab-releases',\n 'gitlab-tags',\n 'gitlab-packages',\n 'gitlab-changelog',\n 'pypi',\n];\n\nexport const BITBUCKET_API_USING_HOST_TYPES = [\n 'bitbucket',\n 'bitbucket-changelog',\n 'bitbucket-tags',\n];\n\nexport const BITBUCKET_SERVER_API_USING_HOST_TYPES = [\n 'bitbucket-server',\n 'bitbucket-server-changelog',\n 'bitbucket-server-tags',\n];\n"]}
|
|
@@ -33,6 +33,16 @@ function findMatchingRule(url, options) {
|
|
|
33
33
|
...res,
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
|
+
// in the case that an API URL is used for GitHub.com, fallback to `github` hostType, and use the `url`'s host to find a `matchHost: api.github.com` (or `matchHost: github.com`)
|
|
37
|
+
if (url.startsWith('https://api.github.com/')) {
|
|
38
|
+
res = {
|
|
39
|
+
...hostRules.find({
|
|
40
|
+
hostType: 'github',
|
|
41
|
+
url,
|
|
42
|
+
}),
|
|
43
|
+
...res,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
36
46
|
// Fallback to `gitlab` hostType
|
|
37
47
|
if (hostType &&
|
|
38
48
|
constants_1.GITLAB_API_USING_HOST_TYPES.includes(hostType) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-rules.js","sourceRoot":"","sources":["../../../lib/util/http/host-rules.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { GlobalConfig } from '../../config/global';\nimport {\n BITBUCKET_API_USING_HOST_TYPES,\n BITBUCKET_SERVER_API_USING_HOST_TYPES,\n GITEA_API_USING_HOST_TYPES,\n GITHUB_API_USING_HOST_TYPES,\n GITLAB_API_USING_HOST_TYPES,\n} from '../../constants';\nimport { logger } from '../../logger';\nimport { hasProxy } from '../../proxy';\nimport type { HostRule } from '../../types';\nimport * as hostRules from '../host-rules';\nimport { matchRegexOrGlobList } from '../string-match';\nimport { parseUrl } from '../url';\nimport type { InternalHttpOptions } from './http';\nimport { keepAliveAgents } from './keep-alive';\nimport type { GotOptions } from './types';\n\nexport type HostRulesGotOptions = Pick<\n GotOptions & InternalHttpOptions,\n | 'hostType'\n | 'url'\n | 'noAuth'\n | 'headers'\n | 'token'\n | 'username'\n | 'password'\n | 'context'\n | 'enabled'\n | 'abortOnError'\n | 'abortIgnoreStatusCodes'\n | 'timeout'\n | 'lookup'\n | 'agent'\n | 'http2'\n | 'https'\n | 'readOnly'\n>;\n\nexport function findMatchingRule<GotOptions extends HostRulesGotOptions>(\n url: string,\n options: GotOptions,\n): HostRule {\n const { hostType, readOnly } = options;\n let res = hostRules.find({ hostType, url, readOnly });\n\n if (\n is.nonEmptyString(res.token) ||\n is.nonEmptyString(res.username) ||\n is.nonEmptyString(res.password)\n ) {\n // do not fallback if we already have auth infos\n return res;\n }\n\n // Fallback to `github` hostType\n if (\n hostType &&\n GITHUB_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'github'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'github',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `gitlab` hostType\n if (\n hostType &&\n GITLAB_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'gitlab'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'gitlab',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `bitbucket` hostType\n if (\n hostType &&\n BITBUCKET_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'bitbucket'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'bitbucket',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `bitbucket-server` hostType\n if (\n hostType &&\n BITBUCKET_SERVER_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'bitbucket-server'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'bitbucket-server',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `gitea` hostType\n if (\n hostType &&\n GITEA_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'gitea'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'gitea',\n url,\n }),\n ...res,\n };\n }\n\n return res;\n}\n\n// Apply host rules to requests\nexport function applyHostRule<GotOptions extends HostRulesGotOptions>(\n url: string,\n options: GotOptions,\n hostRule: HostRule,\n): GotOptions {\n if (hostRule.enabled === false) {\n options.enabled = false;\n return options;\n }\n\n const { username, password, token, authType } = hostRule;\n const host = parseUrl(url)?.host;\n if (options.noAuth) {\n logger.trace({ url }, `Authorization disabled`);\n } else if (\n is.nonEmptyString(options.headers?.authorization) ||\n is.nonEmptyString(options.password) ||\n is.nonEmptyString(options.token)\n ) {\n logger.once.debug(`hostRules: authentication already set for ${host}`);\n logger.trace({ url }, `Authorization already set`);\n } else if (password !== undefined) {\n logger.once.debug(`hostRules: applying Basic authentication for ${host}`);\n logger.trace({ url }, `Applying Basic authentication`);\n options.username = username;\n options.password = password;\n } else if (token) {\n logger.once.debug(`hostRules: applying Bearer authentication for ${host}`);\n logger.trace({ url }, `Applying Bearer authentication`);\n options.token = token;\n options.context = { ...options.context, authType };\n } else {\n logger.once.debug(`hostRules: no authentication for ${host}`);\n }\n // Apply optional params\n if (hostRule.abortOnError) {\n options.abortOnError = hostRule.abortOnError;\n }\n\n if (hostRule.abortIgnoreStatusCodes) {\n options.abortIgnoreStatusCodes = hostRule.abortIgnoreStatusCodes;\n }\n\n if (hostRule.timeout) {\n options.timeout = hostRule.timeout;\n }\n\n if (hostRule.headers) {\n const allowedHeaders = GlobalConfig.get('allowedHeaders', []);\n const filteredHeaders: Record<string, string> = {};\n\n for (const [header, value] of Object.entries(hostRule.headers)) {\n if (matchRegexOrGlobList(header, allowedHeaders)) {\n filteredHeaders[header] = value;\n } else {\n logger.once.error(\n { allowedHeaders, header },\n 'Disallowed hostRules headers',\n );\n }\n }\n\n options.headers = {\n ...options.headers,\n ...filteredHeaders,\n };\n }\n\n if (hostRule.keepAlive) {\n options.agent = keepAliveAgents;\n }\n\n if (!hasProxy() && hostRule.enableHttp2 === true) {\n options.http2 = true;\n }\n\n if (is.nonEmptyString(hostRule.httpsCertificateAuthority)) {\n options.https = {\n ...(options.https ?? {}),\n certificateAuthority: hostRule.httpsCertificateAuthority,\n };\n }\n\n if (is.nonEmptyString(hostRule.httpsPrivateKey)) {\n options.https = {\n ...(options.https ?? {}),\n key: hostRule.httpsPrivateKey,\n };\n }\n\n if (is.nonEmptyString(hostRule.httpsCertificate)) {\n options.https = {\n ...(options.https ?? {}),\n certificate: hostRule.httpsCertificate,\n };\n }\n\n return options;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"host-rules.js","sourceRoot":"","sources":["../../../lib/util/http/host-rules.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { GlobalConfig } from '../../config/global';\nimport {\n BITBUCKET_API_USING_HOST_TYPES,\n BITBUCKET_SERVER_API_USING_HOST_TYPES,\n GITEA_API_USING_HOST_TYPES,\n GITHUB_API_USING_HOST_TYPES,\n GITLAB_API_USING_HOST_TYPES,\n} from '../../constants';\nimport { logger } from '../../logger';\nimport { hasProxy } from '../../proxy';\nimport type { HostRule } from '../../types';\nimport * as hostRules from '../host-rules';\nimport { matchRegexOrGlobList } from '../string-match';\nimport { parseUrl } from '../url';\nimport type { InternalHttpOptions } from './http';\nimport { keepAliveAgents } from './keep-alive';\nimport type { GotOptions } from './types';\n\nexport type HostRulesGotOptions = Pick<\n GotOptions & InternalHttpOptions,\n | 'hostType'\n | 'url'\n | 'noAuth'\n | 'headers'\n | 'token'\n | 'username'\n | 'password'\n | 'context'\n | 'enabled'\n | 'abortOnError'\n | 'abortIgnoreStatusCodes'\n | 'timeout'\n | 'lookup'\n | 'agent'\n | 'http2'\n | 'https'\n | 'readOnly'\n>;\n\nexport function findMatchingRule<GotOptions extends HostRulesGotOptions>(\n url: string,\n options: GotOptions,\n): HostRule {\n const { hostType, readOnly } = options;\n let res = hostRules.find({ hostType, url, readOnly });\n\n if (\n is.nonEmptyString(res.token) ||\n is.nonEmptyString(res.username) ||\n is.nonEmptyString(res.password)\n ) {\n // do not fallback if we already have auth infos\n return res;\n }\n\n // Fallback to `github` hostType\n if (\n hostType &&\n GITHUB_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'github'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'github',\n url,\n }),\n ...res,\n };\n }\n\n // in the case that an API URL is used for GitHub.com, fallback to `github` hostType, and use the `url`'s host to find a `matchHost: api.github.com` (or `matchHost: github.com`)\n if (url.startsWith('https://api.github.com/')) {\n res = {\n ...hostRules.find({\n hostType: 'github',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `gitlab` hostType\n if (\n hostType &&\n GITLAB_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'gitlab'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'gitlab',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `bitbucket` hostType\n if (\n hostType &&\n BITBUCKET_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'bitbucket'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'bitbucket',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `bitbucket-server` hostType\n if (\n hostType &&\n BITBUCKET_SERVER_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'bitbucket-server'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'bitbucket-server',\n url,\n }),\n ...res,\n };\n }\n\n // Fallback to `gitea` hostType\n if (\n hostType &&\n GITEA_API_USING_HOST_TYPES.includes(hostType) &&\n hostType !== 'gitea'\n ) {\n res = {\n ...hostRules.find({\n hostType: 'gitea',\n url,\n }),\n ...res,\n };\n }\n\n return res;\n}\n\n// Apply host rules to requests\nexport function applyHostRule<GotOptions extends HostRulesGotOptions>(\n url: string,\n options: GotOptions,\n hostRule: HostRule,\n): GotOptions {\n if (hostRule.enabled === false) {\n options.enabled = false;\n return options;\n }\n\n const { username, password, token, authType } = hostRule;\n const host = parseUrl(url)?.host;\n if (options.noAuth) {\n logger.trace({ url }, `Authorization disabled`);\n } else if (\n is.nonEmptyString(options.headers?.authorization) ||\n is.nonEmptyString(options.password) ||\n is.nonEmptyString(options.token)\n ) {\n logger.once.debug(`hostRules: authentication already set for ${host}`);\n logger.trace({ url }, `Authorization already set`);\n } else if (password !== undefined) {\n logger.once.debug(`hostRules: applying Basic authentication for ${host}`);\n logger.trace({ url }, `Applying Basic authentication`);\n options.username = username;\n options.password = password;\n } else if (token) {\n logger.once.debug(`hostRules: applying Bearer authentication for ${host}`);\n logger.trace({ url }, `Applying Bearer authentication`);\n options.token = token;\n options.context = { ...options.context, authType };\n } else {\n logger.once.debug(`hostRules: no authentication for ${host}`);\n }\n // Apply optional params\n if (hostRule.abortOnError) {\n options.abortOnError = hostRule.abortOnError;\n }\n\n if (hostRule.abortIgnoreStatusCodes) {\n options.abortIgnoreStatusCodes = hostRule.abortIgnoreStatusCodes;\n }\n\n if (hostRule.timeout) {\n options.timeout = hostRule.timeout;\n }\n\n if (hostRule.headers) {\n const allowedHeaders = GlobalConfig.get('allowedHeaders', []);\n const filteredHeaders: Record<string, string> = {};\n\n for (const [header, value] of Object.entries(hostRule.headers)) {\n if (matchRegexOrGlobList(header, allowedHeaders)) {\n filteredHeaders[header] = value;\n } else {\n logger.once.error(\n { allowedHeaders, header },\n 'Disallowed hostRules headers',\n );\n }\n }\n\n options.headers = {\n ...options.headers,\n ...filteredHeaders,\n };\n }\n\n if (hostRule.keepAlive) {\n options.agent = keepAliveAgents;\n }\n\n if (!hasProxy() && hostRule.enableHttp2 === true) {\n options.http2 = true;\n }\n\n if (is.nonEmptyString(hostRule.httpsCertificateAuthority)) {\n options.https = {\n ...(options.https ?? {}),\n certificateAuthority: hostRule.httpsCertificateAuthority,\n };\n }\n\n if (is.nonEmptyString(hostRule.httpsPrivateKey)) {\n options.https = {\n ...(options.https ?? {}),\n key: hostRule.httpsPrivateKey,\n };\n }\n\n if (is.nonEmptyString(hostRule.httpsCertificate)) {\n options.https = {\n ...(options.https ?? {}),\n certificate: hostRule.httpsCertificate,\n };\n }\n\n return options;\n}\n"]}
|
package/package.json
CHANGED
package/renovate-schema.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"title": "JSON schema for Renovate 41.
|
|
2
|
+
"title": "JSON schema for Renovate 41.170.0 config files (https://renovatebot.com/)",
|
|
3
3
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
|
-
"x-renovate-version": "41.
|
|
4
|
+
"x-renovate-version": "41.170.0",
|
|
5
5
|
"allowComments": true,
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|