renovate 40.0.0-next.1 → 40.0.0-next.11

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.
Files changed (138) hide show
  1. package/dist/config/decrypt/legacy.js +0 -1
  2. package/dist/config/decrypt/legacy.js.map +1 -1
  3. package/dist/config/decrypt.js +2 -2
  4. package/dist/config/decrypt.js.map +1 -1
  5. package/dist/config/migrate-validate.js +3 -2
  6. package/dist/config/migrate-validate.js.map +1 -1
  7. package/dist/config/migration.js +2 -1
  8. package/dist/config/migration.js.map +1 -1
  9. package/dist/config/options/index.js +2 -2
  10. package/dist/config/options/index.js.map +1 -1
  11. package/dist/config/parse.js +2 -2
  12. package/dist/config/parse.js.map +1 -1
  13. package/dist/config/presets/gitea/index.js +0 -1
  14. package/dist/config/presets/gitea/index.js.map +1 -1
  15. package/dist/config/presets/github/index.js +0 -1
  16. package/dist/config/presets/github/index.js.map +1 -1
  17. package/dist/config/presets/http/index.js +0 -1
  18. package/dist/config/presets/http/index.js.map +1 -1
  19. package/dist/config/presets/index.js +0 -7
  20. package/dist/config/presets/index.js.map +1 -1
  21. package/dist/config/presets/internal/index.js +1 -3
  22. package/dist/config/presets/internal/index.js.map +1 -1
  23. package/dist/config/schema.d.ts +2 -2
  24. package/dist/config/validation.js +2 -4
  25. package/dist/config/validation.js.map +1 -1
  26. package/dist/config-validator.js +0 -1
  27. package/dist/config-validator.js.map +1 -1
  28. package/dist/constants/category.js +0 -1
  29. package/dist/constants/category.js.map +1 -1
  30. package/dist/instrumentation/index.js +5 -3
  31. package/dist/instrumentation/index.js.map +1 -1
  32. package/dist/logger/cmd-serializer.js +0 -1
  33. package/dist/logger/cmd-serializer.js.map +1 -1
  34. package/dist/logger/config-serializer.js +0 -1
  35. package/dist/logger/config-serializer.js.map +1 -1
  36. package/dist/logger/index.js +0 -3
  37. package/dist/logger/index.js.map +1 -1
  38. package/dist/logger/once.js +4 -2
  39. package/dist/logger/once.js.map +1 -1
  40. package/dist/logger/pretty-stdout.js +0 -1
  41. package/dist/logger/pretty-stdout.js.map +1 -1
  42. package/dist/logger/renovate-logger.js +1 -1
  43. package/dist/logger/renovate-logger.js.map +1 -1
  44. package/dist/logger/utils.js +5 -10
  45. package/dist/logger/utils.js.map +1 -1
  46. package/dist/modules/datasource/custom/schema.d.ts +5 -5
  47. package/dist/modules/datasource/deno/schema.d.ts +8 -8
  48. package/dist/modules/datasource/docker/index.js +4 -2
  49. package/dist/modules/datasource/docker/index.js.map +1 -1
  50. package/dist/modules/datasource/docker/schema.d.ts +32 -32
  51. package/dist/modules/datasource/galaxy/schema.d.ts +1 -1
  52. package/dist/modules/datasource/galaxy-collection/schema.d.ts +3 -3
  53. package/dist/modules/datasource/gitea-releases/schema.d.ts +4 -4
  54. package/dist/modules/datasource/gitea-tags/schema.d.ts +4 -4
  55. package/dist/modules/datasource/hex/schema.d.ts +11 -11
  56. package/dist/modules/datasource/packagist/schema.d.ts +30 -30
  57. package/dist/modules/datasource/unity3d/index.d.ts +4 -1
  58. package/dist/modules/datasource/unity3d/index.js +36 -42
  59. package/dist/modules/datasource/unity3d/index.js.map +1 -1
  60. package/dist/modules/datasource/unity3d/schema.d.ts +47 -0
  61. package/dist/modules/datasource/unity3d/schema.js +17 -0
  62. package/dist/modules/datasource/unity3d/schema.js.map +1 -0
  63. package/dist/modules/manager/argocd/schema.d.ts +10 -10
  64. package/dist/modules/manager/azure-pipelines/schema.d.ts +10 -10
  65. package/dist/modules/manager/batect/schema.d.ts +6 -6
  66. package/dist/modules/manager/bazel/rules/docker.d.ts +9 -9
  67. package/dist/modules/manager/bazel/rules/git.d.ts +10 -10
  68. package/dist/modules/manager/bazel/rules/go.d.ts +5 -5
  69. package/dist/modules/manager/bazel/rules/oci.d.ts +3 -3
  70. package/dist/modules/manager/bazel-module/parser/fragments.d.ts +40 -40
  71. package/dist/modules/manager/bazel-module/parser/maven.d.ts +27 -27
  72. package/dist/modules/manager/bazel-module/parser/oci.d.ts +17 -17
  73. package/dist/modules/manager/bazel-module/rules.d.ts +40 -40
  74. package/dist/modules/manager/cargo/schema.d.ts +100 -100
  75. package/dist/modules/manager/circleci/schema.d.ts +6 -6
  76. package/dist/modules/manager/composer/schema.d.ts +40 -40
  77. package/dist/modules/manager/crossplane/schema.d.ts +2 -2
  78. package/dist/modules/manager/custom/jsonata/index.js +4 -0
  79. package/dist/modules/manager/custom/jsonata/index.js.map +1 -1
  80. package/dist/modules/manager/custom/jsonata/schema.d.ts +7 -7
  81. package/dist/modules/manager/fingerprint.generated.js +67 -67
  82. package/dist/modules/manager/fingerprint.generated.js.map +1 -1
  83. package/dist/modules/manager/fleet/schema.d.ts +12 -12
  84. package/dist/modules/manager/flux/schema.d.ts +50 -50
  85. package/dist/modules/manager/glasskube/schema.d.ts +8 -8
  86. package/dist/modules/manager/nix/schema.d.ts +24 -24
  87. package/dist/modules/manager/npm/schema.d.ts +13 -13
  88. package/dist/modules/manager/nuget/schema.d.ts +8 -8
  89. package/dist/modules/manager/ocb/schema.d.ts +6 -6
  90. package/dist/modules/manager/pep621/schema.d.ts +55 -55
  91. package/dist/modules/manager/pep621/utils.js +2 -1
  92. package/dist/modules/manager/pep621/utils.js.map +1 -1
  93. package/dist/modules/manager/poetry/artifacts.js +2 -1
  94. package/dist/modules/manager/poetry/artifacts.js.map +1 -1
  95. package/dist/modules/manager/poetry/extract.js +2 -1
  96. package/dist/modules/manager/poetry/extract.js.map +1 -1
  97. package/dist/modules/manager/poetry/schema.d.ts +48 -48
  98. package/dist/modules/manager/sveltos/schema.d.ts +12 -12
  99. package/dist/modules/manager/vendir/schema.d.ts +27 -27
  100. package/dist/modules/platform/api.d.ts +1 -1
  101. package/dist/modules/platform/bitbucket/index.d.ts +1 -0
  102. package/dist/modules/platform/bitbucket/index.js +5 -0
  103. package/dist/modules/platform/bitbucket/index.js.map +1 -1
  104. package/dist/modules/platform/bitbucket/schema.d.ts +17 -17
  105. package/dist/modules/platform/bitbucket-server/index.d.ts +1 -1
  106. package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
  107. package/dist/modules/platform/gitea/index.d.ts +1 -0
  108. package/dist/modules/platform/gitea/index.js +11 -0
  109. package/dist/modules/platform/gitea/index.js.map +1 -1
  110. package/dist/modules/platform/gitea/schema.d.ts +8 -8
  111. package/dist/modules/platform/github/issue.d.ts +12 -12
  112. package/dist/modules/platform/github/schema.d.ts +65 -65
  113. package/dist/modules/platform/gitlab/index.d.ts +1 -0
  114. package/dist/modules/platform/gitlab/index.js +9 -0
  115. package/dist/modules/platform/gitlab/index.js.map +1 -1
  116. package/dist/modules/platform/scm.d.ts +1 -1
  117. package/dist/proxy.js +2 -1
  118. package/dist/proxy.js.map +1 -1
  119. package/dist/renovate.js +2 -2
  120. package/dist/renovate.js.map +1 -1
  121. package/dist/util/cache/package/redis.js +0 -1
  122. package/dist/util/cache/package/redis.js.map +1 -1
  123. package/dist/util/cache/repository/impl/base.d.ts +1 -1
  124. package/dist/util/exec/containerbase.js +11 -11
  125. package/dist/util/exec/containerbase.js.map +1 -1
  126. package/dist/util/github/graphql/query-adapters/releases-query-adapter.d.ts +5 -5
  127. package/dist/util/http/cache/schema.d.ts +2 -2
  128. package/dist/util/http/legacy.js +4 -1
  129. package/dist/util/http/legacy.js.map +1 -1
  130. package/dist/util/string.d.ts +15 -0
  131. package/dist/util/string.js +75 -0
  132. package/dist/util/string.js.map +1 -1
  133. package/dist/util/yaml.js +2 -6
  134. package/dist/util/yaml.js.map +1 -1
  135. package/dist/workers/repository/cache.js +0 -1
  136. package/dist/workers/repository/cache.js.map +1 -1
  137. package/package.json +19 -24
  138. package/renovate-schema.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/modules/manager/pep621/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { regEx } from '../../../util/regex';\nimport { parse as parseToml } from '../../../util/toml';\nimport { PypiDatasource } from '../../datasource/pypi';\nimport { normalizePythonDepName } from '../../datasource/pypi/common';\nimport type { PackageDependency } from '../types';\nimport type { PyProject } from './schema';\nimport { PyProjectSchema } from './schema';\nimport type { Pep508ParseResult, Pep621ManagerData } from './types';\n\nconst pep508Regex = regEx(\n /^(?<packageName>[A-Z0-9._-]+)\\s*(\\[(?<extras>[A-Z0-9\\s,._-]+)\\])?\\s*(?<currentValue>[^;]+)?(;\\s*(?<marker>.*))?/i,\n);\n\nexport const depTypes = {\n dependencies: 'project.dependencies',\n optionalDependencies: 'project.optional-dependencies',\n dependencyGroups: 'dependency-groups',\n pdmDevDependencies: 'tool.pdm.dev-dependencies',\n uvDevDependencies: 'tool.uv.dev-dependencies',\n uvSources: 'tool.uv.sources',\n buildSystemRequires: 'build-system.requires',\n};\n\nexport function parsePEP508(\n value: string | null | undefined,\n): Pep508ParseResult | null {\n if (is.nullOrUndefined(value)) {\n return null;\n }\n\n const regExpExec = pep508Regex.exec(value);\n if (\n is.nullOrUndefined(regExpExec) ||\n is.nullOrUndefined(regExpExec?.groups)\n ) {\n logger.trace(`Pep508 could not be extracted`);\n return null;\n }\n\n const result: Pep508ParseResult = {\n packageName: regExpExec.groups.packageName,\n };\n if (is.nonEmptyString(regExpExec.groups.currentValue)) {\n if (\n regExpExec.groups.currentValue.startsWith('(') &&\n regExpExec.groups.currentValue.endsWith(')')\n ) {\n result.currentValue = regExpExec.groups.currentValue.slice(1, -1).trim();\n } else {\n result.currentValue = regExpExec.groups.currentValue;\n }\n }\n\n if (is.nonEmptyString(regExpExec.groups.marker)) {\n result.marker = regExpExec.groups.marker;\n }\n if (is.nonEmptyString(regExpExec.groups.extras)) {\n // trim to remove allowed whitespace between brackets\n result.extras = regExpExec.groups.extras.split(',').map((e) => e.trim());\n }\n\n return result;\n}\n\nexport function pep508ToPackageDependency(\n depType: string,\n value: string,\n): PackageDependency | null {\n const parsed = parsePEP508(value);\n if (is.nullOrUndefined(parsed)) {\n return null;\n }\n\n const dep: PackageDependency = {\n packageName: normalizePythonDepName(parsed.packageName),\n depName: parsed.packageName,\n datasource: PypiDatasource.id,\n depType,\n };\n\n if (is.nullOrUndefined(parsed.currentValue)) {\n dep.skipReason = 'unspecified-version';\n } else {\n dep.currentValue = parsed.currentValue;\n\n if (parsed.currentValue.startsWith('==')) {\n dep.currentVersion = parsed.currentValue.replace(regEx(/^==\\s*/), '');\n }\n }\n return dep;\n}\n\nexport function parseDependencyGroupRecord(\n depType: string,\n records: Record<string, string[]> | null | undefined,\n): PackageDependency[] {\n if (is.nullOrUndefined(records)) {\n return [];\n }\n\n const deps: PackageDependency<Pep621ManagerData>[] = [];\n for (const [depGroup, pep508Strings] of Object.entries(records)) {\n for (const dep of parseDependencyList(depType, pep508Strings)) {\n deps.push({\n ...dep,\n depName: dep.packageName!,\n managerData: { depGroup },\n });\n }\n }\n return deps;\n}\n\nexport function parseDependencyList(\n depType: string,\n list: string[] | null | undefined,\n): PackageDependency[] {\n if (is.nullOrUndefined(list)) {\n return [];\n }\n\n const deps: PackageDependency[] = [];\n for (const element of list) {\n const dep = pep508ToPackageDependency(depType, element);\n if (is.truthy(dep)) {\n deps.push(dep);\n }\n }\n return deps;\n}\n\nexport function parsePyProject(\n packageFile: string,\n content: string,\n): PyProject | null {\n try {\n const jsonMap = parseToml(content);\n return PyProjectSchema.parse(jsonMap);\n } catch (err) {\n logger.debug(\n { packageFile, err },\n `Failed to parse and validate pyproject file`,\n );\n return null;\n }\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/modules/manager/pep621/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { regEx } from '../../../util/regex';\nimport { stripTemplates } from '../../../util/string';\nimport { parse as parseToml } from '../../../util/toml';\nimport { PypiDatasource } from '../../datasource/pypi';\nimport { normalizePythonDepName } from '../../datasource/pypi/common';\nimport type { PackageDependency } from '../types';\nimport type { PyProject } from './schema';\nimport { PyProjectSchema } from './schema';\nimport type { Pep508ParseResult, Pep621ManagerData } from './types';\n\nconst pep508Regex = regEx(\n /^(?<packageName>[A-Z0-9._-]+)\\s*(\\[(?<extras>[A-Z0-9\\s,._-]+)\\])?\\s*(?<currentValue>[^;]+)?(;\\s*(?<marker>.*))?/i,\n);\n\nexport const depTypes = {\n dependencies: 'project.dependencies',\n optionalDependencies: 'project.optional-dependencies',\n dependencyGroups: 'dependency-groups',\n pdmDevDependencies: 'tool.pdm.dev-dependencies',\n uvDevDependencies: 'tool.uv.dev-dependencies',\n uvSources: 'tool.uv.sources',\n buildSystemRequires: 'build-system.requires',\n};\n\nexport function parsePEP508(\n value: string | null | undefined,\n): Pep508ParseResult | null {\n if (is.nullOrUndefined(value)) {\n return null;\n }\n\n const regExpExec = pep508Regex.exec(value);\n if (\n is.nullOrUndefined(regExpExec) ||\n is.nullOrUndefined(regExpExec?.groups)\n ) {\n logger.trace(`Pep508 could not be extracted`);\n return null;\n }\n\n const result: Pep508ParseResult = {\n packageName: regExpExec.groups.packageName,\n };\n if (is.nonEmptyString(regExpExec.groups.currentValue)) {\n if (\n regExpExec.groups.currentValue.startsWith('(') &&\n regExpExec.groups.currentValue.endsWith(')')\n ) {\n result.currentValue = regExpExec.groups.currentValue.slice(1, -1).trim();\n } else {\n result.currentValue = regExpExec.groups.currentValue;\n }\n }\n\n if (is.nonEmptyString(regExpExec.groups.marker)) {\n result.marker = regExpExec.groups.marker;\n }\n if (is.nonEmptyString(regExpExec.groups.extras)) {\n // trim to remove allowed whitespace between brackets\n result.extras = regExpExec.groups.extras.split(',').map((e) => e.trim());\n }\n\n return result;\n}\n\nexport function pep508ToPackageDependency(\n depType: string,\n value: string,\n): PackageDependency | null {\n const parsed = parsePEP508(value);\n if (is.nullOrUndefined(parsed)) {\n return null;\n }\n\n const dep: PackageDependency = {\n packageName: normalizePythonDepName(parsed.packageName),\n depName: parsed.packageName,\n datasource: PypiDatasource.id,\n depType,\n };\n\n if (is.nullOrUndefined(parsed.currentValue)) {\n dep.skipReason = 'unspecified-version';\n } else {\n dep.currentValue = parsed.currentValue;\n\n if (parsed.currentValue.startsWith('==')) {\n dep.currentVersion = parsed.currentValue.replace(regEx(/^==\\s*/), '');\n }\n }\n return dep;\n}\n\nexport function parseDependencyGroupRecord(\n depType: string,\n records: Record<string, string[]> | null | undefined,\n): PackageDependency[] {\n if (is.nullOrUndefined(records)) {\n return [];\n }\n\n const deps: PackageDependency<Pep621ManagerData>[] = [];\n for (const [depGroup, pep508Strings] of Object.entries(records)) {\n for (const dep of parseDependencyList(depType, pep508Strings)) {\n deps.push({\n ...dep,\n depName: dep.packageName!,\n managerData: { depGroup },\n });\n }\n }\n return deps;\n}\n\nexport function parseDependencyList(\n depType: string,\n list: string[] | null | undefined,\n): PackageDependency[] {\n if (is.nullOrUndefined(list)) {\n return [];\n }\n\n const deps: PackageDependency[] = [];\n for (const element of list) {\n const dep = pep508ToPackageDependency(depType, element);\n if (is.truthy(dep)) {\n deps.push(dep);\n }\n }\n return deps;\n}\n\nexport function parsePyProject(\n packageFile: string,\n content: string,\n): PyProject | null {\n try {\n const jsonMap = parseToml(stripTemplates(content));\n return PyProjectSchema.parse(jsonMap);\n } catch (err) {\n logger.debug(\n { packageFile, err },\n `Failed to parse and validate pyproject file`,\n );\n return null;\n }\n}\n"]}
@@ -14,6 +14,7 @@ const auth_1 = require("../../../util/git/auth");
14
14
  const host_rules_1 = require("../../../util/host-rules");
15
15
  const regex_1 = require("../../../util/regex");
16
16
  const result_1 = require("../../../util/result");
17
+ const string_1 = require("../../../util/string");
17
18
  const toml_1 = require("../../../util/toml");
18
19
  const url_1 = require("../../../util/url");
19
20
  const pypi_1 = require("../../datasource/pypi");
@@ -58,7 +59,7 @@ function getPoetryRequirement(pyProjectContent, existingLockFileContent) {
58
59
  function getPoetrySources(content, fileName) {
59
60
  let pyprojectFile;
60
61
  try {
61
- pyprojectFile = (0, toml_1.parse)(content);
62
+ pyprojectFile = (0, toml_1.parse)((0, string_1.stripTemplates)(content));
62
63
  }
63
64
  catch (err) {
64
65
  logger_1.logger.debug({ err }, 'Error parsing pyproject.toml file');
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/poetry/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { quote } from 'shlex';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport type { HostRule } from '../../../types';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions } from '../../../util/exec/types';\nimport {\n deleteLocalFile,\n ensureCacheDir,\n getSiblingFileName,\n readLocalFile,\n writeLocalFile,\n} from '../../../util/fs';\nimport { getGitEnvironmentVariables } from '../../../util/git/auth';\nimport { find } from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\nimport { Result } from '../../../util/result';\nimport { parse as parseToml } from '../../../util/toml';\nimport { parseUrl } from '../../../util/url';\nimport { PypiDatasource } from '../../datasource/pypi';\nimport { getGoogleAuthHostRule } from '../../datasource/util';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\nimport { Lockfile, PoetrySchemaToml } from './schema';\nimport type { PoetryFile, PoetrySource } from './types';\n\nexport function getPythonConstraint(\n pyProjectContent: string,\n existingLockFileContent: string,\n): string | null {\n // Read Python version from `pyproject.toml` first as it could have been updated\n const pyprojectPythonConstraint = Result.parse(\n pyProjectContent,\n PoetrySchemaToml.transform(\n ({ packageFileContent }) =>\n packageFileContent.deps.find((dep) => dep.depName === 'python')\n ?.currentValue,\n ),\n ).unwrapOrNull();\n if (pyprojectPythonConstraint) {\n logger.debug('Using python version from pyproject.toml');\n return pyprojectPythonConstraint;\n }\n\n const lockfilePythonConstraint = Result.parse(\n existingLockFileContent,\n Lockfile.transform(({ pythonVersions }) => pythonVersions),\n ).unwrapOrNull();\n if (lockfilePythonConstraint) {\n logger.debug('Using python version from poetry.lock');\n return lockfilePythonConstraint;\n }\n\n return null;\n}\n\nexport function getPoetryRequirement(\n pyProjectContent: string,\n existingLockFileContent: string,\n): undefined | string | null {\n // Read Poetry version from first line of poetry.lock\n const firstLine = existingLockFileContent.split('\\n')[0];\n const poetryVersionMatch = /by Poetry ([\\d\\\\.]+)/.exec(firstLine);\n if (poetryVersionMatch?.[1]) {\n const poetryVersion = poetryVersionMatch[1];\n logger.debug(\n `Using poetry version ${poetryVersion} from poetry.lock header`,\n );\n return poetryVersion;\n }\n\n const { val: lockfilePoetryConstraint } = Result.parse(\n existingLockFileContent,\n Lockfile.transform(({ poetryConstraint }) => poetryConstraint),\n ).unwrap();\n if (lockfilePoetryConstraint) {\n logger.debug(\n `Using poetry version ${lockfilePoetryConstraint} from poetry.lock metadata`,\n );\n return lockfilePoetryConstraint;\n }\n\n const { val: pyprojectPoetryConstraint } = Result.parse(\n pyProjectContent,\n PoetrySchemaToml.transform(({ poetryRequirement }) => poetryRequirement),\n ).unwrap();\n if (pyprojectPoetryConstraint) {\n logger.debug(\n `Using poetry version ${pyprojectPoetryConstraint} from pyproject.toml`,\n );\n return pyprojectPoetryConstraint;\n }\n\n return null;\n}\n\nfunction getPoetrySources(content: string, fileName: string): PoetrySource[] {\n let pyprojectFile: PoetryFile;\n try {\n pyprojectFile = parseToml(content) as PoetryFile;\n } catch (err) {\n logger.debug({ err }, 'Error parsing pyproject.toml file');\n return [];\n }\n if (!pyprojectFile.tool?.poetry) {\n logger.debug(`${fileName} contains no poetry section`);\n return [];\n }\n\n const sources = pyprojectFile.tool?.poetry?.source ?? [];\n const sourceArray: PoetrySource[] = [];\n for (const source of sources) {\n if (source.name && source.url) {\n sourceArray.push({ name: source.name, url: source.url });\n }\n }\n return sourceArray;\n}\n\nasync function getMatchingHostRule(url: string | undefined): Promise<HostRule> {\n const scopedMatch = find({ hostType: PypiDatasource.id, url });\n const hostRule = is.nonEmptyObject(scopedMatch) ? scopedMatch : find({ url });\n if (hostRule && Object.keys(hostRule).length !== 0) {\n return hostRule;\n }\n\n const parsedUrl = parseUrl(url);\n if (!parsedUrl) {\n logger.once.debug(`Failed to parse URL ${url}`);\n return {};\n }\n\n if (parsedUrl.hostname.endsWith('.pkg.dev')) {\n const hostRule = await getGoogleAuthHostRule();\n if (hostRule && Object.keys(hostRule).length !== 0) {\n return hostRule;\n }\n logger.once.debug(`Could not get Google access token (url=${url})`);\n }\n\n return {};\n}\n\nasync function getSourceCredentialVars(\n pyprojectContent: string,\n packageFileName: string,\n): Promise<NodeJS.ProcessEnv> {\n const poetrySources = getPoetrySources(pyprojectContent, packageFileName);\n const envVars: NodeJS.ProcessEnv = {};\n\n for (const source of poetrySources) {\n const matchingHostRule = await getMatchingHostRule(source.url);\n const formattedSourceName = source.name\n .replace(regEx(/(\\.|-)+/g), '_')\n .toUpperCase();\n if (matchingHostRule.username) {\n envVars[`POETRY_HTTP_BASIC_${formattedSourceName}_USERNAME`] =\n matchingHostRule.username;\n }\n if (matchingHostRule.password) {\n envVars[`POETRY_HTTP_BASIC_${formattedSourceName}_PASSWORD`] =\n matchingHostRule.password;\n }\n }\n return envVars;\n}\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`poetry.updateArtifacts(${packageFileName})`);\n const { isLockFileMaintenance } = config;\n\n if (!is.nonEmptyArray(updatedDeps) && !isLockFileMaintenance) {\n logger.debug('No updated poetry deps - returning null');\n return null;\n }\n // Try poetry.lock first\n let lockFileName = getSiblingFileName(packageFileName, 'poetry.lock');\n let existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n // Try pyproject.lock next\n lockFileName = getSiblingFileName(packageFileName, 'pyproject.lock');\n existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n logger.debug(`No lock file found`);\n return null;\n }\n }\n logger.debug(`Updating ${lockFileName}`);\n try {\n await writeLocalFile(packageFileName, newPackageFileContent);\n const cmd: string[] = [];\n if (isLockFileMaintenance) {\n await deleteLocalFile(lockFileName);\n cmd.push('poetry update --lock --no-interaction');\n } else {\n cmd.push(\n `poetry update --lock --no-interaction ${updatedDeps\n .map((dep) => dep.depName)\n .filter(is.string)\n .map((dep) => quote(dep))\n .join(' ')}`,\n );\n }\n const pythonConstraint =\n config?.constraints?.python ??\n getPythonConstraint(newPackageFileContent, existingLockFileContent);\n const poetryConstraint =\n config.constraints?.poetry ??\n getPoetryRequirement(newPackageFileContent, existingLockFileContent);\n const extraEnv = {\n ...(await getSourceCredentialVars(\n newPackageFileContent,\n packageFileName,\n )),\n ...getGitEnvironmentVariables(['poetry']),\n PIP_CACHE_DIR: await ensureCacheDir('pip'),\n };\n\n const execOptions: ExecOptions = {\n cwdFile: packageFileName,\n extraEnv,\n docker: {},\n userConfiguredEnv: config.env,\n toolConstraints: [\n { toolName: 'python', constraint: pythonConstraint },\n { toolName: 'poetry', constraint: poetryConstraint },\n ],\n };\n await exec(cmd, execOptions);\n const newPoetryLockContent = await readLocalFile(lockFileName, 'utf8');\n if (existingLockFileContent === newPoetryLockContent) {\n logger.debug(`${lockFileName} is unchanged`);\n return null;\n }\n logger.debug(`Returning updated ${lockFileName}`);\n return [\n {\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newPoetryLockContent,\n },\n },\n ];\n } catch (err) {\n // istanbul ignore if\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n logger.debug({ err }, `Failed to update ${lockFileName} file`);\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: `${String(err.stdout)}\\n${String(err.stderr)}`,\n },\n },\n ];\n }\n}\n"]}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/poetry/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { quote } from 'shlex';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport type { HostRule } from '../../../types';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions } from '../../../util/exec/types';\nimport {\n deleteLocalFile,\n ensureCacheDir,\n getSiblingFileName,\n readLocalFile,\n writeLocalFile,\n} from '../../../util/fs';\nimport { getGitEnvironmentVariables } from '../../../util/git/auth';\nimport { find } from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\nimport { Result } from '../../../util/result';\nimport { stripTemplates } from '../../../util/string';\nimport { parse as parseToml } from '../../../util/toml';\nimport { parseUrl } from '../../../util/url';\nimport { PypiDatasource } from '../../datasource/pypi';\nimport { getGoogleAuthHostRule } from '../../datasource/util';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\nimport { Lockfile, PoetrySchemaToml } from './schema';\nimport type { PoetryFile, PoetrySource } from './types';\n\nexport function getPythonConstraint(\n pyProjectContent: string,\n existingLockFileContent: string,\n): string | null {\n // Read Python version from `pyproject.toml` first as it could have been updated\n const pyprojectPythonConstraint = Result.parse(\n pyProjectContent,\n PoetrySchemaToml.transform(\n ({ packageFileContent }) =>\n packageFileContent.deps.find((dep) => dep.depName === 'python')\n ?.currentValue,\n ),\n ).unwrapOrNull();\n if (pyprojectPythonConstraint) {\n logger.debug('Using python version from pyproject.toml');\n return pyprojectPythonConstraint;\n }\n\n const lockfilePythonConstraint = Result.parse(\n existingLockFileContent,\n Lockfile.transform(({ pythonVersions }) => pythonVersions),\n ).unwrapOrNull();\n if (lockfilePythonConstraint) {\n logger.debug('Using python version from poetry.lock');\n return lockfilePythonConstraint;\n }\n\n return null;\n}\n\nexport function getPoetryRequirement(\n pyProjectContent: string,\n existingLockFileContent: string,\n): undefined | string | null {\n // Read Poetry version from first line of poetry.lock\n const firstLine = existingLockFileContent.split('\\n')[0];\n const poetryVersionMatch = /by Poetry ([\\d\\\\.]+)/.exec(firstLine);\n if (poetryVersionMatch?.[1]) {\n const poetryVersion = poetryVersionMatch[1];\n logger.debug(\n `Using poetry version ${poetryVersion} from poetry.lock header`,\n );\n return poetryVersion;\n }\n\n const { val: lockfilePoetryConstraint } = Result.parse(\n existingLockFileContent,\n Lockfile.transform(({ poetryConstraint }) => poetryConstraint),\n ).unwrap();\n if (lockfilePoetryConstraint) {\n logger.debug(\n `Using poetry version ${lockfilePoetryConstraint} from poetry.lock metadata`,\n );\n return lockfilePoetryConstraint;\n }\n\n const { val: pyprojectPoetryConstraint } = Result.parse(\n pyProjectContent,\n PoetrySchemaToml.transform(({ poetryRequirement }) => poetryRequirement),\n ).unwrap();\n if (pyprojectPoetryConstraint) {\n logger.debug(\n `Using poetry version ${pyprojectPoetryConstraint} from pyproject.toml`,\n );\n return pyprojectPoetryConstraint;\n }\n\n return null;\n}\n\nfunction getPoetrySources(content: string, fileName: string): PoetrySource[] {\n let pyprojectFile: PoetryFile;\n try {\n pyprojectFile = parseToml(stripTemplates(content)) as PoetryFile;\n } catch (err) {\n logger.debug({ err }, 'Error parsing pyproject.toml file');\n return [];\n }\n if (!pyprojectFile.tool?.poetry) {\n logger.debug(`${fileName} contains no poetry section`);\n return [];\n }\n\n const sources = pyprojectFile.tool?.poetry?.source ?? [];\n const sourceArray: PoetrySource[] = [];\n for (const source of sources) {\n if (source.name && source.url) {\n sourceArray.push({ name: source.name, url: source.url });\n }\n }\n return sourceArray;\n}\n\nasync function getMatchingHostRule(url: string | undefined): Promise<HostRule> {\n const scopedMatch = find({ hostType: PypiDatasource.id, url });\n const hostRule = is.nonEmptyObject(scopedMatch) ? scopedMatch : find({ url });\n if (hostRule && Object.keys(hostRule).length !== 0) {\n return hostRule;\n }\n\n const parsedUrl = parseUrl(url);\n if (!parsedUrl) {\n logger.once.debug(`Failed to parse URL ${url}`);\n return {};\n }\n\n if (parsedUrl.hostname.endsWith('.pkg.dev')) {\n const hostRule = await getGoogleAuthHostRule();\n if (hostRule && Object.keys(hostRule).length !== 0) {\n return hostRule;\n }\n logger.once.debug(`Could not get Google access token (url=${url})`);\n }\n\n return {};\n}\n\nasync function getSourceCredentialVars(\n pyprojectContent: string,\n packageFileName: string,\n): Promise<NodeJS.ProcessEnv> {\n const poetrySources = getPoetrySources(pyprojectContent, packageFileName);\n const envVars: NodeJS.ProcessEnv = {};\n\n for (const source of poetrySources) {\n const matchingHostRule = await getMatchingHostRule(source.url);\n const formattedSourceName = source.name\n .replace(regEx(/(\\.|-)+/g), '_')\n .toUpperCase();\n if (matchingHostRule.username) {\n envVars[`POETRY_HTTP_BASIC_${formattedSourceName}_USERNAME`] =\n matchingHostRule.username;\n }\n if (matchingHostRule.password) {\n envVars[`POETRY_HTTP_BASIC_${formattedSourceName}_PASSWORD`] =\n matchingHostRule.password;\n }\n }\n return envVars;\n}\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`poetry.updateArtifacts(${packageFileName})`);\n const { isLockFileMaintenance } = config;\n\n if (!is.nonEmptyArray(updatedDeps) && !isLockFileMaintenance) {\n logger.debug('No updated poetry deps - returning null');\n return null;\n }\n // Try poetry.lock first\n let lockFileName = getSiblingFileName(packageFileName, 'poetry.lock');\n let existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n // Try pyproject.lock next\n lockFileName = getSiblingFileName(packageFileName, 'pyproject.lock');\n existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n logger.debug(`No lock file found`);\n return null;\n }\n }\n logger.debug(`Updating ${lockFileName}`);\n try {\n await writeLocalFile(packageFileName, newPackageFileContent);\n const cmd: string[] = [];\n if (isLockFileMaintenance) {\n await deleteLocalFile(lockFileName);\n cmd.push('poetry update --lock --no-interaction');\n } else {\n cmd.push(\n `poetry update --lock --no-interaction ${updatedDeps\n .map((dep) => dep.depName)\n .filter(is.string)\n .map((dep) => quote(dep))\n .join(' ')}`,\n );\n }\n const pythonConstraint =\n config?.constraints?.python ??\n getPythonConstraint(newPackageFileContent, existingLockFileContent);\n const poetryConstraint =\n config.constraints?.poetry ??\n getPoetryRequirement(newPackageFileContent, existingLockFileContent);\n const extraEnv = {\n ...(await getSourceCredentialVars(\n newPackageFileContent,\n packageFileName,\n )),\n ...getGitEnvironmentVariables(['poetry']),\n PIP_CACHE_DIR: await ensureCacheDir('pip'),\n };\n\n const execOptions: ExecOptions = {\n cwdFile: packageFileName,\n extraEnv,\n docker: {},\n userConfiguredEnv: config.env,\n toolConstraints: [\n { toolName: 'python', constraint: pythonConstraint },\n { toolName: 'poetry', constraint: poetryConstraint },\n ],\n };\n await exec(cmd, execOptions);\n const newPoetryLockContent = await readLocalFile(lockFileName, 'utf8');\n if (existingLockFileContent === newPoetryLockContent) {\n logger.debug(`${lockFileName} is unchanged`);\n return null;\n }\n logger.debug(`Returning updated ${lockFileName}`);\n return [\n {\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newPoetryLockContent,\n },\n },\n ];\n } catch (err) {\n // istanbul ignore if\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n logger.debug({ err }, `Failed to update ${lockFileName} file`);\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: `${String(err.stdout)}\\n${String(err.stderr)}`,\n },\n },\n ];\n }\n}\n"]}
@@ -7,11 +7,12 @@ const logger_1 = require("../../../logger");
7
7
  const filter_map_1 = require("../../../util/filter-map");
8
8
  const fs_1 = require("../../../util/fs");
9
9
  const result_1 = require("../../../util/result");
10
+ const string_1 = require("../../../util/string");
10
11
  const github_releases_1 = require("../../datasource/github-releases");
11
12
  const schema_1 = require("./schema");
12
13
  async function extractPackageFile(content, packageFile) {
13
14
  logger_1.logger.trace(`poetry.extractPackageFile(${packageFile})`);
14
- const { val: res, err } = result_1.Result.parse(content, schema_1.PoetrySchemaToml.transform(({ packageFileContent }) => packageFileContent)).unwrap();
15
+ const { val: res, err } = result_1.Result.parse((0, string_1.stripTemplates)(content), schema_1.PoetrySchemaToml.transform(({ packageFileContent }) => packageFileContent)).unwrap();
15
16
  if (err) {
16
17
  logger_1.logger.debug({ packageFile, err }, `Poetry: error parsing pyproject.toml`);
17
18
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/poetry/extract.ts"],"names":[],"mappings":";;AAaA,gDAsEC;;AAnFD,kEAAkC;AAClC,4CAAyC;AACzC,yDAAqD;AACrD,yCAI0B;AAC1B,iDAA8C;AAC9C,sEAA4E;AAE5E,qCAAsD;AAE/C,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,WAAmB;IAEnB,eAAM,CAAC,KAAK,CAAC,6BAA6B,WAAW,GAAG,CAAC,CAAC;IAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,eAAM,CAAC,KAAK,CACpC,OAAO,EACP,yBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAC3E,CAAC,MAAM,EAAE,CAAC;IACX,IAAI,GAAG,EAAE,CAAC;QACR,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,sCAAsC,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,CAAC,MAAM,IAAA,kBAAa,EAAC,YAAY,EAAE,MAAM,CAAC,CAAE,CAAC;IAClE,MAAM,eAAe,GAAG,eAAM,CAAC,KAAK,CAClC,YAAY,EACZ,iBAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CACvC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEf,IAAI,aAAiC,CAAC;IACtC,IAAA,sBAAS,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;QAC1B,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;gBACrB,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC;YACnC,CAAC;YACD,OAAO;gBACL,GAAG,GAAG;gBACN,wFAAwF;gBACxF,iCAAiC;gBACjC,WAAW,EAAE,+BAA+B;gBAC5C,UAAU,EAAE,0CAAwB,CAAC,EAAE;gBACvC,kBAAkB,EAAE,QAAQ;gBAC5B,YAAY,EAAE,IAAI;aACnB,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,CAAC;QACnD,IAAI,WAAW,IAAI,WAAW,IAAI,eAAe,EAAE,CAAC;YAClD,GAAG,CAAC,aAAa,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,oBAAoB,GAAwB,EAAE,CAAC;IAErD,IAAI,YAAE,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;QACrC,oBAAoB,CAAC,MAAM,GAAG,aAAa,CAAC;IAC9C,CAAC;IACD,GAAG,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IAEhD,wBAAwB;IACxB,IAAI,QAAQ,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC9D,uBAAuB;IACvB,IAAI,MAAM,IAAA,oBAAe,EAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,GAAG,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,0BAA0B;QAC1B,QAAQ,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC7D,IAAI,MAAM,IAAA,oBAAe,EAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,GAAG,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { filterMap } from '../../../util/filter-map';\nimport {\n getSiblingFileName,\n localPathExists,\n readLocalFile,\n} from '../../../util/fs';\nimport { Result } from '../../../util/result';\nimport { GithubReleasesDatasource } from '../../datasource/github-releases';\nimport type { PackageFileContent } from '../types';\nimport { Lockfile, PoetrySchemaToml } from './schema';\n\nexport async function extractPackageFile(\n content: string,\n packageFile: string,\n): Promise<PackageFileContent | null> {\n logger.trace(`poetry.extractPackageFile(${packageFile})`);\n const { val: res, err } = Result.parse(\n content,\n PoetrySchemaToml.transform(({ packageFileContent }) => packageFileContent),\n ).unwrap();\n if (err) {\n logger.debug({ packageFile, err }, `Poetry: error parsing pyproject.toml`);\n return null;\n }\n\n const lockfileName = getSiblingFileName(packageFile, 'poetry.lock');\n const lockContents = (await readLocalFile(lockfileName, 'utf8'))!;\n const lockfileMapping = Result.parse(\n lockContents,\n Lockfile.transform(({ lock }) => lock),\n ).unwrapOr({});\n\n let pythonVersion: string | undefined;\n filterMap(res.deps, (dep) => {\n if (dep.depName === 'python') {\n if (dep.currentValue) {\n pythonVersion = dep.currentValue;\n }\n return {\n ...dep,\n // We use containerbase python as source, as there are a lot docker tags which can cause\n // issues with poetry versioning.\n packageName: 'containerbase/python-prebuild',\n datasource: GithubReleasesDatasource.id,\n commitMessageTopic: 'Python',\n registryUrls: null,\n };\n }\n\n const packageName = dep.packageName ?? dep.depName;\n if (packageName && packageName in lockfileMapping) {\n dep.lockedVersion = lockfileMapping[packageName];\n }\n\n return dep;\n });\n\n if (!res.deps.length) {\n return null;\n }\n\n const extractedConstraints: Record<string, any> = {};\n\n if (is.nonEmptyString(pythonVersion)) {\n extractedConstraints.python = pythonVersion;\n }\n res.extractedConstraints = extractedConstraints;\n\n // Try poetry.lock first\n let lockFile = getSiblingFileName(packageFile, 'poetry.lock');\n // istanbul ignore next\n if (await localPathExists(lockFile)) {\n res.lockFiles = [lockFile];\n } else {\n // Try pyproject.lock next\n lockFile = getSiblingFileName(packageFile, 'pyproject.lock');\n if (await localPathExists(lockFile)) {\n res.lockFiles = [lockFile];\n }\n }\n return res;\n}\n"]}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/poetry/extract.ts"],"names":[],"mappings":";;AAcA,gDAsEC;;AApFD,kEAAkC;AAClC,4CAAyC;AACzC,yDAAqD;AACrD,yCAI0B;AAC1B,iDAA8C;AAC9C,iDAAsD;AACtD,sEAA4E;AAE5E,qCAAsD;AAE/C,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,WAAmB;IAEnB,eAAM,CAAC,KAAK,CAAC,6BAA6B,WAAW,GAAG,CAAC,CAAC;IAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,eAAM,CAAC,KAAK,CACpC,IAAA,uBAAc,EAAC,OAAO,CAAC,EACvB,yBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAC3E,CAAC,MAAM,EAAE,CAAC;IACX,IAAI,GAAG,EAAE,CAAC;QACR,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,sCAAsC,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,CAAC,MAAM,IAAA,kBAAa,EAAC,YAAY,EAAE,MAAM,CAAC,CAAE,CAAC;IAClE,MAAM,eAAe,GAAG,eAAM,CAAC,KAAK,CAClC,YAAY,EACZ,iBAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CACvC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEf,IAAI,aAAiC,CAAC;IACtC,IAAA,sBAAS,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;QAC1B,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;gBACrB,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC;YACnC,CAAC;YACD,OAAO;gBACL,GAAG,GAAG;gBACN,wFAAwF;gBACxF,iCAAiC;gBACjC,WAAW,EAAE,+BAA+B;gBAC5C,UAAU,EAAE,0CAAwB,CAAC,EAAE;gBACvC,kBAAkB,EAAE,QAAQ;gBAC5B,YAAY,EAAE,IAAI;aACnB,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,CAAC;QACnD,IAAI,WAAW,IAAI,WAAW,IAAI,eAAe,EAAE,CAAC;YAClD,GAAG,CAAC,aAAa,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,oBAAoB,GAAwB,EAAE,CAAC;IAErD,IAAI,YAAE,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;QACrC,oBAAoB,CAAC,MAAM,GAAG,aAAa,CAAC;IAC9C,CAAC;IACD,GAAG,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IAEhD,wBAAwB;IACxB,IAAI,QAAQ,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC9D,uBAAuB;IACvB,IAAI,MAAM,IAAA,oBAAe,EAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,GAAG,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,0BAA0B;QAC1B,QAAQ,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC7D,IAAI,MAAM,IAAA,oBAAe,EAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,GAAG,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { filterMap } from '../../../util/filter-map';\nimport {\n getSiblingFileName,\n localPathExists,\n readLocalFile,\n} from '../../../util/fs';\nimport { Result } from '../../../util/result';\nimport { stripTemplates } from '../../../util/string';\nimport { GithubReleasesDatasource } from '../../datasource/github-releases';\nimport type { PackageFileContent } from '../types';\nimport { Lockfile, PoetrySchemaToml } from './schema';\n\nexport async function extractPackageFile(\n content: string,\n packageFile: string,\n): Promise<PackageFileContent | null> {\n logger.trace(`poetry.extractPackageFile(${packageFile})`);\n const { val: res, err } = Result.parse(\n stripTemplates(content),\n PoetrySchemaToml.transform(({ packageFileContent }) => packageFileContent),\n ).unwrap();\n if (err) {\n logger.debug({ packageFile, err }, `Poetry: error parsing pyproject.toml`);\n return null;\n }\n\n const lockfileName = getSiblingFileName(packageFile, 'poetry.lock');\n const lockContents = (await readLocalFile(lockfileName, 'utf8'))!;\n const lockfileMapping = Result.parse(\n lockContents,\n Lockfile.transform(({ lock }) => lock),\n ).unwrapOr({});\n\n let pythonVersion: string | undefined;\n filterMap(res.deps, (dep) => {\n if (dep.depName === 'python') {\n if (dep.currentValue) {\n pythonVersion = dep.currentValue;\n }\n return {\n ...dep,\n // We use containerbase python as source, as there are a lot docker tags which can cause\n // issues with poetry versioning.\n packageName: 'containerbase/python-prebuild',\n datasource: GithubReleasesDatasource.id,\n commitMessageTopic: 'Python',\n registryUrls: null,\n };\n }\n\n const packageName = dep.packageName ?? dep.depName;\n if (packageName && packageName in lockfileMapping) {\n dep.lockedVersion = lockfileMapping[packageName];\n }\n\n return dep;\n });\n\n if (!res.deps.length) {\n return null;\n }\n\n const extractedConstraints: Record<string, any> = {};\n\n if (is.nonEmptyString(pythonVersion)) {\n extractedConstraints.python = pythonVersion;\n }\n res.extractedConstraints = extractedConstraints;\n\n // Try poetry.lock first\n let lockFile = getSiblingFileName(packageFile, 'poetry.lock');\n // istanbul ignore next\n if (await localPathExists(lockFile)) {\n res.lockFiles = [lockFile];\n } else {\n // Try pyproject.lock next\n lockFile = getSiblingFileName(packageFile, 'pyproject.lock');\n if (await localPathExists(lockFile)) {\n res.lockFiles = [lockFile];\n }\n }\n return res;\n}\n"]}
@@ -8,21 +8,21 @@ export declare const PoetrySource: z.ZodObject<{
8
8
  priority: z.ZodDefault<z.ZodEnum<["default", "primary", "secondary", "supplemental", "explicit"]>>;
9
9
  }, "strip", z.ZodTypeAny, {
10
10
  name: string;
11
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
11
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
12
12
  url?: string | undefined;
13
13
  }, {
14
14
  name: string;
15
15
  url?: string | undefined;
16
- priority?: "explicit" | "default" | "primary" | "secondary" | "supplemental" | undefined;
16
+ priority?: "default" | "explicit" | "primary" | "secondary" | "supplemental" | undefined;
17
17
  }>;
18
18
  export type PoetrySource = z.infer<typeof PoetrySource>;
19
19
  export declare const PoetrySources: z.ZodCatch<z.ZodEffects<z.ZodEffects<z.ZodArray<z.ZodAny, "many">, {
20
20
  name: string;
21
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
21
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
22
22
  url?: string | undefined;
23
23
  }[], any[]>, {
24
24
  name: string;
25
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
25
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
26
26
  url?: string | undefined;
27
27
  }[], any[]>>;
28
28
  export declare const PoetrySectionSchema: z.ZodEffects<z.ZodObject<{
@@ -32,34 +32,34 @@ export declare const PoetrySectionSchema: z.ZodEffects<z.ZodObject<{
32
32
  group: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodAny>, Record<string, PackageDependency<Record<string, any>>[]>, Record<string, any>>, PackageDependency<Record<string, any>>[], Record<string, any>>>;
33
33
  source: z.ZodCatch<z.ZodEffects<z.ZodEffects<z.ZodArray<z.ZodAny, "many">, {
34
34
  name: string;
35
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
35
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
36
36
  url?: string | undefined;
37
37
  }[], any[]>, {
38
38
  name: string;
39
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
39
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
40
40
  url?: string | undefined;
41
41
  }[], any[]>>;
42
42
  }, "strip", z.ZodTypeAny, {
43
43
  source: {
44
44
  name: string;
45
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
45
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
46
46
  url?: string | undefined;
47
47
  }[];
48
48
  group?: PackageDependency<Record<string, any>>[] | undefined;
49
- version?: string | undefined;
50
49
  dependencies?: PackageDependency<Record<string, any>>[] | undefined;
50
+ version?: string | undefined;
51
51
  'dev-dependencies'?: PackageDependency<Record<string, any>>[] | undefined;
52
52
  }, {
53
- source?: unknown;
54
53
  group?: Record<string, any> | undefined;
55
- version?: unknown;
56
54
  dependencies?: Record<string, any> | undefined;
55
+ version?: unknown;
56
+ source?: unknown;
57
57
  'dev-dependencies'?: Record<string, any> | undefined;
58
58
  }>, PackageFileContent<Record<string, any>>, {
59
- source?: unknown;
60
59
  group?: Record<string, any> | undefined;
61
- version?: unknown;
62
60
  dependencies?: Record<string, any> | undefined;
61
+ version?: unknown;
62
+ source?: unknown;
63
63
  'dev-dependencies'?: Record<string, any> | undefined;
64
64
  }>;
65
65
  export type PoetrySectionSchema = z.infer<typeof PoetrySectionSchema>;
@@ -72,52 +72,52 @@ export declare const PoetrySchema: z.ZodEffects<z.ZodObject<{
72
72
  group: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodAny>, Record<string, PackageDependency<Record<string, any>>[]>, Record<string, any>>, PackageDependency<Record<string, any>>[], Record<string, any>>>;
73
73
  source: z.ZodCatch<z.ZodEffects<z.ZodEffects<z.ZodArray<z.ZodAny, "many">, {
74
74
  name: string;
75
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
75
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
76
76
  url?: string | undefined;
77
77
  }[], any[]>, {
78
78
  name: string;
79
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
79
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
80
80
  url?: string | undefined;
81
81
  }[], any[]>>;
82
82
  }, "strip", z.ZodTypeAny, {
83
83
  source: {
84
84
  name: string;
85
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
85
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
86
86
  url?: string | undefined;
87
87
  }[];
88
88
  group?: PackageDependency<Record<string, any>>[] | undefined;
89
- version?: string | undefined;
90
89
  dependencies?: PackageDependency<Record<string, any>>[] | undefined;
90
+ version?: string | undefined;
91
91
  'dev-dependencies'?: PackageDependency<Record<string, any>>[] | undefined;
92
92
  }, {
93
- source?: unknown;
94
93
  group?: Record<string, any> | undefined;
95
- version?: unknown;
96
94
  dependencies?: Record<string, any> | undefined;
95
+ version?: unknown;
96
+ source?: unknown;
97
97
  'dev-dependencies'?: Record<string, any> | undefined;
98
98
  }>, PackageFileContent<Record<string, any>>, {
99
- source?: unknown;
100
99
  group?: Record<string, any> | undefined;
101
- version?: unknown;
102
100
  dependencies?: Record<string, any> | undefined;
101
+ version?: unknown;
102
+ source?: unknown;
103
103
  'dev-dependencies'?: Record<string, any> | undefined;
104
104
  }>;
105
105
  }, "strip", z.ZodTypeAny, {
106
106
  poetry: PackageFileContent<Record<string, any>>;
107
107
  }, {
108
108
  poetry: {
109
- source?: unknown;
110
109
  group?: Record<string, any> | undefined;
111
- version?: unknown;
112
110
  dependencies?: Record<string, any> | undefined;
111
+ version?: unknown;
112
+ source?: unknown;
113
113
  'dev-dependencies'?: Record<string, any> | undefined;
114
114
  };
115
115
  }>, PackageFileContent<Record<string, any>>, {
116
116
  poetry: {
117
- source?: unknown;
118
117
  group?: Record<string, any> | undefined;
119
- version?: unknown;
120
118
  dependencies?: Record<string, any> | undefined;
119
+ version?: unknown;
120
+ source?: unknown;
121
121
  'dev-dependencies'?: Record<string, any> | undefined;
122
122
  };
123
123
  }>;
@@ -143,10 +143,10 @@ export declare const PoetrySchema: z.ZodEffects<z.ZodObject<{
143
143
  }, {
144
144
  tool: {
145
145
  poetry: {
146
- source?: unknown;
147
146
  group?: Record<string, any> | undefined;
148
- version?: unknown;
149
147
  dependencies?: Record<string, any> | undefined;
148
+ version?: unknown;
149
+ source?: unknown;
150
150
  'dev-dependencies'?: Record<string, any> | undefined;
151
151
  };
152
152
  };
@@ -157,10 +157,10 @@ export declare const PoetrySchema: z.ZodEffects<z.ZodObject<{
157
157
  }, {
158
158
  tool: {
159
159
  poetry: {
160
- source?: unknown;
161
160
  group?: Record<string, any> | undefined;
162
- version?: unknown;
163
161
  dependencies?: Record<string, any> | undefined;
162
+ version?: unknown;
163
+ source?: unknown;
164
164
  'dev-dependencies'?: Record<string, any> | undefined;
165
165
  };
166
166
  };
@@ -176,52 +176,52 @@ export declare const PoetrySchemaToml: z.ZodPipeline<z.ZodEffects<z.ZodString, u
176
176
  group: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodAny>, Record<string, PackageDependency<Record<string, any>>[]>, Record<string, any>>, PackageDependency<Record<string, any>>[], Record<string, any>>>;
177
177
  source: z.ZodCatch<z.ZodEffects<z.ZodEffects<z.ZodArray<z.ZodAny, "many">, {
178
178
  name: string;
179
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
179
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
180
180
  url?: string | undefined;
181
181
  }[], any[]>, {
182
182
  name: string;
183
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
183
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
184
184
  url?: string | undefined;
185
185
  }[], any[]>>;
186
186
  }, "strip", z.ZodTypeAny, {
187
187
  source: {
188
188
  name: string;
189
- priority: "explicit" | "default" | "primary" | "secondary" | "supplemental";
189
+ priority: "default" | "explicit" | "primary" | "secondary" | "supplemental";
190
190
  url?: string | undefined;
191
191
  }[];
192
192
  group?: PackageDependency<Record<string, any>>[] | undefined;
193
- version?: string | undefined;
194
193
  dependencies?: PackageDependency<Record<string, any>>[] | undefined;
194
+ version?: string | undefined;
195
195
  'dev-dependencies'?: PackageDependency<Record<string, any>>[] | undefined;
196
196
  }, {
197
- source?: unknown;
198
197
  group?: Record<string, any> | undefined;
199
- version?: unknown;
200
198
  dependencies?: Record<string, any> | undefined;
199
+ version?: unknown;
200
+ source?: unknown;
201
201
  'dev-dependencies'?: Record<string, any> | undefined;
202
202
  }>, PackageFileContent<Record<string, any>>, {
203
- source?: unknown;
204
203
  group?: Record<string, any> | undefined;
205
- version?: unknown;
206
204
  dependencies?: Record<string, any> | undefined;
205
+ version?: unknown;
206
+ source?: unknown;
207
207
  'dev-dependencies'?: Record<string, any> | undefined;
208
208
  }>;
209
209
  }, "strip", z.ZodTypeAny, {
210
210
  poetry: PackageFileContent<Record<string, any>>;
211
211
  }, {
212
212
  poetry: {
213
- source?: unknown;
214
213
  group?: Record<string, any> | undefined;
215
- version?: unknown;
216
214
  dependencies?: Record<string, any> | undefined;
215
+ version?: unknown;
216
+ source?: unknown;
217
217
  'dev-dependencies'?: Record<string, any> | undefined;
218
218
  };
219
219
  }>, PackageFileContent<Record<string, any>>, {
220
220
  poetry: {
221
- source?: unknown;
222
221
  group?: Record<string, any> | undefined;
223
- version?: unknown;
224
222
  dependencies?: Record<string, any> | undefined;
223
+ version?: unknown;
224
+ source?: unknown;
225
225
  'dev-dependencies'?: Record<string, any> | undefined;
226
226
  };
227
227
  }>;
@@ -247,10 +247,10 @@ export declare const PoetrySchemaToml: z.ZodPipeline<z.ZodEffects<z.ZodString, u
247
247
  }, {
248
248
  tool: {
249
249
  poetry: {
250
- source?: unknown;
251
250
  group?: Record<string, any> | undefined;
252
- version?: unknown;
253
251
  dependencies?: Record<string, any> | undefined;
252
+ version?: unknown;
253
+ source?: unknown;
254
254
  'dev-dependencies'?: Record<string, any> | undefined;
255
255
  };
256
256
  };
@@ -261,10 +261,10 @@ export declare const PoetrySchemaToml: z.ZodPipeline<z.ZodEffects<z.ZodString, u
261
261
  }, {
262
262
  tool: {
263
263
  poetry: {
264
- source?: unknown;
265
264
  group?: Record<string, any> | undefined;
266
- version?: unknown;
267
265
  dependencies?: Record<string, any> | undefined;
266
+ version?: unknown;
267
+ source?: unknown;
268
268
  'dev-dependencies'?: Record<string, any> | undefined;
269
269
  };
270
270
  };
@@ -291,16 +291,16 @@ export declare const Lockfile: z.ZodEffects<z.ZodPipeline<z.ZodEffects<z.ZodStri
291
291
  'python-versions'?: unknown;
292
292
  }>>;
293
293
  }, "strip", z.ZodTypeAny, {
294
+ package: {
295
+ [k: string]: string;
296
+ };
294
297
  metadata: {
295
298
  poetryConstraint: string | undefined;
296
299
  pythonVersions: string | undefined;
297
300
  };
298
- package: {
299
- [k: string]: string;
300
- };
301
301
  }, {
302
- metadata?: unknown;
303
302
  package?: unknown;
303
+ metadata?: unknown;
304
304
  }>>, {
305
305
  lock: {
306
306
  [k: string]: string;
@@ -68,12 +68,12 @@ export declare const ClusterProfile: z.ZodObject<z.objectUtil.extendShape<{
68
68
  helmCharts?: any[] | undefined;
69
69
  }>;
70
70
  }>, "strip", z.ZodTypeAny, {
71
+ apiVersion: string;
71
72
  metadata: {
72
73
  name: string;
73
74
  namespace?: string | undefined;
74
75
  };
75
76
  kind: "ClusterProfile";
76
- apiVersion: string;
77
77
  spec: {
78
78
  helmCharts?: {
79
79
  repositoryName: string;
@@ -83,12 +83,12 @@ export declare const ClusterProfile: z.ZodObject<z.objectUtil.extendShape<{
83
83
  }[] | undefined;
84
84
  };
85
85
  }, {
86
+ apiVersion: string;
86
87
  metadata: {
87
88
  name: string;
88
89
  namespace?: string | undefined;
89
90
  };
90
91
  kind: "ClusterProfile";
91
- apiVersion: string;
92
92
  spec: {
93
93
  helmCharts?: any[] | undefined;
94
94
  };
@@ -127,12 +127,12 @@ export declare const Profile: z.ZodObject<z.objectUtil.extendShape<{
127
127
  helmCharts?: any[] | undefined;
128
128
  }>;
129
129
  }>, "strip", z.ZodTypeAny, {
130
+ apiVersion: string;
130
131
  metadata: {
131
132
  name: string;
132
133
  namespace?: string | undefined;
133
134
  };
134
135
  kind: "Profile";
135
- apiVersion: string;
136
136
  spec: {
137
137
  helmCharts?: {
138
138
  repositoryName: string;
@@ -142,12 +142,12 @@ export declare const Profile: z.ZodObject<z.objectUtil.extendShape<{
142
142
  }[] | undefined;
143
143
  };
144
144
  }, {
145
+ apiVersion: string;
145
146
  metadata: {
146
147
  name: string;
147
148
  namespace?: string | undefined;
148
149
  };
149
150
  kind: "Profile";
150
- apiVersion: string;
151
151
  spec: {
152
152
  helmCharts?: any[] | undefined;
153
153
  };
@@ -186,12 +186,12 @@ export declare const EventTrigger: z.ZodObject<z.objectUtil.extendShape<{
186
186
  helmCharts?: any[] | undefined;
187
187
  }>;
188
188
  }>, "strip", z.ZodTypeAny, {
189
+ apiVersion: string;
189
190
  metadata: {
190
191
  name: string;
191
192
  namespace?: string | undefined;
192
193
  };
193
194
  kind: "EventTrigger";
194
- apiVersion: string;
195
195
  spec: {
196
196
  helmCharts?: {
197
197
  repositoryName: string;
@@ -201,12 +201,12 @@ export declare const EventTrigger: z.ZodObject<z.objectUtil.extendShape<{
201
201
  }[] | undefined;
202
202
  };
203
203
  }, {
204
+ apiVersion: string;
204
205
  metadata: {
205
206
  name: string;
206
207
  namespace?: string | undefined;
207
208
  };
208
209
  kind: "EventTrigger";
209
- apiVersion: string;
210
210
  spec: {
211
211
  helmCharts?: any[] | undefined;
212
212
  };
@@ -245,12 +245,12 @@ export declare const ProfileDefinition: z.ZodUnion<[z.ZodObject<z.objectUtil.ext
245
245
  helmCharts?: any[] | undefined;
246
246
  }>;
247
247
  }>, "strip", z.ZodTypeAny, {
248
+ apiVersion: string;
248
249
  metadata: {
249
250
  name: string;
250
251
  namespace?: string | undefined;
251
252
  };
252
253
  kind: "Profile";
253
- apiVersion: string;
254
254
  spec: {
255
255
  helmCharts?: {
256
256
  repositoryName: string;
@@ -260,12 +260,12 @@ export declare const ProfileDefinition: z.ZodUnion<[z.ZodObject<z.objectUtil.ext
260
260
  }[] | undefined;
261
261
  };
262
262
  }, {
263
+ apiVersion: string;
263
264
  metadata: {
264
265
  name: string;
265
266
  namespace?: string | undefined;
266
267
  };
267
268
  kind: "Profile";
268
- apiVersion: string;
269
269
  spec: {
270
270
  helmCharts?: any[] | undefined;
271
271
  };
@@ -303,12 +303,12 @@ export declare const ProfileDefinition: z.ZodUnion<[z.ZodObject<z.objectUtil.ext
303
303
  helmCharts?: any[] | undefined;
304
304
  }>;
305
305
  }>, "strip", z.ZodTypeAny, {
306
+ apiVersion: string;
306
307
  metadata: {
307
308
  name: string;
308
309
  namespace?: string | undefined;
309
310
  };
310
311
  kind: "ClusterProfile";
311
- apiVersion: string;
312
312
  spec: {
313
313
  helmCharts?: {
314
314
  repositoryName: string;
@@ -318,12 +318,12 @@ export declare const ProfileDefinition: z.ZodUnion<[z.ZodObject<z.objectUtil.ext
318
318
  }[] | undefined;
319
319
  };
320
320
  }, {
321
+ apiVersion: string;
321
322
  metadata: {
322
323
  name: string;
323
324
  namespace?: string | undefined;
324
325
  };
325
326
  kind: "ClusterProfile";
326
- apiVersion: string;
327
327
  spec: {
328
328
  helmCharts?: any[] | undefined;
329
329
  };
@@ -361,12 +361,12 @@ export declare const ProfileDefinition: z.ZodUnion<[z.ZodObject<z.objectUtil.ext
361
361
  helmCharts?: any[] | undefined;
362
362
  }>;
363
363
  }>, "strip", z.ZodTypeAny, {
364
+ apiVersion: string;
364
365
  metadata: {
365
366
  name: string;
366
367
  namespace?: string | undefined;
367
368
  };
368
369
  kind: "EventTrigger";
369
- apiVersion: string;
370
370
  spec: {
371
371
  helmCharts?: {
372
372
  repositoryName: string;
@@ -376,12 +376,12 @@ export declare const ProfileDefinition: z.ZodUnion<[z.ZodObject<z.objectUtil.ext
376
376
  }[] | undefined;
377
377
  };
378
378
  }, {
379
+ apiVersion: string;
379
380
  metadata: {
380
381
  name: string;
381
382
  namespace?: string | undefined;
382
383
  };
383
384
  kind: "EventTrigger";
384
- apiVersion: string;
385
385
  spec: {
386
386
  helmCharts?: any[] | undefined;
387
387
  };