renovate 42.0.0-next.1 → 42.0.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.
- package/dist/config/app-strings.d.ts +2 -1
- package/dist/config/app-strings.js +10 -2
- package/dist/config/app-strings.js.map +1 -1
- package/dist/config/decrypt/bcpgp.d.ts +1 -0
- package/dist/config/decrypt/bcpgp.js +57 -0
- package/dist/config/decrypt/bcpgp.js.map +1 -0
- package/dist/config/decrypt/openpgp.js +0 -4
- package/dist/config/decrypt/openpgp.js.map +1 -1
- package/dist/config/decrypt.d.ts +1 -1
- package/dist/config/decrypt.js +9 -26
- package/dist/config/decrypt.js.map +1 -1
- package/dist/config/global.js +1 -0
- package/dist/config/global.js.map +1 -1
- package/dist/config/migrations/custom/schedule-migration.js +9 -11
- package/dist/config/migrations/custom/schedule-migration.js.map +1 -1
- package/dist/config/migrations/custom/unpublish-safe-migration.js +3 -2
- package/dist/config/migrations/custom/unpublish-safe-migration.js.map +1 -1
- package/dist/config/options/index.js +49 -2
- package/dist/config/options/index.js.map +1 -1
- package/dist/config/presets/common.js +1 -0
- package/dist/config/presets/common.js.map +1 -1
- package/dist/config/presets/internal/abandonments.js +4 -1
- package/dist/config/presets/internal/abandonments.js.map +1 -1
- package/dist/config/presets/internal/config.js +15 -0
- package/dist/config/presets/internal/config.js.map +1 -1
- package/dist/config/presets/internal/custom-managers.js +2 -2
- package/dist/config/presets/internal/custom-managers.js.map +1 -1
- package/dist/config/presets/internal/default.js +12 -1
- package/dist/config/presets/internal/default.js.map +1 -1
- package/dist/config/presets/internal/group.js +13 -0
- package/dist/config/presets/internal/group.js.map +1 -1
- package/dist/config/presets/internal/npm.js +1 -8
- package/dist/config/presets/internal/npm.js.map +1 -1
- package/dist/config/presets/internal/packages.js +5 -1
- package/dist/config/presets/internal/packages.js.map +1 -1
- package/dist/config/presets/internal/security.js +8 -0
- package/dist/config/presets/internal/security.js.map +1 -1
- package/dist/config/presets/internal/workarounds.js +2 -2
- package/dist/config/presets/internal/workarounds.js.map +1 -1
- package/dist/config/schema.d.ts +1 -1
- package/dist/config/secrets.js +2 -2
- package/dist/config/secrets.js.map +1 -1
- package/dist/config/types.d.ts +26 -1
- package/dist/config/types.js.map +1 -1
- package/dist/config/validation.js +4 -3
- package/dist/config/validation.js.map +1 -1
- package/dist/config-validator.js +1 -1
- package/dist/config-validator.js.map +1 -1
- package/dist/constants/platforms.js +1 -0
- package/dist/constants/platforms.js.map +1 -1
- package/dist/data/monorepo.json +13 -2
- package/dist/data/node-js-schedule.json +1 -1
- package/dist/data/replacements.json +34 -0
- package/dist/data-files.generated.js +3 -3
- package/dist/data-files.generated.js.map +1 -1
- package/dist/logger/renovate-logger.d.ts +1 -0
- package/dist/logger/renovate-logger.js +3 -0
- package/dist/logger/renovate-logger.js.map +1 -1
- package/dist/logger/utils.js +2 -1
- package/dist/logger/utils.js.map +1 -1
- package/dist/manager-list.generated.d.ts +1 -1
- package/dist/manager-list.generated.js +1 -1
- package/dist/manager-list.generated.js.map +1 -1
- package/dist/modules/datasource/api.js +4 -0
- package/dist/modules/datasource/api.js.map +1 -1
- package/dist/modules/datasource/aws-eks-addon/schema.d.ts +1 -8
- package/dist/modules/datasource/aws-eks-addon/schema.js +7 -5
- package/dist/modules/datasource/aws-eks-addon/schema.js.map +1 -1
- package/dist/modules/datasource/azure-pipelines-tasks/schema.d.ts +12 -12
- package/dist/modules/datasource/bitrise/schema.d.ts +1 -1
- package/dist/modules/datasource/buildpacks-registry/index.js +1 -1
- package/dist/modules/datasource/buildpacks-registry/index.js.map +1 -1
- package/dist/modules/datasource/buildpacks-registry/schema.d.ts +1 -1
- package/dist/modules/datasource/buildpacks-registry/schema.js +2 -2
- package/dist/modules/datasource/buildpacks-registry/schema.js.map +1 -1
- package/dist/modules/datasource/cdnjs/index.js +2 -2
- package/dist/modules/datasource/cdnjs/index.js.map +1 -1
- package/dist/modules/datasource/cdnjs/schema.d.ts +8 -8
- package/dist/modules/datasource/cdnjs/schema.js +3 -3
- package/dist/modules/datasource/cdnjs/schema.js.map +1 -1
- package/dist/modules/datasource/conan/schema.d.ts +3 -3
- package/dist/modules/datasource/conda/prefix-dev.js +1 -1
- package/dist/modules/datasource/conda/prefix-dev.js.map +1 -1
- package/dist/modules/datasource/conda/schema/prefix-dev.d.ts +7 -7
- package/dist/modules/datasource/conda/schema/prefix-dev.js +2 -2
- package/dist/modules/datasource/conda/schema/prefix-dev.js.map +1 -1
- package/dist/modules/datasource/cpan/schema.js +2 -2
- package/dist/modules/datasource/cpan/schema.js.map +1 -1
- package/dist/modules/datasource/crate/index.js +12 -11
- package/dist/modules/datasource/crate/index.js.map +1 -1
- package/dist/modules/datasource/crate/schema.d.ts +1 -1
- package/dist/modules/datasource/crate/schema.js +2 -2
- package/dist/modules/datasource/crate/schema.js.map +1 -1
- package/dist/modules/datasource/custom/index.d.ts +1 -1
- package/dist/modules/datasource/custom/index.js +2 -2
- package/dist/modules/datasource/custom/index.js.map +1 -1
- package/dist/modules/datasource/custom/schema.d.ts +1 -1
- package/dist/modules/datasource/custom/schema.js +2 -2
- package/dist/modules/datasource/custom/schema.js.map +1 -1
- package/dist/modules/datasource/docker/index.d.ts +1 -1
- package/dist/modules/datasource/docker/index.js +4 -1
- package/dist/modules/datasource/docker/index.js.map +1 -1
- package/dist/modules/datasource/docker/schema.d.ts +4 -4
- package/dist/modules/datasource/forgejo-releases/index.js +3 -3
- package/dist/modules/datasource/forgejo-releases/index.js.map +1 -1
- package/dist/modules/datasource/forgejo-releases/schema.d.ts +6 -6
- package/dist/modules/datasource/forgejo-releases/schema.js +3 -3
- package/dist/modules/datasource/forgejo-releases/schema.js.map +1 -1
- package/dist/modules/datasource/forgejo-tags/index.js +3 -3
- package/dist/modules/datasource/forgejo-tags/index.js.map +1 -1
- package/dist/modules/datasource/forgejo-tags/schema.d.ts +4 -4
- package/dist/modules/datasource/forgejo-tags/schema.js +7 -7
- package/dist/modules/datasource/forgejo-tags/schema.js.map +1 -1
- package/dist/modules/datasource/gitea-releases/index.js +3 -3
- package/dist/modules/datasource/gitea-releases/index.js.map +1 -1
- package/dist/modules/datasource/gitea-releases/schema.d.ts +6 -6
- package/dist/modules/datasource/gitea-releases/schema.js +3 -3
- package/dist/modules/datasource/gitea-releases/schema.js.map +1 -1
- package/dist/modules/datasource/gitea-tags/index.js +3 -3
- package/dist/modules/datasource/gitea-tags/index.js.map +1 -1
- package/dist/modules/datasource/gitea-tags/schema.d.ts +4 -4
- package/dist/modules/datasource/gitea-tags/schema.js +7 -7
- package/dist/modules/datasource/gitea-tags/schema.js.map +1 -1
- package/dist/modules/datasource/github-runners/index.js +5 -3
- package/dist/modules/datasource/github-runners/index.js.map +1 -1
- package/dist/modules/datasource/go/base.js +3 -2
- package/dist/modules/datasource/go/base.js.map +1 -1
- package/dist/modules/datasource/go/common.js +13 -9
- package/dist/modules/datasource/go/common.js.map +1 -1
- package/dist/modules/datasource/go/index.js +7 -2
- package/dist/modules/datasource/go/index.js.map +1 -1
- package/dist/modules/datasource/go/releases-direct.d.ts +2 -0
- package/dist/modules/datasource/go/releases-direct.js +7 -1
- package/dist/modules/datasource/go/releases-direct.js.map +1 -1
- package/dist/modules/datasource/go/releases-goproxy.js +1 -1
- package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
- package/dist/modules/datasource/helm/index.js +1 -1
- package/dist/modules/datasource/helm/index.js.map +1 -1
- package/dist/modules/datasource/helm/schema.d.ts +2 -2
- package/dist/modules/datasource/helm/schema.js +4 -4
- package/dist/modules/datasource/helm/schema.js.map +1 -1
- package/dist/modules/datasource/jsr/common.d.ts +1 -0
- package/dist/modules/datasource/jsr/common.js +12 -0
- package/dist/modules/datasource/jsr/common.js.map +1 -0
- package/dist/modules/datasource/jsr/index.d.ts +12 -0
- package/dist/modules/datasource/jsr/index.js +66 -0
- package/dist/modules/datasource/jsr/index.js.map +1 -0
- package/dist/modules/datasource/jsr/schema.d.ts +27 -0
- package/dist/modules/datasource/jsr/schema.js +20 -0
- package/dist/modules/datasource/jsr/schema.js.map +1 -0
- package/dist/modules/datasource/jsr/util.d.ts +4 -0
- package/dist/modules/datasource/jsr/util.js +53 -0
- package/dist/modules/datasource/jsr/util.js.map +1 -0
- package/dist/modules/datasource/maven/index.js +14 -0
- package/dist/modules/datasource/maven/index.js.map +1 -1
- package/dist/modules/datasource/maven/util.js +10 -0
- package/dist/modules/datasource/maven/util.js.map +1 -1
- package/dist/modules/datasource/npm/get.js +2 -1
- package/dist/modules/datasource/npm/get.js.map +1 -1
- package/dist/modules/datasource/npm/types.d.ts +7 -0
- package/dist/modules/datasource/npm/types.js.map +1 -1
- package/dist/modules/datasource/nuget/v3.js +3 -1
- package/dist/modules/datasource/nuget/v3.js.map +1 -1
- package/dist/modules/datasource/packagist/schema.d.ts +12 -12
- package/dist/modules/datasource/pypi/index.d.ts +1 -0
- package/dist/modules/datasource/pypi/index.js +1 -0
- package/dist/modules/datasource/pypi/index.js.map +1 -1
- package/dist/modules/datasource/python-version/schema.d.ts +3 -3
- package/dist/modules/datasource/rpm/index.d.ts +7 -0
- package/dist/modules/datasource/rpm/index.js +7 -0
- package/dist/modules/datasource/rpm/index.js.map +1 -1
- package/dist/modules/datasource/types.d.ts +2 -0
- package/dist/modules/datasource/types.js.map +1 -1
- package/dist/modules/datasource/typst/index.d.ts +11 -0
- package/dist/modules/datasource/typst/index.js +65 -0
- package/dist/modules/datasource/typst/index.js.map +1 -0
- package/dist/modules/datasource/typst/schema.d.ts +31 -0
- package/dist/modules/datasource/typst/schema.js +28 -0
- package/dist/modules/datasource/typst/schema.js.map +1 -0
- package/dist/modules/datasource/unity3d-packages/schema.d.ts +4 -4
- package/dist/modules/manager/api.js +6 -0
- package/dist/modules/manager/api.js.map +1 -1
- package/dist/modules/manager/argocd/extract.js +1 -1
- package/dist/modules/manager/argocd/extract.js.map +1 -1
- package/dist/modules/manager/argocd/schema.d.ts +1 -1
- package/dist/modules/manager/argocd/schema.js +2 -2
- package/dist/modules/manager/argocd/schema.js.map +1 -1
- package/dist/modules/manager/azure-pipelines/schema.d.ts +1 -1
- package/dist/modules/manager/batect/extract.js +1 -1
- package/dist/modules/manager/batect/extract.js.map +1 -1
- package/dist/modules/manager/batect/schema.d.ts +4 -4
- package/dist/modules/manager/batect/schema.js +2 -2
- package/dist/modules/manager/batect/schema.js.map +1 -1
- package/dist/modules/manager/bazel/rules/docker.d.ts +3 -3
- package/dist/modules/manager/bazel/rules/git.d.ts +5 -5
- package/dist/modules/manager/bazel/rules/go.d.ts +5 -5
- package/dist/modules/manager/bazel/rules/oci.d.ts +3 -3
- package/dist/modules/manager/bazel-module/extract.js +5 -0
- package/dist/modules/manager/bazel-module/extract.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/context.d.ts +6 -0
- package/dist/modules/manager/bazel-module/parser/context.js +42 -2
- package/dist/modules/manager/bazel-module/parser/context.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/fragments.d.ts +276 -112
- package/dist/modules/manager/bazel-module/parser/fragments.js +70 -32
- package/dist/modules/manager/bazel-module/parser/fragments.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/index.js +3 -1
- package/dist/modules/manager/bazel-module/parser/index.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/maven.d.ts +27 -27
- package/dist/modules/manager/bazel-module/parser/maven.js +7 -7
- package/dist/modules/manager/bazel-module/parser/maven.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/oci.d.ts +38 -38
- package/dist/modules/manager/bazel-module/parser/oci.js +5 -5
- package/dist/modules/manager/bazel-module/parser/oci.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/repo-rules.d.ts +5 -0
- package/dist/modules/manager/bazel-module/parser/repo-rules.js +71 -0
- package/dist/modules/manager/bazel-module/parser/repo-rules.js.map +1 -0
- package/dist/modules/manager/bazel-module/rules-img.d.ts +229 -0
- package/dist/modules/manager/bazel-module/rules-img.js +74 -0
- package/dist/modules/manager/bazel-module/rules-img.js.map +1 -0
- package/dist/modules/manager/bazel-module/rules.d.ts +101 -101
- package/dist/modules/manager/bazel-module/rules.js +18 -18
- package/dist/modules/manager/bazel-module/rules.js.map +1 -1
- package/dist/modules/manager/bitrise/schema.d.ts +1 -1
- package/dist/modules/manager/bun/artifacts.js +5 -4
- package/dist/modules/manager/bun/artifacts.js.map +1 -1
- package/dist/modules/manager/bundler/locked-version.js +44 -23
- package/dist/modules/manager/bundler/locked-version.js.map +1 -1
- package/dist/modules/manager/cargo/artifacts.js +15 -11
- package/dist/modules/manager/cargo/artifacts.js.map +1 -1
- package/dist/modules/manager/cargo/extract.js +6 -3
- package/dist/modules/manager/cargo/extract.js.map +1 -1
- package/dist/modules/manager/cargo/index.d.ts +0 -1
- package/dist/modules/manager/cargo/index.js +11 -4
- package/dist/modules/manager/cargo/index.js.map +1 -1
- package/dist/modules/manager/cargo/locked-version.d.ts +2 -2
- package/dist/modules/manager/cargo/locked-version.js +1 -1
- package/dist/modules/manager/cargo/locked-version.js.map +1 -1
- package/dist/modules/manager/cargo/schema.d.ts +206 -35
- package/dist/modules/manager/cargo/schema.js +26 -18
- package/dist/modules/manager/cargo/schema.js.map +1 -1
- package/dist/modules/manager/cloudbuild/schema.d.ts +1 -1
- package/dist/modules/manager/composer/schema.d.ts +98 -98
- package/dist/modules/manager/conan/artifacts.js +12 -2
- package/dist/modules/manager/conan/artifacts.js.map +1 -1
- package/dist/modules/manager/conan/extract.js +1 -1
- package/dist/modules/manager/conan/extract.js.map +1 -1
- package/dist/modules/manager/conan/index.d.ts +0 -1
- package/dist/modules/manager/conan/index.js +0 -1
- package/dist/modules/manager/conan/index.js.map +1 -1
- package/dist/modules/manager/copier/artifacts.js +5 -5
- package/dist/modules/manager/copier/artifacts.js.map +1 -1
- package/dist/modules/manager/copier/schema.d.ts +2 -2
- package/dist/modules/manager/copier/schema.js +5 -1
- package/dist/modules/manager/copier/schema.js.map +1 -1
- package/dist/modules/manager/crossplane/extract.js +1 -1
- package/dist/modules/manager/crossplane/extract.js.map +1 -1
- package/dist/modules/manager/crossplane/schema.d.ts +2 -2
- package/dist/modules/manager/crossplane/schema.js +2 -2
- package/dist/modules/manager/crossplane/schema.js.map +1 -1
- package/dist/modules/manager/crow/extract.d.ts +2 -0
- package/dist/modules/manager/crow/extract.js +35 -0
- package/dist/modules/manager/crow/extract.js.map +1 -0
- package/dist/modules/manager/crow/index.d.ts +8 -0
- package/dist/modules/manager/crow/index.js +13 -0
- package/dist/modules/manager/crow/index.js.map +1 -0
- package/dist/modules/manager/crow/schema.d.ts +66 -0
- package/dist/modules/manager/crow/schema.js +15 -0
- package/dist/modules/manager/crow/schema.js.map +1 -0
- package/dist/modules/manager/custom/jsonata/schema.d.ts +1 -1
- package/dist/modules/manager/custom/jsonata/schema.js +4 -4
- package/dist/modules/manager/custom/jsonata/schema.js.map +1 -1
- package/dist/modules/manager/custom/jsonata/utils.js +3 -3
- package/dist/modules/manager/custom/jsonata/utils.js.map +1 -1
- package/dist/modules/manager/devbox/extract.js +1 -1
- package/dist/modules/manager/devbox/extract.js.map +1 -1
- package/dist/modules/manager/devbox/schema.d.ts +1 -1
- package/dist/modules/manager/devbox/schema.js +2 -2
- package/dist/modules/manager/devbox/schema.js.map +1 -1
- package/dist/modules/manager/devcontainer/schema.d.ts +1 -1
- package/dist/modules/manager/fingerprint.generated.js +35 -32
- package/dist/modules/manager/fingerprint.generated.js.map +1 -1
- package/dist/modules/manager/fleet/schema.d.ts +16 -16
- package/dist/modules/manager/flux/schema.d.ts +24 -24
- package/dist/modules/manager/github-actions/community.d.ts +96 -0
- package/dist/modules/manager/github-actions/community.js +116 -10
- package/dist/modules/manager/github-actions/community.js.map +1 -1
- package/dist/modules/manager/github-actions/extract.js +2 -1
- package/dist/modules/manager/github-actions/extract.js.map +1 -1
- package/dist/modules/manager/github-actions/schema.d.ts +3 -3
- package/dist/modules/manager/github-actions/schema.js +7 -7
- package/dist/modules/manager/github-actions/schema.js.map +1 -1
- package/dist/modules/manager/gitlabci/extract.js +2 -0
- package/dist/modules/manager/gitlabci/extract.js.map +1 -1
- package/dist/modules/manager/glasskube/schema.d.ts +12 -12
- package/dist/modules/manager/gleam/schema.d.ts +4 -4
- package/dist/modules/manager/gomod/artifacts.js +8 -4
- package/dist/modules/manager/gomod/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/parser/dependencies.js +23 -2
- package/dist/modules/manager/gradle/parser/dependencies.js.map +1 -1
- package/dist/modules/manager/gradle/parser/objects.js +15 -0
- package/dist/modules/manager/gradle/parser/objects.js.map +1 -1
- package/dist/modules/manager/gradle/parser.js +1 -1
- package/dist/modules/manager/gradle/parser.js.map +1 -1
- package/dist/modules/manager/helmfile/extract.js +26 -21
- package/dist/modules/manager/helmfile/extract.js.map +1 -1
- package/dist/modules/manager/helmfile/index.js +4 -1
- package/dist/modules/manager/helmfile/index.js.map +1 -1
- package/dist/modules/manager/helmfile/schema.d.ts +4 -4
- package/dist/modules/manager/maven-wrapper/artifacts.js +1 -1
- package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/maven-wrapper/extract.js +4 -4
- package/dist/modules/manager/maven-wrapper/extract.js.map +1 -1
- package/dist/modules/manager/maven-wrapper/index.d.ts +1 -1
- package/dist/modules/manager/maven-wrapper/index.js +5 -2
- package/dist/modules/manager/maven-wrapper/index.js.map +1 -1
- package/dist/modules/manager/mise/backends.d.ts +2 -2
- package/dist/modules/manager/mise/backends.js +1 -1
- package/dist/modules/manager/mise/backends.js.map +1 -1
- package/dist/modules/manager/mise/extract.js.map +1 -1
- package/dist/modules/manager/mise/schema.d.ts +6 -29
- package/dist/modules/manager/mise/schema.js +7 -8
- package/dist/modules/manager/mise/schema.js.map +1 -1
- package/dist/modules/manager/mise/upgradeable-tooling.js +1 -1
- package/dist/modules/manager/mise/upgradeable-tooling.js.map +1 -1
- package/dist/modules/manager/mise/utils.d.ts +2 -2
- package/dist/modules/manager/mise/utils.js +1 -1
- package/dist/modules/manager/mise/utils.js.map +1 -1
- package/dist/modules/manager/nix/artifacts.js +2 -2
- package/dist/modules/manager/nix/artifacts.js.map +1 -1
- package/dist/modules/manager/nix/extract.d.ts +2 -2
- package/dist/modules/manager/nix/extract.js +79 -67
- package/dist/modules/manager/nix/extract.js.map +1 -1
- package/dist/modules/manager/nix/index.d.ts +1 -0
- package/dist/modules/manager/nix/index.js +3 -1
- package/dist/modules/manager/nix/index.js.map +1 -1
- package/dist/modules/manager/nix/range.d.ts +3 -0
- package/dist/modules/manager/nix/range.js +10 -0
- package/dist/modules/manager/nix/range.js.map +1 -0
- package/dist/modules/manager/nix/schema.d.ts +42 -28
- package/dist/modules/manager/nix/schema.js +4 -1
- package/dist/modules/manager/nix/schema.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/package-file.d.ts +1 -0
- package/dist/modules/manager/npm/extract/common/package-file.js +8 -0
- package/dist/modules/manager/npm/extract/common/package-file.js.map +1 -1
- package/dist/modules/manager/npm/extract/index.js +24 -7
- package/dist/modules/manager/npm/extract/index.js.map +1 -1
- package/dist/modules/manager/npm/extract/pnpm.d.ts +4 -3
- package/dist/modules/manager/npm/extract/pnpm.js +1 -1
- package/dist/modules/manager/npm/extract/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/extract/post/locked-versions.js +6 -0
- package/dist/modules/manager/npm/extract/post/locked-versions.js.map +1 -1
- package/dist/modules/manager/npm/extract/yarn.d.ts +4 -0
- package/dist/modules/manager/npm/extract/yarn.js +35 -0
- package/dist/modules/manager/npm/extract/yarn.js.map +1 -1
- package/dist/modules/manager/npm/extract/yarnrc.d.ts +4 -4
- package/dist/modules/manager/npm/extract/yarnrc.js +1 -2
- package/dist/modules/manager/npm/extract/yarnrc.js.map +1 -1
- package/dist/modules/manager/npm/index.js +1 -0
- package/dist/modules/manager/npm/index.js.map +1 -1
- package/dist/modules/manager/npm/post-update/index.js +2 -1
- package/dist/modules/manager/npm/post-update/index.js.map +1 -1
- package/dist/modules/manager/npm/post-update/npm.js +14 -1
- package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/pnpm.js +6 -1
- package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/types.d.ts +5 -5
- package/dist/modules/manager/npm/post-update/types.js.map +1 -1
- package/dist/modules/manager/npm/post-update/utils.d.ts +3 -4
- package/dist/modules/manager/npm/post-update/utils.js +2 -13
- package/dist/modules/manager/npm/post-update/utils.js.map +1 -1
- package/dist/modules/manager/npm/schema.d.ts +35 -97
- package/dist/modules/manager/npm/schema.js +21 -16
- package/dist/modules/manager/npm/schema.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/index.js +4 -0
- package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/pnpm.js +1 -1
- package/dist/modules/manager/npm/update/dependency/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/yarn.d.ts +2 -0
- package/dist/modules/manager/npm/update/dependency/yarn.js +102 -0
- package/dist/modules/manager/npm/update/dependency/yarn.js.map +1 -0
- package/dist/modules/manager/npm/utils.d.ts +2 -0
- package/dist/modules/manager/npm/utils.js +10 -0
- package/dist/modules/manager/npm/utils.js.map +1 -1
- package/dist/modules/manager/nuget/extract.js +5 -0
- package/dist/modules/manager/nuget/extract.js.map +1 -1
- package/dist/modules/manager/nuget/schema.d.ts +3 -56
- package/dist/modules/manager/nuget/schema.js +5 -6
- package/dist/modules/manager/nuget/schema.js.map +1 -1
- package/dist/modules/manager/nvm/extract.js +8 -1
- package/dist/modules/manager/nvm/extract.js.map +1 -1
- package/dist/modules/manager/ocb/extract.js +1 -1
- package/dist/modules/manager/ocb/extract.js.map +1 -1
- package/dist/modules/manager/ocb/schema.d.ts +4 -4
- package/dist/modules/manager/ocb/schema.js +9 -9
- package/dist/modules/manager/ocb/schema.js.map +1 -1
- package/dist/modules/manager/pep621/extract.d.ts +1 -1
- package/dist/modules/manager/pep621/extract.js +11 -3
- package/dist/modules/manager/pep621/extract.js.map +1 -1
- package/dist/modules/manager/pep621/processors/abstract.d.ts +10 -0
- package/dist/modules/manager/pep621/processors/abstract.js +25 -0
- package/dist/modules/manager/pep621/processors/abstract.js.map +1 -0
- package/dist/modules/manager/pep621/processors/hatch.d.ts +2 -2
- package/dist/modules/manager/pep621/processors/hatch.js +2 -1
- package/dist/modules/manager/pep621/processors/hatch.js.map +1 -1
- package/dist/modules/manager/pep621/processors/index.d.ts +2 -4
- package/dist/modules/manager/pep621/processors/index.js.map +1 -1
- package/dist/modules/manager/pep621/processors/pdm.d.ts +3 -2
- package/dist/modules/manager/pep621/processors/pdm.js +5 -4
- package/dist/modules/manager/pep621/processors/pdm.js.map +1 -1
- package/dist/modules/manager/pep621/processors/types.d.ts +1 -0
- package/dist/modules/manager/pep621/processors/types.js.map +1 -1
- package/dist/modules/manager/pep621/processors/uv.d.ts +3 -2
- package/dist/modules/manager/pep621/processors/uv.js +8 -6
- package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
- package/dist/modules/manager/pep621/schema.d.ts +35 -257
- package/dist/modules/manager/pep621/schema.js +17 -21
- package/dist/modules/manager/pep621/schema.js.map +1 -1
- package/dist/modules/manager/pep723/extract.js +1 -1
- package/dist/modules/manager/pep723/extract.js.map +1 -1
- package/dist/modules/manager/pep723/schema.d.ts +1 -1
- package/dist/modules/manager/pep723/schema.js +2 -2
- package/dist/modules/manager/pep723/schema.js.map +1 -1
- package/dist/modules/manager/pip-compile/extract.d.ts +1 -1
- package/dist/modules/manager/pip-compile/extract.js +9 -6
- package/dist/modules/manager/pip-compile/extract.js.map +1 -1
- package/dist/modules/manager/pixi/extract.js +4 -7
- package/dist/modules/manager/pixi/extract.js.map +1 -1
- package/dist/modules/manager/pixi/schema.d.ts +296 -4
- package/dist/modules/manager/pixi/schema.js +11 -4
- package/dist/modules/manager/pixi/schema.js.map +1 -1
- package/dist/modules/manager/poetry/artifacts.js +2 -2
- package/dist/modules/manager/poetry/artifacts.js.map +1 -1
- package/dist/modules/manager/poetry/extract.js +1 -1
- package/dist/modules/manager/poetry/extract.js.map +1 -1
- package/dist/modules/manager/poetry/index.d.ts +1 -0
- package/dist/modules/manager/poetry/index.js +2 -1
- package/dist/modules/manager/poetry/index.js.map +1 -1
- package/dist/modules/manager/poetry/schema.d.ts +45 -138
- package/dist/modules/manager/poetry/schema.js +49 -32
- package/dist/modules/manager/poetry/schema.js.map +1 -1
- package/dist/modules/manager/poetry/update-locked.js +2 -2
- package/dist/modules/manager/poetry/update-locked.js.map +1 -1
- package/dist/modules/manager/pre-commit/extract.js +2 -1
- package/dist/modules/manager/pre-commit/extract.js.map +1 -1
- package/dist/modules/manager/pub/extract.js +38 -8
- package/dist/modules/manager/pub/extract.js.map +1 -1
- package/dist/modules/manager/pub/index.d.ts +0 -1
- package/dist/modules/manager/pub/index.js +0 -3
- package/dist/modules/manager/pub/index.js.map +1 -1
- package/dist/modules/manager/pub/schema.d.ts +25 -79
- package/dist/modules/manager/pub/schema.js +17 -10
- package/dist/modules/manager/pub/schema.js.map +1 -1
- package/dist/modules/manager/pub/utils.d.ts +3 -3
- package/dist/modules/manager/pub/utils.js +2 -2
- package/dist/modules/manager/pub/utils.js.map +1 -1
- package/dist/modules/manager/quadlet/extract.d.ts +2 -0
- package/dist/modules/manager/quadlet/extract.js +54 -0
- package/dist/modules/manager/quadlet/extract.js.map +1 -0
- package/dist/modules/manager/quadlet/index.d.ts +8 -0
- package/dist/modules/manager/quadlet/index.js +13 -0
- package/dist/modules/manager/quadlet/index.js.map +1 -0
- package/dist/modules/manager/quadlet/schema.d.ts +45 -0
- package/dist/modules/manager/quadlet/schema.js +23 -0
- package/dist/modules/manager/quadlet/schema.js.map +1 -0
- package/dist/modules/manager/renovate-config-presets/extract.js +1 -1
- package/dist/modules/manager/renovate-config-presets/extract.js.map +1 -1
- package/dist/modules/manager/renovate-config-presets/index.js +1 -1
- package/dist/modules/manager/renovate-config-presets/index.js.map +1 -1
- package/dist/modules/manager/renovate-config-presets/schema.d.ts +1 -1
- package/dist/modules/manager/renovate-config-presets/schema.js +2 -2
- package/dist/modules/manager/renovate-config-presets/schema.js.map +1 -1
- package/dist/modules/manager/swift/extract.js +25 -9
- package/dist/modules/manager/swift/extract.js.map +1 -1
- package/dist/modules/manager/swift/index.js +7 -1
- package/dist/modules/manager/swift/index.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js +1 -1
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js.map +1 -1
- package/dist/modules/manager/terraform/lockfile/hash.js +1 -1
- package/dist/modules/manager/terraform/lockfile/hash.js.map +1 -1
- package/dist/modules/manager/terragrunt/util.js +1 -1
- package/dist/modules/manager/terragrunt/util.js.map +1 -1
- package/dist/modules/manager/types.d.ts +2 -0
- package/dist/modules/manager/types.js.map +1 -1
- package/dist/modules/manager/typst/extract.d.ts +2 -0
- package/dist/modules/manager/typst/extract.js +31 -0
- package/dist/modules/manager/typst/extract.js.map +1 -0
- package/dist/modules/manager/typst/index.d.ts +7 -0
- package/dist/modules/manager/typst/index.js +12 -0
- package/dist/modules/manager/typst/index.js.map +1 -0
- package/dist/modules/manager/util.js +3 -2
- package/dist/modules/manager/util.js.map +1 -1
- package/dist/modules/manager/vendir/schema.d.ts +13 -13
- package/dist/modules/platform/azure/azure-helper.js +1 -1
- package/dist/modules/platform/azure/azure-helper.js.map +1 -1
- package/dist/modules/platform/azure/schema.d.ts +3 -3
- package/dist/modules/platform/azure/schema.js +4 -4
- package/dist/modules/platform/azure/schema.js.map +1 -1
- package/dist/modules/platform/bitbucket/index.js +12 -9
- package/dist/modules/platform/bitbucket/index.js.map +1 -1
- package/dist/modules/platform/bitbucket/schema.d.ts +7 -7
- package/dist/modules/platform/bitbucket/schema.js +7 -7
- package/dist/modules/platform/bitbucket/schema.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/index.d.ts +3 -1
- package/dist/modules/platform/bitbucket-server/index.js +87 -4
- package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/schema.d.ts +106 -11
- package/dist/modules/platform/bitbucket-server/schema.js +13 -7
- package/dist/modules/platform/bitbucket-server/schema.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/utils.d.ts +2 -0
- package/dist/modules/platform/bitbucket-server/utils.js +25 -0
- package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
- package/dist/modules/platform/codecommit/index.d.ts +0 -8
- package/dist/modules/platform/codecommit/index.js +16 -16
- package/dist/modules/platform/codecommit/index.js.map +1 -1
- package/dist/modules/platform/forgejo/index.js +39 -38
- package/dist/modules/platform/forgejo/index.js.map +1 -1
- package/dist/modules/platform/forgejo/types.d.ts +3 -2
- package/dist/modules/platform/forgejo/types.js.map +1 -1
- package/dist/modules/platform/forgejo/utils.d.ts +1 -0
- package/dist/modules/platform/forgejo/utils.js +17 -0
- package/dist/modules/platform/forgejo/utils.js.map +1 -1
- package/dist/modules/platform/gerrit/client.d.ts +1 -1
- package/dist/modules/platform/gerrit/client.js +32 -33
- package/dist/modules/platform/gerrit/client.js.map +1 -1
- package/dist/modules/platform/gerrit/index.d.ts +1 -2
- package/dist/modules/platform/gerrit/index.js +8 -16
- package/dist/modules/platform/gerrit/index.js.map +1 -1
- package/dist/modules/platform/gerrit/scm.js +7 -13
- package/dist/modules/platform/gerrit/scm.js.map +1 -1
- package/dist/modules/platform/gerrit/types.d.ts +27 -1
- package/dist/modules/platform/gerrit/types.js.map +1 -1
- package/dist/modules/platform/gitea/index.js +34 -37
- package/dist/modules/platform/gitea/index.js.map +1 -1
- package/dist/modules/platform/gitea/schema.d.ts +3 -3
- package/dist/modules/platform/gitea/schema.js +3 -3
- package/dist/modules/platform/gitea/schema.js.map +1 -1
- package/dist/modules/platform/gitea/types.d.ts +3 -2
- package/dist/modules/platform/gitea/types.js.map +1 -1
- package/dist/modules/platform/gitea/utils.d.ts +1 -0
- package/dist/modules/platform/gitea/utils.js +17 -0
- package/dist/modules/platform/gitea/utils.js.map +1 -1
- package/dist/modules/platform/github/index.d.ts +1 -1
- package/dist/modules/platform/github/index.js +92 -33
- package/dist/modules/platform/github/index.js.map +1 -1
- package/dist/modules/platform/github/schema.d.ts +32 -2
- package/dist/modules/platform/github/schema.js +32 -8
- package/dist/modules/platform/github/schema.js.map +1 -1
- package/dist/modules/platform/github/types.d.ts +2 -2
- package/dist/modules/platform/github/types.js.map +1 -1
- package/dist/modules/platform/github/user.d.ts +2 -1
- package/dist/modules/platform/github/user.js.map +1 -1
- package/dist/modules/platform/gitlab/index.js.map +1 -1
- package/dist/modules/platform/gitlab/pr-cache.d.ts +0 -2
- package/dist/modules/platform/gitlab/pr-cache.js +28 -37
- package/dist/modules/platform/gitlab/pr-cache.js.map +1 -1
- package/dist/modules/platform/gitlab/utils.js +1 -0
- package/dist/modules/platform/gitlab/utils.js.map +1 -1
- package/dist/modules/platform/types.d.ts +1 -1
- package/dist/modules/platform/types.js.map +1 -1
- package/dist/modules/versioning/api.js +2 -0
- package/dist/modules/versioning/api.js.map +1 -1
- package/dist/modules/versioning/cargo/index.js +7 -7
- package/dist/modules/versioning/cargo/index.js.map +1 -1
- package/dist/modules/versioning/composer/index.js +0 -4
- package/dist/modules/versioning/composer/index.js.map +1 -1
- package/dist/modules/versioning/conan/index.js +1 -1
- package/dist/modules/versioning/conan/index.js.map +1 -1
- package/dist/modules/versioning/conda/index.d.ts +2 -0
- package/dist/modules/versioning/conda/index.js +4 -4
- package/dist/modules/versioning/conda/index.js.map +1 -1
- package/dist/modules/versioning/debian/index.d.ts +1 -1
- package/dist/modules/versioning/debian/index.js +2 -17
- package/dist/modules/versioning/debian/index.js.map +1 -1
- package/dist/modules/versioning/gradle/index.js +2 -2
- package/dist/modules/versioning/gradle/index.js.map +1 -1
- package/dist/modules/versioning/hashicorp/index.js +0 -1
- package/dist/modules/versioning/hashicorp/index.js.map +1 -1
- package/dist/modules/versioning/helm/index.js +0 -1
- package/dist/modules/versioning/helm/index.js.map +1 -1
- package/dist/modules/versioning/hex/index.js +0 -1
- package/dist/modules/versioning/hex/index.js.map +1 -1
- package/dist/modules/versioning/ivy/index.js +1 -2
- package/dist/modules/versioning/ivy/index.js.map +1 -1
- package/dist/modules/versioning/npm/index.js +0 -1
- package/dist/modules/versioning/npm/index.js.map +1 -1
- package/dist/modules/versioning/npm/range.js +2 -3
- package/dist/modules/versioning/npm/range.js.map +1 -1
- package/dist/modules/versioning/nuget/index.js +8 -4
- package/dist/modules/versioning/nuget/index.js.map +1 -1
- package/dist/modules/versioning/pep440/index.js +1 -1
- package/dist/modules/versioning/pep440/index.js.map +1 -1
- package/dist/modules/versioning/pep440/range.d.ts +1 -0
- package/dist/modules/versioning/pep440/range.js +4 -3
- package/dist/modules/versioning/pep440/range.js.map +1 -1
- package/dist/modules/versioning/poetry/index.js +0 -4
- package/dist/modules/versioning/poetry/index.js.map +1 -1
- package/dist/modules/versioning/rez/index.js +0 -1
- package/dist/modules/versioning/rez/index.js.map +1 -1
- package/dist/modules/versioning/ruby/index.js +5 -5
- package/dist/modules/versioning/ruby/index.js.map +1 -1
- package/dist/modules/versioning/ruby/strategies/index.d.ts +1 -2
- package/dist/modules/versioning/ruby/strategies/index.js +1 -3
- package/dist/modules/versioning/ruby/strategies/index.js.map +1 -1
- package/dist/modules/versioning/semver-partial/index.d.ts +8 -0
- package/dist/modules/versioning/semver-partial/index.js +211 -0
- package/dist/modules/versioning/semver-partial/index.js.map +1 -0
- package/dist/modules/versioning/swift/index.js +0 -1
- package/dist/modules/versioning/swift/index.js.map +1 -1
- package/dist/modules/versioning/types.d.ts +5 -0
- package/dist/modules/versioning/types.js.map +1 -1
- package/dist/renovate.js +0 -0
- package/dist/util/cache/package/decorator.js +20 -9
- package/dist/util/cache/package/decorator.js.map +1 -1
- package/dist/util/cache/package/file.d.ts +1 -1
- package/dist/util/cache/package/file.js +3 -3
- package/dist/util/cache/package/file.js.map +1 -1
- package/dist/util/cache/package/index.d.ts +9 -2
- package/dist/util/cache/package/index.js +19 -4
- package/dist/util/cache/package/index.js.map +1 -1
- package/dist/util/cache/package/namespaces.d.ts +1 -1
- package/dist/util/cache/package/namespaces.js +3 -0
- package/dist/util/cache/package/namespaces.js.map +1 -1
- package/dist/util/cache/package/redis.d.ts +1 -1
- package/dist/util/cache/package/redis.js +17 -7
- package/dist/util/cache/package/redis.js.map +1 -1
- package/dist/util/cache/package/sqlite.d.ts +1 -1
- package/dist/util/cache/package/sqlite.js +2 -2
- package/dist/util/cache/package/sqlite.js.map +1 -1
- package/dist/util/cache/package/types.d.ts +1 -1
- package/dist/util/cache/package/types.js.map +1 -1
- package/dist/util/cache/repository/http-cache.js +1 -1
- package/dist/util/cache/repository/http-cache.js.map +1 -1
- package/dist/util/cache/repository/schema.d.ts +1 -1
- package/dist/util/cache/repository/types.d.ts +1 -0
- package/dist/util/cache/repository/types.js.map +1 -1
- package/dist/util/emoji.js +2 -2
- package/dist/util/emoji.js.map +1 -1
- package/dist/util/exec/containerbase.js +5 -0
- package/dist/util/exec/containerbase.js.map +1 -1
- package/dist/util/git/index.js +6 -3
- package/dist/util/git/index.js.map +1 -1
- package/dist/util/git/private-key.js +23 -3
- package/dist/util/git/private-key.js.map +1 -1
- package/dist/util/git/types.d.ts +2 -1
- package/dist/util/git/types.js.map +1 -1
- package/dist/util/github/graphql/query-adapters/releases-query-adapter.d.ts +6 -6
- package/dist/util/http/bitbucket.js +0 -1
- package/dist/util/http/bitbucket.js.map +1 -1
- package/dist/util/http/cache/abstract-http-cache-provider.d.ts +7 -7
- package/dist/util/http/cache/abstract-http-cache-provider.js +11 -11
- package/dist/util/http/cache/abstract-http-cache-provider.js.map +1 -1
- package/dist/util/http/cache/memory-http-cache-provider.d.ts +3 -3
- package/dist/util/http/cache/memory-http-cache-provider.js +8 -8
- package/dist/util/http/cache/memory-http-cache-provider.js.map +1 -1
- package/dist/util/http/cache/package-http-cache-provider.d.ts +5 -4
- package/dist/util/http/cache/package-http-cache-provider.js +17 -11
- package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
- package/dist/util/http/cache/repository-http-cache-provider.d.ts +16 -3
- package/dist/util/http/cache/repository-http-cache-provider.js +60 -3
- package/dist/util/http/cache/repository-http-cache-provider.js.map +1 -1
- package/dist/util/http/cache/schema.d.ts +2 -2
- package/dist/util/http/cache/schema.js +2 -2
- package/dist/util/http/cache/schema.js.map +1 -1
- package/dist/util/http/cache/types.d.ts +3 -3
- package/dist/util/http/cache/types.js.map +1 -1
- package/dist/util/http/gerrit.d.ts +1 -1
- package/dist/util/http/gerrit.js +1 -1
- package/dist/util/http/gerrit.js.map +1 -1
- package/dist/util/http/gitlab.js +0 -1
- package/dist/util/http/gitlab.js.map +1 -1
- package/dist/util/http/host-rules.js +10 -0
- package/dist/util/http/host-rules.js.map +1 -1
- package/dist/util/http/http.d.ts +1 -1
- package/dist/util/http/http.js +17 -15
- package/dist/util/http/http.js.map +1 -1
- package/dist/util/http/retry-after.js +1 -1
- package/dist/util/http/retry-after.js.map +1 -1
- package/dist/util/interpolator.js +2 -0
- package/dist/util/interpolator.js.map +1 -1
- package/dist/util/markdown.js +3 -3
- package/dist/util/markdown.js.map +1 -1
- package/dist/util/merge-confidence/index.js +3 -1
- package/dist/util/merge-confidence/index.js.map +1 -1
- package/dist/util/schema-utils/index.d.ts +8 -4
- package/dist/util/schema-utils/index.js +16 -1
- package/dist/util/schema-utils/index.js.map +1 -1
- package/dist/util/template/index.d.ts +1 -0
- package/dist/util/template/index.js +70 -64
- package/dist/util/template/index.js.map +1 -1
- package/dist/workers/global/config/parse/file.js +6 -0
- package/dist/workers/global/config/parse/file.js.map +1 -1
- package/dist/workers/global/config/parse/index.js +2 -1
- package/dist/workers/global/config/parse/index.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/commit-message.js +2 -1
- package/dist/workers/repository/config-migration/branch/commit-message.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/create.js +1 -0
- package/dist/workers/repository/config-migration/branch/create.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/rebase.js +1 -0
- package/dist/workers/repository/config-migration/branch/rebase.js.map +1 -1
- package/dist/workers/repository/dependency-dashboard.js +42 -5
- package/dist/workers/repository/dependency-dashboard.js.map +1 -1
- package/dist/workers/repository/error-config.js +1 -1
- package/dist/workers/repository/error-config.js.map +1 -1
- package/dist/workers/repository/error.js +1 -1
- package/dist/workers/repository/error.js.map +1 -1
- package/dist/workers/repository/extract/supersedes.d.ts +1 -1
- package/dist/workers/repository/extract/supersedes.js +31 -17
- package/dist/workers/repository/extract/supersedes.js.map +1 -1
- package/dist/workers/repository/finalize/index.js +1 -1
- package/dist/workers/repository/finalize/index.js.map +1 -1
- package/dist/workers/repository/finalize/prune.js +4 -3
- package/dist/workers/repository/finalize/prune.js.map +1 -1
- package/dist/workers/repository/index.js +49 -20
- package/dist/workers/repository/index.js.map +1 -1
- package/dist/workers/repository/init/inherited.js +7 -0
- package/dist/workers/repository/init/inherited.js.map +1 -1
- package/dist/workers/repository/init/merge.js +1 -1
- package/dist/workers/repository/init/merge.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/check.js +5 -3
- package/dist/workers/repository/onboarding/branch/check.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/create.js +1 -0
- package/dist/workers/repository/onboarding/branch/create.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/rebase.js +1 -0
- package/dist/workers/repository/onboarding/branch/rebase.js.map +1 -1
- package/dist/workers/repository/onboarding/common.js +3 -2
- package/dist/workers/repository/onboarding/common.js.map +1 -1
- package/dist/workers/repository/process/extract-update.js +2 -2
- package/dist/workers/repository/process/extract-update.js.map +1 -1
- package/dist/workers/repository/process/fetch.js +4 -3
- package/dist/workers/repository/process/fetch.js.map +1 -1
- package/dist/workers/repository/process/index.d.ts +1 -0
- package/dist/workers/repository/process/index.js +25 -5
- package/dist/workers/repository/process/index.js.map +1 -1
- package/dist/workers/repository/process/lookup/filter-checks.js +42 -8
- package/dist/workers/repository/process/lookup/filter-checks.js.map +1 -1
- package/dist/workers/repository/process/lookup/filter.js +5 -7
- package/dist/workers/repository/process/lookup/filter.js.map +1 -1
- package/dist/workers/repository/process/lookup/index.js +10 -13
- package/dist/workers/repository/process/lookup/index.js.map +1 -1
- package/dist/workers/repository/process/vulnerabilities.d.ts +1 -1
- package/dist/workers/repository/process/vulnerabilities.js +13 -8
- package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
- package/dist/workers/repository/reconfigure/comment.js +1 -1
- package/dist/workers/repository/reconfigure/comment.js.map +1 -1
- package/dist/workers/repository/reconfigure/index.js +1 -1
- package/dist/workers/repository/reconfigure/index.js.map +1 -1
- package/dist/workers/repository/update/branch/commit.js +2 -0
- package/dist/workers/repository/update/branch/commit.js.map +1 -1
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +12 -1
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
- package/dist/workers/repository/update/branch/index.js +65 -20
- package/dist/workers/repository/update/branch/index.js.map +1 -1
- package/dist/workers/repository/update/branch/status-checks.js +5 -0
- package/dist/workers/repository/update/branch/status-checks.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/bitbucket/index.js +1 -1
- package/dist/workers/repository/update/pr/changelog/bitbucket/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/forgejo/index.js +3 -3
- package/dist/workers/repository/update/pr/changelog/forgejo/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/gitea/index.js +3 -3
- package/dist/workers/repository/update/pr/changelog/gitea/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/release-notes.js +9 -4
- package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
- package/dist/workers/repository/update/pr/index.js +28 -11
- package/dist/workers/repository/update/pr/index.js.map +1 -1
- package/dist/workers/repository/update/pr/pr-reuse.d.ts +1 -1
- package/dist/workers/repository/update/pr/pr-reuse.js +2 -2
- package/dist/workers/repository/update/pr/pr-reuse.js.map +1 -1
- package/dist/workers/repository/updates/generate.js +1 -0
- package/dist/workers/repository/updates/generate.js.map +1 -1
- package/dist/workers/types.d.ts +1 -0
- package/dist/workers/types.js.map +1 -1
- package/package.json +136 -153
- package/renovate-schema.json +325 -111
- package/dist/config/decrypt/kbpgp.d.ts +0 -1
- package/dist/config/decrypt/kbpgp.js +0 -58
- package/dist/config/decrypt/kbpgp.js.map +0 -1
- package/dist/config/decrypt/legacy.d.ts +0 -2
- package/dist/config/decrypt/legacy.js +0 -36
- package/dist/config/decrypt/legacy.js.map +0 -1
- package/dist/modules/versioning/ruby/strategies/pin.d.ts +0 -4
- package/dist/modules/versioning/ruby/strategies/pin.js +0 -4
- package/dist/modules/versioning/ruby/strategies/pin.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../lib/workers/repository/onboarding/common.ts"],"names":[],"mappings":";;;AAKA,4DAEC;AAED,
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../lib/workers/repository/onboarding/common.ts"],"names":[],"mappings":";;;AAKA,4DAEC;AAED,4DAKC;;AAdD,6DAAiE;AAEjE,4CAAyC;AACzC,6EAAuD;AAEvD,SAAgB,wBAAwB,CAAC,MAAsB;IAC7D,OAAO,GAAG,MAAM,CAAC,kBAAkB,IAAI,OAAO,KAAK,MAAM,CAAC,iBAAiB,EAAE,CAAC;AAChF,CAAC;AAED,SAAgB,wBAAwB,CAAC,MAAsB;IAC7D,MAAM,eAAe,GAAG,IAAA,gCAAkB,GAAE,CAAC;IAC7C,OAAO,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,wBAAyB,CAAC;QAC/D,CAAC,CAAC,MAAM,CAAC,wBAAyB;QAClC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC;AAED,MAAa,eAAe;IAClB,MAAM,CAAU,QAAQ,GAAG,iBAAiB,CAAC;IAC7C,MAAM,CAAU,OAAO,GAAG,sBAAsB,CAAC;IAEzD,MAAM,KAAK,iBAAiB;QAC1B,MAAM,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CACpC,eAAe,CAAC,QAAQ,CACzB,CAAC;QACF,eAAM,CAAC,KAAK,CACV,EAAE,KAAK,EAAE,eAAe,EAAE,EAC1B,uCAAuC,CACxC,CAAC;QACF,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,KAAK,iBAAiB,CAAC,KAAc;QACzC,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,uCAAuC,CAAC,CAAC;QACjE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,KAAK,oBAAoB;QAC7B,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAC/B,eAAe,CAAC,OAAO,CACxB,CAAC;QACF,eAAM,CAAC,KAAK,CACV,EAAE,KAAK,EAAE,UAAU,EAAE,EACrB,0CAA0C,CAC3C,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,KAAK,oBAAoB,CAAC,KAAc;QAC5C,eAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,0CAA0C,CAAC,CAAC;QACpE,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;;AAlCH,0CAmCC","sourcesContent":["import { getConfigFileNames } from '../../../config/app-strings';\nimport type { RenovateConfig } from '../../../config/types';\nimport { logger } from '../../../logger';\nimport * as memCache from '../../../util/cache/memory';\n\nexport function getSemanticCommitPrTitle(config: RenovateConfig): string {\n return `${config.semanticCommitType ?? 'chore'}: ${config.onboardingPrTitle}`;\n}\n\nexport function getDefaultConfigFileName(config: RenovateConfig): string {\n const configFileNames = getConfigFileNames();\n return configFileNames.includes(config.onboardingConfigFileName!)\n ? config.onboardingConfigFileName!\n : configFileNames[0];\n}\n\nexport class OnboardingState {\n private static readonly cacheKey = 'OnboardingState';\n private static readonly skipKey = 'OnboardingStateValid';\n\n static get prUpdateRequested(): boolean {\n const updateRequested = !!memCache.get<boolean | undefined>(\n OnboardingState.cacheKey,\n );\n logger.trace(\n { value: updateRequested },\n 'Get OnboardingState.prUpdateRequested',\n );\n return updateRequested;\n }\n\n static set prUpdateRequested(value: boolean) {\n logger.trace({ value }, 'Set OnboardingState.prUpdateRequested');\n memCache.set(OnboardingState.cacheKey, value);\n }\n\n static get onboardingCacheValid(): boolean {\n const cacheValid = !!memCache.get<boolean | undefined>(\n OnboardingState.skipKey,\n );\n logger.trace(\n { value: cacheValid },\n 'Get OnboardingState.onboardingCacheValid',\n );\n return cacheValid;\n }\n\n static set onboardingCacheValid(value: boolean) {\n logger.trace({ value }, 'Set OnboardingState.onboardingCacheValid');\n memCache.set(OnboardingState.skipKey, value);\n }\n}\n"]}
|
|
@@ -134,8 +134,8 @@ async function extract(config, overwriteCache = true) {
|
|
|
134
134
|
};
|
|
135
135
|
}
|
|
136
136
|
// Clean up cached branch extracts
|
|
137
|
-
const baseBranches = is_1.default.nonEmptyArray(config.
|
|
138
|
-
? config.
|
|
137
|
+
const baseBranches = is_1.default.nonEmptyArray(config.baseBranches)
|
|
138
|
+
? config.baseBranches
|
|
139
139
|
: [baseBranch];
|
|
140
140
|
Object.keys(cache.scan).forEach((branchName) => {
|
|
141
141
|
if (!baseBranches.includes(branchName)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-update.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/extract-update.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport type { RenovateConfig } from '../../../config/types';\nimport { logger } from '../../../logger';\nimport { hashMap } from '../../../modules/manager';\nimport type { PackageFile } from '../../../modules/manager/types';\nimport { scm } from '../../../modules/platform/scm';\nimport * as memCache from '../../../util/cache/memory';\nimport { getCache } from '../../../util/cache/repository';\nimport type { BaseBranchCache } from '../../../util/cache/repository/types';\nimport { checkGithubToken as ensureGithubToken } from '../../../util/check-token';\nimport { fingerprint } from '../../../util/fingerprint';\nimport type { BranchConfig } from '../../types';\nimport { extractAllDependencies } from '../extract';\nimport { generateFingerprintConfig } from '../extract/extract-fingerprint-config';\nimport { branchifyUpgrades } from '../updates/branchify';\nimport { fetchUpdates } from './fetch';\nimport { calculateLibYears } from './libyear';\nimport { sortBranches } from './sort';\nimport { Vulnerabilities } from './vulnerabilities';\nimport type { WriteUpdateResult } from './write';\nimport { writeUpdates } from './write';\n\n// Increment this if needing to cache bust ALL extract caches\nexport const EXTRACT_CACHE_REVISION = 1;\n\nexport interface ExtractResult {\n branches: BranchConfig[];\n branchList: string[];\n packageFiles: Record<string, PackageFile[]>;\n}\n\nexport interface StatsResult {\n fileCount: number;\n depCount: number;\n}\n\nexport interface Stats {\n managers: Record<string, StatsResult>;\n total: StatsResult;\n}\n\n// istanbul ignore next\nfunction extractStats(\n packageFiles: Record<string, PackageFile[]>,\n): Stats | null {\n if (!packageFiles) {\n return null;\n }\n const stats: Stats = {\n managers: {},\n total: {\n fileCount: 0,\n depCount: 0,\n },\n };\n for (const [manager, managerPackageFiles] of Object.entries(packageFiles)) {\n const fileCount = managerPackageFiles.length;\n let depCount = 0;\n for (const file of managerPackageFiles) {\n depCount += file.deps.length;\n }\n stats.managers[manager] = {\n fileCount,\n depCount,\n };\n stats.total.fileCount += fileCount;\n stats.total.depCount += depCount;\n }\n return stats;\n}\n\nexport function isCacheExtractValid(\n baseBranchSha: string,\n configHash: string,\n cachedExtract?: BaseBranchCache,\n): boolean {\n if (!cachedExtract) {\n return false;\n }\n\n if (!cachedExtract.revision) {\n logger.debug('Cached extract is missing revision, so cannot be used');\n return false;\n }\n\n if (cachedExtract.revision !== EXTRACT_CACHE_REVISION) {\n logger.debug(\n `Extract cache revision has changed (old=${cachedExtract.revision}, new=${EXTRACT_CACHE_REVISION})`,\n );\n return false;\n }\n\n if (!(cachedExtract.sha && cachedExtract.configHash)) {\n return false;\n }\n if (cachedExtract.sha !== baseBranchSha) {\n logger.debug(\n `Cached extract result cannot be used due to base branch SHA change (old=${cachedExtract.sha}, new=${baseBranchSha})`,\n );\n return false;\n }\n if (cachedExtract.configHash !== configHash) {\n logger.debug('Cached extract result cannot be used due to config change');\n return false;\n }\n if (!cachedExtract.extractionFingerprints) {\n logger.debug(\n 'Cached extract is missing extractionFingerprints, so cannot be used',\n );\n return false;\n }\n const changedManagers = new Set();\n for (const [manager, fingerprint] of Object.entries(\n cachedExtract.extractionFingerprints,\n )) {\n if (fingerprint !== hashMap.get(manager)) {\n changedManagers.add(manager);\n }\n }\n if (changedManagers.size > 0) {\n logger.debug(\n { changedManagers: [...changedManagers] },\n 'Manager fingerprint(s) have changed, extract cache cannot be reused',\n );\n return false;\n }\n logger.debug(\n `Cached extract for sha=${baseBranchSha} is valid and can be used`,\n );\n return true;\n}\n\nexport async function extract(\n config: RenovateConfig,\n overwriteCache = true,\n): Promise<Record<string, PackageFile[]>> {\n logger.debug('extract()');\n const { baseBranch } = config;\n const baseBranchSha = await scm.getBranchCommit(baseBranch!);\n let packageFiles: Record<string, PackageFile[]>;\n const cache = getCache();\n cache.scan ??= {};\n const cachedExtract = cache.scan[baseBranch!];\n const configHash = fingerprint(generateFingerprintConfig(config));\n // istanbul ignore if\n if (\n overwriteCache &&\n isCacheExtractValid(baseBranchSha!, configHash, cachedExtract)\n ) {\n packageFiles = cachedExtract.packageFiles;\n try {\n for (const files of Object.values(packageFiles)) {\n for (const file of files) {\n for (const dep of file.deps) {\n delete dep.updates;\n }\n }\n }\n logger.debug('Deleted cached dep updates');\n } catch (err) {\n logger.info({ err }, 'Error deleting cached dep updates');\n }\n } else {\n await scm.checkoutBranch(baseBranch!);\n const extractResult = (await extractAllDependencies(config)) || {};\n packageFiles = extractResult.packageFiles;\n const { extractionFingerprints } = extractResult;\n\n if (overwriteCache) {\n // TODO: fix types (#22198)\n cache.scan[baseBranch!] = {\n revision: EXTRACT_CACHE_REVISION,\n sha: baseBranchSha!,\n configHash,\n extractionFingerprints,\n packageFiles,\n };\n }\n\n // Clean up cached branch extracts\n const baseBranches = is.nonEmptyArray(config.baseBranchPatterns)\n ? config.baseBranchPatterns\n : [baseBranch];\n Object.keys(cache.scan).forEach((branchName) => {\n if (!baseBranches.includes(branchName)) {\n delete cache.scan![branchName];\n }\n });\n }\n const stats = extractStats(packageFiles);\n logger.info(\n { baseBranch: config.baseBranch, stats },\n `Dependency extraction complete`,\n );\n logger.trace({ config: packageFiles }, 'packageFiles');\n ensureGithubToken(packageFiles);\n return packageFiles;\n}\n\nasync function fetchVulnerabilities(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n): Promise<void> {\n if (config.osvVulnerabilityAlerts) {\n logger.debug('fetchVulnerabilities() - osvVulnerabilityAlerts=true');\n try {\n const vulnerabilities = await Vulnerabilities.create();\n await vulnerabilities.appendVulnerabilityPackageRules(\n config,\n packageFiles,\n );\n } catch (err) {\n logger.warn({ err }, 'Unable to read vulnerability information');\n }\n }\n}\n\nexport async function lookup(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n): Promise<ExtractResult> {\n await fetchVulnerabilities(config, packageFiles);\n await fetchUpdates(config, packageFiles);\n memCache.cleanDatasourceKeys();\n calculateLibYears(config, packageFiles);\n const { branches, branchList } = await branchifyUpgrades(\n config,\n packageFiles,\n );\n logger.debug(\n { baseBranch: config.baseBranch, config: packageFiles },\n 'packageFiles with updates',\n );\n sortBranches(branches);\n return { branches, branchList, packageFiles };\n}\n\nexport async function update(\n config: RenovateConfig,\n branches: BranchConfig[],\n): Promise<WriteUpdateResult | undefined> {\n let res: WriteUpdateResult | undefined;\n if (config.repoIsOnboarded) {\n res = await writeUpdates(config, branches);\n }\n\n return res;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"extract-update.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/extract-update.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport type { RenovateConfig } from '../../../config/types';\nimport { logger } from '../../../logger';\nimport { hashMap } from '../../../modules/manager';\nimport type { PackageFile } from '../../../modules/manager/types';\nimport { scm } from '../../../modules/platform/scm';\nimport * as memCache from '../../../util/cache/memory';\nimport { getCache } from '../../../util/cache/repository';\nimport type { BaseBranchCache } from '../../../util/cache/repository/types';\nimport { checkGithubToken as ensureGithubToken } from '../../../util/check-token';\nimport { fingerprint } from '../../../util/fingerprint';\nimport type { BranchConfig } from '../../types';\nimport { extractAllDependencies } from '../extract';\nimport { generateFingerprintConfig } from '../extract/extract-fingerprint-config';\nimport { branchifyUpgrades } from '../updates/branchify';\nimport { fetchUpdates } from './fetch';\nimport { calculateLibYears } from './libyear';\nimport { sortBranches } from './sort';\nimport { Vulnerabilities } from './vulnerabilities';\nimport type { WriteUpdateResult } from './write';\nimport { writeUpdates } from './write';\n\n// Increment this if needing to cache bust ALL extract caches\nexport const EXTRACT_CACHE_REVISION = 1;\n\nexport interface ExtractResult {\n branches: BranchConfig[];\n branchList: string[];\n packageFiles: Record<string, PackageFile[]>;\n}\n\nexport interface StatsResult {\n fileCount: number;\n depCount: number;\n}\n\nexport interface Stats {\n managers: Record<string, StatsResult>;\n total: StatsResult;\n}\n\n// istanbul ignore next\nfunction extractStats(\n packageFiles: Record<string, PackageFile[]>,\n): Stats | null {\n if (!packageFiles) {\n return null;\n }\n const stats: Stats = {\n managers: {},\n total: {\n fileCount: 0,\n depCount: 0,\n },\n };\n for (const [manager, managerPackageFiles] of Object.entries(packageFiles)) {\n const fileCount = managerPackageFiles.length;\n let depCount = 0;\n for (const file of managerPackageFiles) {\n depCount += file.deps.length;\n }\n stats.managers[manager] = {\n fileCount,\n depCount,\n };\n stats.total.fileCount += fileCount;\n stats.total.depCount += depCount;\n }\n return stats;\n}\n\nexport function isCacheExtractValid(\n baseBranchSha: string,\n configHash: string,\n cachedExtract?: BaseBranchCache,\n): boolean {\n if (!cachedExtract) {\n return false;\n }\n\n if (!cachedExtract.revision) {\n logger.debug('Cached extract is missing revision, so cannot be used');\n return false;\n }\n\n if (cachedExtract.revision !== EXTRACT_CACHE_REVISION) {\n logger.debug(\n `Extract cache revision has changed (old=${cachedExtract.revision}, new=${EXTRACT_CACHE_REVISION})`,\n );\n return false;\n }\n\n if (!(cachedExtract.sha && cachedExtract.configHash)) {\n return false;\n }\n if (cachedExtract.sha !== baseBranchSha) {\n logger.debug(\n `Cached extract result cannot be used due to base branch SHA change (old=${cachedExtract.sha}, new=${baseBranchSha})`,\n );\n return false;\n }\n if (cachedExtract.configHash !== configHash) {\n logger.debug('Cached extract result cannot be used due to config change');\n return false;\n }\n if (!cachedExtract.extractionFingerprints) {\n logger.debug(\n 'Cached extract is missing extractionFingerprints, so cannot be used',\n );\n return false;\n }\n const changedManagers = new Set();\n for (const [manager, fingerprint] of Object.entries(\n cachedExtract.extractionFingerprints,\n )) {\n if (fingerprint !== hashMap.get(manager)) {\n changedManagers.add(manager);\n }\n }\n if (changedManagers.size > 0) {\n logger.debug(\n { changedManagers: [...changedManagers] },\n 'Manager fingerprint(s) have changed, extract cache cannot be reused',\n );\n return false;\n }\n logger.debug(\n `Cached extract for sha=${baseBranchSha} is valid and can be used`,\n );\n return true;\n}\n\nexport async function extract(\n config: RenovateConfig,\n overwriteCache = true,\n): Promise<Record<string, PackageFile[]>> {\n logger.debug('extract()');\n const { baseBranch } = config;\n const baseBranchSha = await scm.getBranchCommit(baseBranch!);\n let packageFiles: Record<string, PackageFile[]>;\n const cache = getCache();\n cache.scan ??= {};\n const cachedExtract = cache.scan[baseBranch!];\n const configHash = fingerprint(generateFingerprintConfig(config));\n // istanbul ignore if\n if (\n overwriteCache &&\n isCacheExtractValid(baseBranchSha!, configHash, cachedExtract)\n ) {\n packageFiles = cachedExtract.packageFiles;\n try {\n for (const files of Object.values(packageFiles)) {\n for (const file of files) {\n for (const dep of file.deps) {\n delete dep.updates;\n }\n }\n }\n logger.debug('Deleted cached dep updates');\n } catch (err) {\n logger.info({ err }, 'Error deleting cached dep updates');\n }\n } else {\n await scm.checkoutBranch(baseBranch!);\n const extractResult = (await extractAllDependencies(config)) || {};\n packageFiles = extractResult.packageFiles;\n const { extractionFingerprints } = extractResult;\n\n if (overwriteCache) {\n // TODO: fix types (#22198)\n cache.scan[baseBranch!] = {\n revision: EXTRACT_CACHE_REVISION,\n sha: baseBranchSha!,\n configHash,\n extractionFingerprints,\n packageFiles,\n };\n }\n\n // Clean up cached branch extracts\n const baseBranches = is.nonEmptyArray(config.baseBranches)\n ? config.baseBranches\n : [baseBranch];\n Object.keys(cache.scan).forEach((branchName) => {\n if (!baseBranches.includes(branchName)) {\n delete cache.scan![branchName];\n }\n });\n }\n const stats = extractStats(packageFiles);\n logger.info(\n { baseBranch: config.baseBranch, stats },\n `Dependency extraction complete`,\n );\n logger.trace({ config: packageFiles }, 'packageFiles');\n ensureGithubToken(packageFiles);\n return packageFiles;\n}\n\nasync function fetchVulnerabilities(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n): Promise<void> {\n if (config.osvVulnerabilityAlerts) {\n logger.debug('fetchVulnerabilities() - osvVulnerabilityAlerts=true');\n try {\n const vulnerabilities = await Vulnerabilities.create();\n await vulnerabilities.appendVulnerabilityPackageRules(\n config,\n packageFiles,\n );\n } catch (err) {\n logger.warn({ err }, 'Unable to read vulnerability information');\n }\n }\n}\n\nexport async function lookup(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n): Promise<ExtractResult> {\n await fetchVulnerabilities(config, packageFiles);\n await fetchUpdates(config, packageFiles);\n memCache.cleanDatasourceKeys();\n calculateLibYears(config, packageFiles);\n const { branches, branchList } = await branchifyUpgrades(\n config,\n packageFiles,\n );\n logger.debug(\n { baseBranch: config.baseBranch, config: packageFiles },\n 'packageFiles with updates',\n );\n sortBranches(branches);\n return { branches, branchList, packageFiles };\n}\n\nexport async function update(\n config: RenovateConfig,\n branches: BranchConfig[],\n): Promise<WriteUpdateResult | undefined> {\n let res: WriteUpdateResult | undefined;\n if (config.repoIsOnboarded) {\n res = await writeUpdates(config, branches);\n }\n\n return res;\n}\n"]}
|
|
@@ -57,12 +57,13 @@ async function lookup(packageFileConfig, indep) {
|
|
|
57
57
|
return result_1.Result.ok(dep);
|
|
58
58
|
}
|
|
59
59
|
return stats_1.LookupStats.wrap(depConfig.datasource, async () => {
|
|
60
|
+
const { packageFile, manager } = packageFileConfig;
|
|
60
61
|
return await result_1.Result.wrap((0, lookup_1.lookupUpdates)(depConfig))
|
|
61
62
|
.onValue((dep) => {
|
|
62
|
-
logger_1.logger.trace({ dep }, 'Dependency lookup success');
|
|
63
|
+
logger_1.logger.trace({ dep, packageFile, manager }, 'Dependency lookup success');
|
|
63
64
|
})
|
|
64
65
|
.onError((err) => {
|
|
65
|
-
logger_1.logger.trace({ err, depName }, 'Dependency lookup error');
|
|
66
|
+
logger_1.logger.trace({ err, depName, packageFile, manager }, 'Dependency lookup error');
|
|
66
67
|
})
|
|
67
68
|
.catch((err) => {
|
|
68
69
|
if (packageFileConfig.repoIsOnboarded === true ||
|
|
@@ -99,7 +100,7 @@ async function fetchManagerPackagerFileUpdates(config, managerConfig, pFile) {
|
|
|
99
100
|
});
|
|
100
101
|
logger_1.logger.trace({ manager, packageFile, queueLength: queue.length }, 'fetchManagerPackagerFileUpdates starting with concurrency');
|
|
101
102
|
pFile.deps = await p.all(queue);
|
|
102
|
-
logger_1.logger.trace({ packageFile }, 'fetchManagerPackagerFileUpdates finished');
|
|
103
|
+
logger_1.logger.trace({ manager, packageFile }, 'fetchManagerPackagerFileUpdates finished');
|
|
103
104
|
}
|
|
104
105
|
async function fetchManagerUpdates(config, packageFiles, manager) {
|
|
105
106
|
const managerConfig = (0, config_1.getManagerConfig)(config, manager);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/fetch.ts"],"names":[],"mappings":";;AA2JA,oCAcC;;AAzKD,cAAc;AACd,kEAAkC;AAClC,4CAAqE;AAErE,4CAAyC;AACzC,4DAA+D;AAC/D,+DAA0E;AAK1E,mFAA8E;AAC9E,+CAA4C;AAC5C,+DAAgE;AAChE,kEAA4C;AAC5C,iDAA8C;AAC9C,+CAAkD;AAClD,oDAAgD;AAChD,qCAAyC;AAKzC,KAAK,UAAU,MAAM,CACnB,iBAA+C,EAC/C,KAAwB;IAExB,MAAM,GAAG,GAAG,IAAA,aAAK,EAAC,KAAK,CAAC,CAAC;IAEzB,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,OAAO,CAAC;IAEhC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,YAAE,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,GAAG,CAAC,UAAU,GAAG,cAAc,CAAC;QAChC,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC5D,GAAG,CAAC,UAAU,GAAG,kBAAkB,CAAC;QACpC,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IACxB,kBAAkB;IAClB,IAAI,SAAS,GAAG,IAAA,yBAAgB,EAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;IACzD,MAAM,uBAAuB,GAAG,MAAM,IAAA,6BAAgB,EAAC,SAAS,CAAC,UAAW,CAAC,CAAC;IAC9E,SAAS,GAAG,IAAA,yBAAgB,EAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;IACjE,SAAS,CAAC,UAAU,KAAK,IAAA,6BAAoB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACpE,SAAS,GAAG,MAAM,IAAA,iCAAiB,EAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC7D,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC,OAAO,CAAC;IAE5C,IAAI,SAAS,CAAC,UAAW,CAAC,QAAQ,CAAC,OAAQ,CAAC,EAAE,CAAC;QAC7C,2BAA2B;QAC3B,eAAM,CAAC,KAAK,CAAC,eAAe,OAAQ,cAAc,CAAC,CAAC;QACpD,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;QAC3B,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAChC,eAAM,CAAC,KAAK,CAAC,eAAe,OAAQ,eAAe,CAAC,CAAC;QACrD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5B,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC1B,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,mBAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QACvD,OAAO,MAAM,eAAM,CAAC,IAAI,CAAC,IAAA,sBAAa,EAAC,SAA+B,CAAC,CAAC;aACrE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,eAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,2BAA2B,CAAC,CAAC;QACrD,CAAC,CAAC;aACD,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,eAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,yBAAyB,CAAC,CAAC;QAC5D,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAA+B,EAAE;YAC1C,IACE,iBAAiB,CAAC,eAAe,KAAK,IAAI;gBAC1C,CAAC,CAAC,GAAG,YAAY,uCAAiB,CAAC,EACnC,CAAC;gBACD,OAAO,eAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;YAED,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;YACtB,OAAO,eAAM,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE;oBACR;wBACE,KAAK,EAAE,cAAc;wBACrB,OAAO,EAAE,GAAG,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE;qBACxC;iBACF;aACF,CAAC,CAAC;QACL,CAAC,CAAC;aACD,SAAS,CAAC,CAAC,GAAG,EAAqB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,+BAA+B,CAC5C,MAAsB,EACtB,aAA6B,EAC7B,KAAkB;IAElB,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,iBAAiB,GAAG,IAAA,yBAAgB,EAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACjE,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC/B,iBAAiB,CAAC,WAAW,GAAG;YAC9B,GAAG,KAAK,CAAC,oBAAoB;YAC7B,GAAG,MAAM,CAAC,WAAW;SACtB,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;IACtC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,IAAgC,EAAE;QAC9C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC,CACF,CAAC;IACF,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,EACnD,2DAA2D,CAC5D,CAAC;IAEF,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,EAAE,0CAA0C,CAAC,CAAC;AAC5E,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,MAAsB,EACtB,YAA2C,EAC3C,OAAe;IAEf,MAAM,aAAa,GAAG,IAAA,yBAAgB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,CACrC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAkB,EAAE,CAC7B,+BAA+B,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAChE,CAAC;IACF,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,EACtC,8BAA8B,CAC/B,CAAC;IACF,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnB,eAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,8BAA8B,CAAC,CAAC;AAC5D,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,MAAsB,EACtB,YAA2C;IAE3C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAC9C,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CACnD,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAClC,4BAAY,CAAC,GAAG,CAAC,MAAM,CAAC,UAAW,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;IAC1D,eAAM,CAAC,KAAK,CACV,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,EACjC,mCAAmC,CACpC,CAAC;AACJ,CAAC","sourcesContent":["// TODO #22198\nimport is from '@sindresorhus/is';\nimport { getManagerConfig, mergeChildConfig } from '../../../config';\nimport type { RenovateConfig } from '../../../config/types';\nimport { logger } from '../../../logger';\nimport { getDefaultConfig } from '../../../modules/datasource';\nimport { getDefaultVersioning } from '../../../modules/datasource/common';\nimport type {\n PackageDependency,\n PackageFile,\n} from '../../../modules/manager/types';\nimport { ExternalHostError } from '../../../types/errors/external-host-error';\nimport { clone } from '../../../util/clone';\nimport { applyPackageRules } from '../../../util/package-rules';\nimport * as p from '../../../util/promises';\nimport { Result } from '../../../util/result';\nimport { LookupStats } from '../../../util/stats';\nimport { PackageFiles } from '../package-files';\nimport { lookupUpdates } from './lookup';\nimport type { LookupUpdateConfig, UpdateResult } from './lookup/types';\n\ntype LookupResult = Result<PackageDependency, Error>;\n\nasync function lookup(\n packageFileConfig: RenovateConfig & PackageFile,\n indep: PackageDependency,\n): Promise<LookupResult> {\n const dep = clone(indep);\n\n dep.updates = [];\n\n if (is.string(dep.depName)) {\n dep.depName = dep.depName.trim();\n }\n\n dep.packageName ??= dep.depName;\n\n if (dep.skipReason) {\n return Result.ok(dep);\n }\n\n if (!is.nonEmptyString(dep.packageName)) {\n dep.skipReason = 'invalid-name';\n return Result.ok(dep);\n }\n\n if (dep.isInternal && !packageFileConfig.updateInternalDeps) {\n dep.skipReason = 'internal-package';\n return Result.ok(dep);\n }\n\n const { depName } = dep;\n // TODO: fix types\n let depConfig = mergeChildConfig(packageFileConfig, dep);\n const datasourceDefaultConfig = await getDefaultConfig(depConfig.datasource!);\n depConfig = mergeChildConfig(depConfig, datasourceDefaultConfig);\n depConfig.versioning ??= getDefaultVersioning(depConfig.datasource);\n depConfig = await applyPackageRules(depConfig, 'pre-lookup');\n depConfig.packageName ??= depConfig.depName;\n\n if (depConfig.ignoreDeps!.includes(depName!)) {\n // TODO: fix types (#22198)\n logger.debug(`Dependency: ${depName!}, is ignored`);\n dep.skipReason = 'ignored';\n return Result.ok(dep);\n }\n\n if (depConfig.enabled === false) {\n logger.debug(`Dependency: ${depName!}, is disabled`);\n dep.skipReason = 'disabled';\n return Result.ok(dep);\n }\n\n if (!depConfig.datasource) {\n return Result.ok(dep);\n }\n\n return LookupStats.wrap(depConfig.datasource, async () => {\n return await Result.wrap(lookupUpdates(depConfig as LookupUpdateConfig))\n .onValue((dep) => {\n logger.trace({ dep }, 'Dependency lookup success');\n })\n .onError((err) => {\n logger.trace({ err, depName }, 'Dependency lookup error');\n })\n .catch((err): Result<UpdateResult, Error> => {\n if (\n packageFileConfig.repoIsOnboarded === true ||\n !(err instanceof ExternalHostError)\n ) {\n return Result.err(err);\n }\n\n const cause = err.err;\n return Result.ok({\n updates: [],\n warnings: [\n {\n topic: 'Lookup Error',\n message: `${depName}: ${cause.message}`,\n },\n ],\n });\n })\n .transform((upd): PackageDependency => Object.assign(dep, upd));\n });\n}\n\nasync function fetchManagerPackagerFileUpdates(\n config: RenovateConfig,\n managerConfig: RenovateConfig,\n pFile: PackageFile,\n): Promise<void> {\n const { packageFile } = pFile;\n const packageFileConfig = mergeChildConfig(managerConfig, pFile);\n if (pFile.extractedConstraints) {\n packageFileConfig.constraints = {\n ...pFile.extractedConstraints,\n ...config.constraints,\n };\n }\n const { manager } = packageFileConfig;\n const queue = pFile.deps.map(\n (dep) => async (): Promise<PackageDependency> => {\n const updates = await lookup(packageFileConfig, dep);\n return updates.unwrapOrThrow();\n },\n );\n logger.trace(\n { manager, packageFile, queueLength: queue.length },\n 'fetchManagerPackagerFileUpdates starting with concurrency',\n );\n\n pFile.deps = await p.all(queue);\n logger.trace({ packageFile }, 'fetchManagerPackagerFileUpdates finished');\n}\n\nasync function fetchManagerUpdates(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n manager: string,\n): Promise<void> {\n const managerConfig = getManagerConfig(config, manager);\n const queue = packageFiles[manager].map(\n (pFile) => (): Promise<void> =>\n fetchManagerPackagerFileUpdates(config, managerConfig, pFile),\n );\n logger.trace(\n { manager, queueLength: queue.length },\n 'fetchManagerUpdates starting',\n );\n await p.all(queue);\n logger.trace({ manager }, 'fetchManagerUpdates finished');\n}\n\nexport async function fetchUpdates(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n): Promise<void> {\n const managers = Object.keys(packageFiles);\n const allManagerJobs = managers.map((manager) =>\n fetchManagerUpdates(config, packageFiles, manager),\n );\n await Promise.all(allManagerJobs);\n PackageFiles.add(config.baseBranch!, { ...packageFiles });\n logger.debug(\n { baseBranch: config.baseBranch },\n 'Package releases lookups complete',\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/fetch.ts"],"names":[],"mappings":";;AAqKA,oCAcC;;AAnLD,cAAc;AACd,kEAAkC;AAClC,4CAAqE;AAErE,4CAAyC;AACzC,4DAA+D;AAC/D,+DAA0E;AAK1E,mFAA8E;AAC9E,+CAA4C;AAC5C,+DAAgE;AAChE,kEAA4C;AAC5C,iDAA8C;AAC9C,+CAAkD;AAClD,oDAAgD;AAChD,qCAAyC;AAKzC,KAAK,UAAU,MAAM,CACnB,iBAA+C,EAC/C,KAAwB;IAExB,MAAM,GAAG,GAAG,IAAA,aAAK,EAAC,KAAK,CAAC,CAAC;IAEzB,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,OAAO,CAAC;IAEhC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,YAAE,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,GAAG,CAAC,UAAU,GAAG,cAAc,CAAC;QAChC,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC5D,GAAG,CAAC,UAAU,GAAG,kBAAkB,CAAC;QACpC,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IACxB,kBAAkB;IAClB,IAAI,SAAS,GAAG,IAAA,yBAAgB,EAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;IACzD,MAAM,uBAAuB,GAAG,MAAM,IAAA,6BAAgB,EAAC,SAAS,CAAC,UAAW,CAAC,CAAC;IAC9E,SAAS,GAAG,IAAA,yBAAgB,EAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;IACjE,SAAS,CAAC,UAAU,KAAK,IAAA,6BAAoB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACpE,SAAS,GAAG,MAAM,IAAA,iCAAiB,EAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC7D,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC,OAAO,CAAC;IAE5C,IAAI,SAAS,CAAC,UAAW,CAAC,QAAQ,CAAC,OAAQ,CAAC,EAAE,CAAC;QAC7C,2BAA2B;QAC3B,eAAM,CAAC,KAAK,CAAC,eAAe,OAAQ,cAAc,CAAC,CAAC;QACpD,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;QAC3B,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAChC,eAAM,CAAC,KAAK,CAAC,eAAe,OAAQ,eAAe,CAAC,CAAC;QACrD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5B,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC1B,OAAO,eAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,mBAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;QACnD,OAAO,MAAM,eAAM,CAAC,IAAI,CAAC,IAAA,sBAAa,EAAC,SAA+B,CAAC,CAAC;aACrE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,eAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,EAC7B,2BAA2B,CAC5B,CAAC;QACJ,CAAC,CAAC;aACD,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,eAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,EACtC,yBAAyB,CAC1B,CAAC;QACJ,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAA+B,EAAE;YAC1C,IACE,iBAAiB,CAAC,eAAe,KAAK,IAAI;gBAC1C,CAAC,CAAC,GAAG,YAAY,uCAAiB,CAAC,EACnC,CAAC;gBACD,OAAO,eAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;YAED,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;YACtB,OAAO,eAAM,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE;oBACR;wBACE,KAAK,EAAE,cAAc;wBACrB,OAAO,EAAE,GAAG,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE;qBACxC;iBACF;aACF,CAAC,CAAC;QACL,CAAC,CAAC;aACD,SAAS,CAAC,CAAC,GAAG,EAAqB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,+BAA+B,CAC5C,MAAsB,EACtB,aAA6B,EAC7B,KAAkB;IAElB,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,iBAAiB,GAAG,IAAA,yBAAgB,EAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACjE,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC/B,iBAAiB,CAAC,WAAW,GAAG;YAC9B,GAAG,KAAK,CAAC,oBAAoB;YAC7B,GAAG,MAAM,CAAC,WAAW;SACtB,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;IACtC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,IAAgC,EAAE;QAC9C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC,CACF,CAAC;IACF,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,EACnD,2DAA2D,CAC5D,CAAC;IAEF,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,EACxB,0CAA0C,CAC3C,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,MAAsB,EACtB,YAA2C,EAC3C,OAAe;IAEf,MAAM,aAAa,GAAG,IAAA,yBAAgB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,CACrC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAkB,EAAE,CAC7B,+BAA+B,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAChE,CAAC;IACF,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,EACtC,8BAA8B,CAC/B,CAAC;IACF,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnB,eAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,8BAA8B,CAAC,CAAC;AAC5D,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,MAAsB,EACtB,YAA2C;IAE3C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAC9C,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CACnD,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAClC,4BAAY,CAAC,GAAG,CAAC,MAAM,CAAC,UAAW,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;IAC1D,eAAM,CAAC,KAAK,CACV,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,EACjC,mCAAmC,CACpC,CAAC;AACJ,CAAC","sourcesContent":["// TODO #22198\nimport is from '@sindresorhus/is';\nimport { getManagerConfig, mergeChildConfig } from '../../../config';\nimport type { RenovateConfig } from '../../../config/types';\nimport { logger } from '../../../logger';\nimport { getDefaultConfig } from '../../../modules/datasource';\nimport { getDefaultVersioning } from '../../../modules/datasource/common';\nimport type {\n PackageDependency,\n PackageFile,\n} from '../../../modules/manager/types';\nimport { ExternalHostError } from '../../../types/errors/external-host-error';\nimport { clone } from '../../../util/clone';\nimport { applyPackageRules } from '../../../util/package-rules';\nimport * as p from '../../../util/promises';\nimport { Result } from '../../../util/result';\nimport { LookupStats } from '../../../util/stats';\nimport { PackageFiles } from '../package-files';\nimport { lookupUpdates } from './lookup';\nimport type { LookupUpdateConfig, UpdateResult } from './lookup/types';\n\ntype LookupResult = Result<PackageDependency, Error>;\n\nasync function lookup(\n packageFileConfig: RenovateConfig & PackageFile,\n indep: PackageDependency,\n): Promise<LookupResult> {\n const dep = clone(indep);\n\n dep.updates = [];\n\n if (is.string(dep.depName)) {\n dep.depName = dep.depName.trim();\n }\n\n dep.packageName ??= dep.depName;\n\n if (dep.skipReason) {\n return Result.ok(dep);\n }\n\n if (!is.nonEmptyString(dep.packageName)) {\n dep.skipReason = 'invalid-name';\n return Result.ok(dep);\n }\n\n if (dep.isInternal && !packageFileConfig.updateInternalDeps) {\n dep.skipReason = 'internal-package';\n return Result.ok(dep);\n }\n\n const { depName } = dep;\n // TODO: fix types\n let depConfig = mergeChildConfig(packageFileConfig, dep);\n const datasourceDefaultConfig = await getDefaultConfig(depConfig.datasource!);\n depConfig = mergeChildConfig(depConfig, datasourceDefaultConfig);\n depConfig.versioning ??= getDefaultVersioning(depConfig.datasource);\n depConfig = await applyPackageRules(depConfig, 'pre-lookup');\n depConfig.packageName ??= depConfig.depName;\n\n if (depConfig.ignoreDeps!.includes(depName!)) {\n // TODO: fix types (#22198)\n logger.debug(`Dependency: ${depName!}, is ignored`);\n dep.skipReason = 'ignored';\n return Result.ok(dep);\n }\n\n if (depConfig.enabled === false) {\n logger.debug(`Dependency: ${depName!}, is disabled`);\n dep.skipReason = 'disabled';\n return Result.ok(dep);\n }\n\n if (!depConfig.datasource) {\n return Result.ok(dep);\n }\n\n return LookupStats.wrap(depConfig.datasource, async () => {\n const { packageFile, manager } = packageFileConfig;\n return await Result.wrap(lookupUpdates(depConfig as LookupUpdateConfig))\n .onValue((dep) => {\n logger.trace(\n { dep, packageFile, manager },\n 'Dependency lookup success',\n );\n })\n .onError((err) => {\n logger.trace(\n { err, depName, packageFile, manager },\n 'Dependency lookup error',\n );\n })\n .catch((err): Result<UpdateResult, Error> => {\n if (\n packageFileConfig.repoIsOnboarded === true ||\n !(err instanceof ExternalHostError)\n ) {\n return Result.err(err);\n }\n\n const cause = err.err;\n return Result.ok({\n updates: [],\n warnings: [\n {\n topic: 'Lookup Error',\n message: `${depName}: ${cause.message}`,\n },\n ],\n });\n })\n .transform((upd): PackageDependency => Object.assign(dep, upd));\n });\n}\n\nasync function fetchManagerPackagerFileUpdates(\n config: RenovateConfig,\n managerConfig: RenovateConfig,\n pFile: PackageFile,\n): Promise<void> {\n const { packageFile } = pFile;\n const packageFileConfig = mergeChildConfig(managerConfig, pFile);\n if (pFile.extractedConstraints) {\n packageFileConfig.constraints = {\n ...pFile.extractedConstraints,\n ...config.constraints,\n };\n }\n const { manager } = packageFileConfig;\n const queue = pFile.deps.map(\n (dep) => async (): Promise<PackageDependency> => {\n const updates = await lookup(packageFileConfig, dep);\n return updates.unwrapOrThrow();\n },\n );\n logger.trace(\n { manager, packageFile, queueLength: queue.length },\n 'fetchManagerPackagerFileUpdates starting with concurrency',\n );\n\n pFile.deps = await p.all(queue);\n logger.trace(\n { manager, packageFile },\n 'fetchManagerPackagerFileUpdates finished',\n );\n}\n\nasync function fetchManagerUpdates(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n manager: string,\n): Promise<void> {\n const managerConfig = getManagerConfig(config, manager);\n const queue = packageFiles[manager].map(\n (pFile) => (): Promise<void> =>\n fetchManagerPackagerFileUpdates(config, managerConfig, pFile),\n );\n logger.trace(\n { manager, queueLength: queue.length },\n 'fetchManagerUpdates starting',\n );\n await p.all(queue);\n logger.trace({ manager }, 'fetchManagerUpdates finished');\n}\n\nexport async function fetchUpdates(\n config: RenovateConfig,\n packageFiles: Record<string, PackageFile[]>,\n): Promise<void> {\n const managers = Object.keys(packageFiles);\n const allManagerJobs = managers.map((manager) =>\n fetchManagerUpdates(config, packageFiles, manager),\n );\n await Promise.all(allManagerJobs);\n PackageFiles.add(config.baseBranch!, { ...packageFiles });\n logger.debug(\n { baseBranch: config.baseBranch },\n 'Package releases lookups complete',\n );\n}\n"]}
|
|
@@ -2,5 +2,6 @@ import type { RenovateConfig } from '../../../config/types';
|
|
|
2
2
|
import type { BranchConfig } from '../../types';
|
|
3
3
|
import type { ExtractResult } from './extract-update';
|
|
4
4
|
import type { WriteUpdateResult } from './write';
|
|
5
|
+
export declare function getBaseBranchConfig(baseBranch: string, config: RenovateConfig): Promise<RenovateConfig>;
|
|
5
6
|
export declare function extractDependencies(config: RenovateConfig, overwriteCache?: boolean): Promise<ExtractResult>;
|
|
6
7
|
export declare function updateRepo(config: RenovateConfig, branches: BranchConfig[]): Promise<WriteUpdateResult | undefined>;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getBaseBranchConfig = getBaseBranchConfig;
|
|
3
4
|
exports.extractDependencies = extractDependencies;
|
|
4
5
|
exports.updateRepo = updateRepo;
|
|
5
6
|
// TODO #22198
|
|
6
7
|
const config_1 = require("../../../config");
|
|
7
8
|
const global_1 = require("../../../config/global");
|
|
9
|
+
const migrate_validate_1 = require("../../../config/migrate-validate");
|
|
8
10
|
const presets_1 = require("../../../config/presets");
|
|
9
11
|
const error_messages_1 = require("../../../constants/error-messages");
|
|
10
12
|
const logger_1 = require("../../../logger");
|
|
@@ -39,6 +41,16 @@ async function getBaseBranchConfig(baseBranch, config) {
|
|
|
39
41
|
error.validationMessage = `Error fetching config file \`${configFileName}\` from branch \`${baseBranch}\``;
|
|
40
42
|
throw error;
|
|
41
43
|
}
|
|
44
|
+
baseBranchConfig = await (0, migrate_validate_1.migrateAndValidate)(config, baseBranchConfig);
|
|
45
|
+
if (baseBranchConfig.errors?.length) {
|
|
46
|
+
const error = new Error(error_messages_1.CONFIG_VALIDATION);
|
|
47
|
+
error.validationSource = configFileName;
|
|
48
|
+
error.validationError = `The renovate configuration file of branch ${baseBranch} contains some invalid settings`;
|
|
49
|
+
error.validationMessage = baseBranchConfig.errors
|
|
50
|
+
.map((e) => e.message)
|
|
51
|
+
.join(', ');
|
|
52
|
+
throw error;
|
|
53
|
+
}
|
|
42
54
|
baseBranchConfig = await (0, presets_1.resolveConfigPresets)(baseBranchConfig, config);
|
|
43
55
|
baseBranchConfig = (0, config_1.mergeChildConfig)(config, baseBranchConfig);
|
|
44
56
|
// istanbul ignore if
|
|
@@ -47,8 +59,9 @@ async function getBaseBranchConfig(baseBranch, config) {
|
|
|
47
59
|
}
|
|
48
60
|
// baseBranches value should be based off the default branch
|
|
49
61
|
baseBranchConfig.baseBranchPatterns = config.baseBranchPatterns;
|
|
62
|
+
baseBranchConfig.baseBranches = config.baseBranches;
|
|
50
63
|
}
|
|
51
|
-
if (config
|
|
64
|
+
if (isMultiBaseBranch(config)) {
|
|
52
65
|
baseBranchConfig.branchPrefix += `${baseBranch}-`;
|
|
53
66
|
baseBranchConfig.hasBaseBranches = true;
|
|
54
67
|
}
|
|
@@ -75,6 +88,13 @@ function unfoldBaseBranches(defaultBranch, baseBranchPatterns) {
|
|
|
75
88
|
}
|
|
76
89
|
return [...new Set(unfoldedList)];
|
|
77
90
|
}
|
|
91
|
+
function isMultiBaseBranch(config) {
|
|
92
|
+
if (!config.baseBranchPatterns?.length) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
return (config.baseBranchPatterns.length > 1 ||
|
|
96
|
+
config.baseBranchPatterns[0].startsWith('/'));
|
|
97
|
+
}
|
|
78
98
|
async function extractDependencies(config, overwriteCache = true) {
|
|
79
99
|
await (0, dependency_dashboard_1.readDashboardBody)(config);
|
|
80
100
|
let res = {
|
|
@@ -84,10 +104,10 @@ async function extractDependencies(config, overwriteCache = true) {
|
|
|
84
104
|
};
|
|
85
105
|
if (global_1.GlobalConfig.get('platform') !== 'local' &&
|
|
86
106
|
config.baseBranchPatterns?.length) {
|
|
87
|
-
config.
|
|
88
|
-
logger_1.logger.debug({ baseBranches: config.
|
|
107
|
+
config.baseBranches = unfoldBaseBranches(config.defaultBranch, config.baseBranchPatterns);
|
|
108
|
+
logger_1.logger.debug({ baseBranches: config.baseBranches }, 'baseBranches');
|
|
89
109
|
const extracted = {};
|
|
90
|
-
for (const baseBranch of config.
|
|
110
|
+
for (const baseBranch of config.baseBranches) {
|
|
91
111
|
(0, logger_1.addMeta)({ baseBranch });
|
|
92
112
|
if (scm_1.scm.syncForkWithUpstream) {
|
|
93
113
|
await scm_1.scm.syncForkWithUpstream(baseBranch);
|
|
@@ -101,7 +121,7 @@ async function extractDependencies(config, overwriteCache = true) {
|
|
|
101
121
|
}
|
|
102
122
|
}
|
|
103
123
|
(0, split_1.addSplit)('extract');
|
|
104
|
-
for (const baseBranch of config.
|
|
124
|
+
for (const baseBranch of config.baseBranches) {
|
|
105
125
|
if (await scm_1.scm.branchExists(baseBranch)) {
|
|
106
126
|
(0, logger_1.addMeta)({ baseBranch });
|
|
107
127
|
const baseBranchConfig = await getBaseBranchConfig(baseBranch, config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/index.ts"],"names":[],"mappings":"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","sourcesContent":["// TODO #22198\nimport { mergeChildConfig } from '../../../config';\nimport { GlobalConfig } from '../../../config/global';\nimport { resolveConfigPresets } from '../../../config/presets';\nimport type { RenovateConfig } from '../../../config/types';\nimport { CONFIG_VALIDATION } from '../../../constants/error-messages';\nimport { addMeta, logger, removeMeta } from '../../../logger';\nimport type { PackageFile } from '../../../modules/manager/types';\nimport { platform } from '../../../modules/platform';\nimport { scm } from '../../../modules/platform/scm';\nimport { getCache } from '../../../util/cache/repository';\nimport { clone } from '../../../util/clone';\nimport { getBranchList } from '../../../util/git';\nimport { addSplit } from '../../../util/split';\nimport { getRegexPredicate } from '../../../util/string-match';\nimport type { BranchConfig } from '../../types';\nimport { readDashboardBody } from '../dependency-dashboard';\nimport type { ExtractResult } from './extract-update';\nimport { extract, lookup, update } from './extract-update';\nimport type { WriteUpdateResult } from './write';\n\nasync function getBaseBranchConfig(\n baseBranch: string,\n config: RenovateConfig,\n): Promise<RenovateConfig> {\n logger.debug(`baseBranch: ${baseBranch}`);\n\n let baseBranchConfig: RenovateConfig = clone(config);\n\n if (\n config.useBaseBranchConfig === 'merge' &&\n baseBranch !== config.defaultBranch\n ) {\n logger.debug(\n { baseBranch },\n `Merging config from base branch because useBaseBranchConfig=merge`,\n );\n\n // Retrieve config file name autodetected for this repo\n const cache = getCache();\n // TODO: types (#22198)\n const configFileName = cache.configFileName!;\n\n try {\n baseBranchConfig = await platform.getJsonFile(\n configFileName,\n config.repository,\n baseBranch,\n );\n logger.debug({ config: baseBranchConfig }, 'Base branch config raw');\n } catch {\n logger.error(\n { configFileName, baseBranch },\n `Error fetching config file from base branch - possible config name mismatch between branches?`,\n );\n\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = 'config';\n error.validationError = 'Error fetching config file';\n error.validationMessage = `Error fetching config file \\`${configFileName}\\` from branch \\`${baseBranch}\\``;\n throw error;\n }\n\n baseBranchConfig = await resolveConfigPresets(baseBranchConfig, config);\n baseBranchConfig = mergeChildConfig(config, baseBranchConfig);\n\n // istanbul ignore if\n if (config.printConfig) {\n logger.info(\n { config: baseBranchConfig },\n 'Base branch config after merge',\n );\n }\n\n // baseBranches value should be based off the default branch\n baseBranchConfig.baseBranchPatterns = config.baseBranchPatterns;\n }\n\n if (config.baseBranchPatterns!.length > 1) {\n baseBranchConfig.branchPrefix += `${baseBranch}-`;\n baseBranchConfig.hasBaseBranches = true;\n }\n\n baseBranchConfig = mergeChildConfig(baseBranchConfig, { baseBranch });\n\n return baseBranchConfig;\n}\n\nfunction unfoldBaseBranches(\n defaultBranch: string,\n baseBranchPatterns: string[],\n): string[] {\n const unfoldedList: string[] = [];\n\n const allBranches = getBranchList();\n for (const baseBranchPattern of baseBranchPatterns) {\n const isAllowedPred = getRegexPredicate(baseBranchPattern);\n if (isAllowedPred) {\n const matchingBranches = allBranches.filter(isAllowedPred);\n logger.debug(\n `baseBranchePatterns regex \"${baseBranchPattern}\" matches [${matchingBranches.join()}]`,\n );\n unfoldedList.push(...matchingBranches);\n } else if (baseBranchPattern === '$default') {\n logger.debug(`baseBranchPatterns \"$default\" matches \"${defaultBranch}\"`);\n unfoldedList.push(defaultBranch);\n } else {\n unfoldedList.push(baseBranchPattern);\n }\n }\n\n return [...new Set(unfoldedList)];\n}\n\nexport async function extractDependencies(\n config: RenovateConfig,\n overwriteCache = true,\n): Promise<ExtractResult> {\n await readDashboardBody(config);\n let res: ExtractResult = {\n branches: [],\n branchList: [],\n packageFiles: {},\n };\n if (\n GlobalConfig.get('platform') !== 'local' &&\n config.baseBranchPatterns?.length\n ) {\n config.baseBranchPatterns = unfoldBaseBranches(\n config.defaultBranch!,\n config.baseBranchPatterns,\n );\n logger.debug({ baseBranches: config.baseBranchPatterns }, 'baseBranches');\n const extracted: Record<string, Record<string, PackageFile[]>> = {};\n for (const baseBranch of config.baseBranchPatterns) {\n addMeta({ baseBranch });\n\n if (scm.syncForkWithUpstream) {\n await scm.syncForkWithUpstream(baseBranch);\n }\n if (await scm.branchExists(baseBranch)) {\n const baseBranchConfig = await getBaseBranchConfig(baseBranch, config);\n extracted[baseBranch] = await extract(baseBranchConfig, overwriteCache);\n } else {\n logger.warn({ baseBranch }, 'Base branch does not exist - skipping');\n }\n }\n addSplit('extract');\n for (const baseBranch of config.baseBranchPatterns) {\n if (await scm.branchExists(baseBranch)) {\n addMeta({ baseBranch });\n const baseBranchConfig = await getBaseBranchConfig(baseBranch, config);\n const packageFiles = extracted[baseBranch];\n const baseBranchRes = await lookup(baseBranchConfig, packageFiles);\n res.branches = res.branches.concat(baseBranchRes?.branches);\n res.branchList = res.branchList.concat(baseBranchRes?.branchList);\n if (!res.packageFiles || !Object.keys(res.packageFiles).length) {\n // Use the first branch\n res.packageFiles = baseBranchRes?.packageFiles;\n }\n }\n }\n removeMeta(['baseBranch']);\n } else {\n logger.debug('No baseBranches');\n const packageFiles = await extract(config, overwriteCache);\n addSplit('extract');\n if (GlobalConfig.get('dryRun') === 'extract') {\n res.packageFiles = packageFiles;\n logger.info({ packageFiles }, 'Extracted dependencies');\n return res;\n }\n res = await lookup(config, packageFiles);\n }\n addSplit('lookup');\n return res;\n}\n\nexport function updateRepo(\n config: RenovateConfig,\n branches: BranchConfig[],\n): Promise<WriteUpdateResult | undefined> {\n logger.debug('processRepo()');\n\n return update(config, branches);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/index.ts"],"names":[],"mappings":"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","sourcesContent":["// TODO #22198\nimport { mergeChildConfig } from '../../../config';\nimport { GlobalConfig } from '../../../config/global';\nimport { migrateAndValidate } from '../../../config/migrate-validate';\nimport { resolveConfigPresets } from '../../../config/presets';\nimport type { RenovateConfig } from '../../../config/types';\nimport { CONFIG_VALIDATION } from '../../../constants/error-messages';\nimport { addMeta, logger, removeMeta } from '../../../logger';\nimport type { PackageFile } from '../../../modules/manager/types';\nimport { platform } from '../../../modules/platform';\nimport { scm } from '../../../modules/platform/scm';\nimport { getCache } from '../../../util/cache/repository';\nimport { clone } from '../../../util/clone';\nimport { getBranchList } from '../../../util/git';\nimport { addSplit } from '../../../util/split';\nimport { getRegexPredicate } from '../../../util/string-match';\nimport type { BranchConfig } from '../../types';\nimport { readDashboardBody } from '../dependency-dashboard';\nimport type { ExtractResult } from './extract-update';\nimport { extract, lookup, update } from './extract-update';\nimport type { WriteUpdateResult } from './write';\n\nexport async function getBaseBranchConfig(\n baseBranch: string,\n config: RenovateConfig,\n): Promise<RenovateConfig> {\n logger.debug(`baseBranch: ${baseBranch}`);\n\n let baseBranchConfig: RenovateConfig = clone(config);\n\n if (\n config.useBaseBranchConfig === 'merge' &&\n baseBranch !== config.defaultBranch\n ) {\n logger.debug(\n { baseBranch },\n `Merging config from base branch because useBaseBranchConfig=merge`,\n );\n\n // Retrieve config file name autodetected for this repo\n const cache = getCache();\n // TODO: types (#22198)\n const configFileName = cache.configFileName!;\n\n try {\n baseBranchConfig = await platform.getJsonFile(\n configFileName,\n config.repository,\n baseBranch,\n );\n logger.debug({ config: baseBranchConfig }, 'Base branch config raw');\n } catch {\n logger.error(\n { configFileName, baseBranch },\n `Error fetching config file from base branch - possible config name mismatch between branches?`,\n );\n\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = 'config';\n error.validationError = 'Error fetching config file';\n error.validationMessage = `Error fetching config file \\`${configFileName}\\` from branch \\`${baseBranch}\\``;\n throw error;\n }\n\n baseBranchConfig = await migrateAndValidate(config, baseBranchConfig);\n if (baseBranchConfig.errors?.length) {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = configFileName;\n error.validationError = `The renovate configuration file of branch ${baseBranch} contains some invalid settings`;\n error.validationMessage = baseBranchConfig.errors\n .map((e) => e.message)\n .join(', ');\n throw error;\n }\n\n baseBranchConfig = await resolveConfigPresets(baseBranchConfig, config);\n baseBranchConfig = mergeChildConfig(config, baseBranchConfig);\n\n // istanbul ignore if\n if (config.printConfig) {\n logger.info(\n { config: baseBranchConfig },\n 'Base branch config after merge',\n );\n }\n\n // baseBranches value should be based off the default branch\n baseBranchConfig.baseBranchPatterns = config.baseBranchPatterns;\n baseBranchConfig.baseBranches = config.baseBranches;\n }\n\n if (isMultiBaseBranch(config)) {\n baseBranchConfig.branchPrefix += `${baseBranch}-`;\n baseBranchConfig.hasBaseBranches = true;\n }\n\n baseBranchConfig = mergeChildConfig(baseBranchConfig, { baseBranch });\n\n return baseBranchConfig;\n}\n\nfunction unfoldBaseBranches(\n defaultBranch: string,\n baseBranchPatterns: string[],\n): string[] {\n const unfoldedList: string[] = [];\n\n const allBranches = getBranchList();\n for (const baseBranchPattern of baseBranchPatterns) {\n const isAllowedPred = getRegexPredicate(baseBranchPattern);\n if (isAllowedPred) {\n const matchingBranches = allBranches.filter(isAllowedPred);\n logger.debug(\n `baseBranchePatterns regex \"${baseBranchPattern}\" matches [${matchingBranches.join()}]`,\n );\n unfoldedList.push(...matchingBranches);\n } else if (baseBranchPattern === '$default') {\n logger.debug(`baseBranchPatterns \"$default\" matches \"${defaultBranch}\"`);\n unfoldedList.push(defaultBranch);\n } else {\n unfoldedList.push(baseBranchPattern);\n }\n }\n\n return [...new Set(unfoldedList)];\n}\n\nfunction isMultiBaseBranch(config: RenovateConfig): boolean {\n if (!config.baseBranchPatterns?.length) {\n return false;\n }\n\n return (\n config.baseBranchPatterns.length > 1 ||\n config.baseBranchPatterns[0].startsWith('/')\n );\n}\n\nexport async function extractDependencies(\n config: RenovateConfig,\n overwriteCache = true,\n): Promise<ExtractResult> {\n await readDashboardBody(config);\n let res: ExtractResult = {\n branches: [],\n branchList: [],\n packageFiles: {},\n };\n if (\n GlobalConfig.get('platform') !== 'local' &&\n config.baseBranchPatterns?.length\n ) {\n config.baseBranches = unfoldBaseBranches(\n config.defaultBranch!,\n config.baseBranchPatterns,\n );\n logger.debug({ baseBranches: config.baseBranches }, 'baseBranches');\n const extracted: Record<string, Record<string, PackageFile[]>> = {};\n for (const baseBranch of config.baseBranches) {\n addMeta({ baseBranch });\n\n if (scm.syncForkWithUpstream) {\n await scm.syncForkWithUpstream(baseBranch);\n }\n if (await scm.branchExists(baseBranch)) {\n const baseBranchConfig = await getBaseBranchConfig(baseBranch, config);\n extracted[baseBranch] = await extract(baseBranchConfig, overwriteCache);\n } else {\n logger.warn({ baseBranch }, 'Base branch does not exist - skipping');\n }\n }\n addSplit('extract');\n for (const baseBranch of config.baseBranches) {\n if (await scm.branchExists(baseBranch)) {\n addMeta({ baseBranch });\n const baseBranchConfig = await getBaseBranchConfig(baseBranch, config);\n const packageFiles = extracted[baseBranch];\n const baseBranchRes = await lookup(baseBranchConfig, packageFiles);\n res.branches = res.branches.concat(baseBranchRes?.branches);\n res.branchList = res.branchList.concat(baseBranchRes?.branchList);\n if (!res.packageFiles || !Object.keys(res.packageFiles).length) {\n // Use the first branch\n res.packageFiles = baseBranchRes?.packageFiles;\n }\n }\n }\n removeMeta(['baseBranch']);\n } else {\n logger.debug('No baseBranches');\n const packageFiles = await extract(config, overwriteCache);\n addSplit('extract');\n if (GlobalConfig.get('dryRun') === 'extract') {\n res.packageFiles = packageFiles;\n logger.info({ packageFiles }, 'Extracted dependencies');\n return res;\n }\n res = await lookup(config, packageFiles);\n }\n addSplit('lookup');\n return res;\n}\n\nexport function updateRepo(\n config: RenovateConfig,\n branches: BranchConfig[],\n): Promise<WriteUpdateResult | undefined> {\n logger.debug('processRepo()');\n\n return update(config, branches);\n}\n"]}
|
|
@@ -13,7 +13,7 @@ const package_rules_1 = require("../../../../util/package-rules");
|
|
|
13
13
|
const pretty_time_1 = require("../../../../util/pretty-time");
|
|
14
14
|
const update_type_1 = require("./update-type");
|
|
15
15
|
async function filterInternalChecks(config, versioningApi, bucket, sortedReleases) {
|
|
16
|
-
const { currentVersion, datasource, depName, internalChecksFilter } = config;
|
|
16
|
+
const { currentVersion, datasource, depName, packageName, internalChecksFilter, } = config;
|
|
17
17
|
let release = undefined;
|
|
18
18
|
let pendingChecks = false;
|
|
19
19
|
let pendingReleases = [];
|
|
@@ -22,6 +22,10 @@ async function filterInternalChecks(config, versioningApi, bucket, sortedRelease
|
|
|
22
22
|
release = sortedReleases.pop();
|
|
23
23
|
}
|
|
24
24
|
else {
|
|
25
|
+
const candidateVersionsWithoutReleaseTimestamp = {
|
|
26
|
+
'timestamp-required': [],
|
|
27
|
+
'timestamp-optional': [],
|
|
28
|
+
};
|
|
25
29
|
// iterate through releases from highest to lowest, looking for the first which will pass checks if present
|
|
26
30
|
for (let candidateRelease of sortedReleases.reverse()) {
|
|
27
31
|
// merge the release data into dependency config
|
|
@@ -40,19 +44,34 @@ async function filterInternalChecks(config, versioningApi, bucket, sortedRelease
|
|
|
40
44
|
candidateRelease = updatedCandidateRelease;
|
|
41
45
|
// Now check for a minimumReleaseAge config
|
|
42
46
|
const { minimumConfidence, minimumReleaseAge, updateType } = releaseConfig;
|
|
43
|
-
if (is_1.default.nonEmptyString(minimumReleaseAge)
|
|
44
|
-
|
|
45
|
-
if
|
|
46
|
-
|
|
47
|
-
//
|
|
48
|
-
|
|
47
|
+
if (is_1.default.nonEmptyString(minimumReleaseAge)) {
|
|
48
|
+
const minimumReleaseAgeBehaviour = releaseConfig.minimumReleaseAgeBehaviour;
|
|
49
|
+
// if there is a releaseTimestamp, regardless of `minimumReleaseAgeBehaviour`, we should process it
|
|
50
|
+
if (candidateRelease.releaseTimestamp) {
|
|
51
|
+
// we should skip this if we have a timestamp that isn't passing checks:
|
|
52
|
+
if ((0, date_1.getElapsedMs)(candidateRelease.releaseTimestamp) <
|
|
53
|
+
(0, number_1.coerceNumber)((0, pretty_time_1.toMs)(minimumReleaseAge), 0)) {
|
|
54
|
+
// Skip it if it doesn't pass checks
|
|
55
|
+
logger_1.logger.trace({ depName, check: 'minimumReleaseAge' }, `Release ${candidateRelease.version} is pending status checks`);
|
|
56
|
+
pendingReleases.unshift(candidateRelease);
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
} // or if there is no timestamp, and we're running in `minimumReleaseAgeBehaviour=timestamp-required`
|
|
60
|
+
else if (is_1.default.nullOrUndefined(candidateRelease.releaseTimestamp) &&
|
|
61
|
+
minimumReleaseAgeBehaviour === 'timestamp-required') {
|
|
62
|
+
// Skip it, as we require a timestamp
|
|
63
|
+
candidateVersionsWithoutReleaseTimestamp[minimumReleaseAgeBehaviour].push(candidateRelease.version);
|
|
49
64
|
pendingReleases.unshift(candidateRelease);
|
|
50
65
|
continue;
|
|
66
|
+
} // if there is no timestamp, and we're running in `optional` mode, we can allow it
|
|
67
|
+
else if (is_1.default.nullOrUndefined(candidateRelease.releaseTimestamp) &&
|
|
68
|
+
minimumReleaseAgeBehaviour === 'timestamp-optional') {
|
|
69
|
+
candidateVersionsWithoutReleaseTimestamp[minimumReleaseAgeBehaviour].push(candidateRelease.version);
|
|
51
70
|
}
|
|
52
71
|
}
|
|
53
72
|
// TODO #22198
|
|
54
73
|
if ((0, merge_confidence_1.isActiveConfidenceLevel)(minimumConfidence)) {
|
|
55
|
-
const confidenceLevel = (await (0, merge_confidence_1.getMergeConfidenceLevel)(datasource,
|
|
74
|
+
const confidenceLevel = (await (0, merge_confidence_1.getMergeConfidenceLevel)(datasource, packageName, currentVersion, candidateRelease.version, updateType)) ?? 'neutral';
|
|
56
75
|
// TODO #22198
|
|
57
76
|
if (!(0, merge_confidence_1.satisfiesConfidenceLevel)(confidenceLevel, minimumConfidence)) {
|
|
58
77
|
logger_1.logger.trace({ depName, check: 'minimumConfidence' }, `Release ${candidateRelease.version} is pending status checks`);
|
|
@@ -64,6 +83,21 @@ async function filterInternalChecks(config, versioningApi, bucket, sortedRelease
|
|
|
64
83
|
release = candidateRelease;
|
|
65
84
|
break;
|
|
66
85
|
}
|
|
86
|
+
if (candidateVersionsWithoutReleaseTimestamp['timestamp-required'].length) {
|
|
87
|
+
logger_1.logger.debug({
|
|
88
|
+
depName,
|
|
89
|
+
versions: candidateVersionsWithoutReleaseTimestamp['timestamp-required'],
|
|
90
|
+
check: 'minimumReleaseAge',
|
|
91
|
+
}, `Marking ${candidateVersionsWithoutReleaseTimestamp['timestamp-required'].length} release(s) as pending, as they do not have a releaseTimestamp and we're running with minimumReleaseAgeBehaviour=require-timestamp`);
|
|
92
|
+
}
|
|
93
|
+
if (candidateVersionsWithoutReleaseTimestamp['timestamp-optional'].length) {
|
|
94
|
+
logger_1.logger.once.warn("Some release(s) did not have a releaseTimestamp, but as we're running with minimumReleaseAgeBehaviour=timestamp-optional, proceeding. See debug logs for more information");
|
|
95
|
+
logger_1.logger.debug({
|
|
96
|
+
depName,
|
|
97
|
+
versions: candidateVersionsWithoutReleaseTimestamp['timestamp-optional'],
|
|
98
|
+
check: 'minimumReleaseAge',
|
|
99
|
+
}, `${candidateVersionsWithoutReleaseTimestamp['timestamp-optional'].length} release(s) did not have a releaseTimestamp, but as we're running with minimumReleaseAgeBehaviour=timestamp-optional, proceeding`);
|
|
100
|
+
}
|
|
67
101
|
if (!release) {
|
|
68
102
|
if (pendingReleases.length) {
|
|
69
103
|
// If all releases were pending then just take the highest
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-checks.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/filter-checks.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { mergeChildConfig } from '../../../../config';\nimport { logger } from '../../../../logger';\nimport type { Release } from '../../../../modules/datasource';\nimport { postprocessRelease } from '../../../../modules/datasource/postprocess-release';\nimport type { VersioningApi } from '../../../../modules/versioning';\nimport { getElapsedMs } from '../../../../util/date';\nimport {\n getMergeConfidenceLevel,\n isActiveConfidenceLevel,\n satisfiesConfidenceLevel,\n} from '../../../../util/merge-confidence';\nimport { coerceNumber } from '../../../../util/number';\nimport { applyPackageRules } from '../../../../util/package-rules';\nimport { toMs } from '../../../../util/pretty-time';\nimport type { LookupUpdateConfig, UpdateResult } from './types';\nimport { getUpdateType } from './update-type';\n\nexport interface InternalChecksResult {\n release?: Release;\n pendingChecks: boolean;\n pendingReleases: Release[];\n}\n\nexport async function filterInternalChecks(\n config: Partial<LookupUpdateConfig & UpdateResult>,\n versioningApi: VersioningApi,\n bucket: string,\n sortedReleases: Release[],\n): Promise<InternalChecksResult> {\n const { currentVersion, datasource, depName, internalChecksFilter } = config;\n let release: Release | undefined = undefined;\n let pendingChecks = false;\n let pendingReleases: Release[] = [];\n if (internalChecksFilter === 'none') {\n // Don't care if minimumReleaseAge or minimumConfidence are unmet\n release = sortedReleases.pop();\n } else {\n // iterate through releases from highest to lowest, looking for the first which will pass checks if present\n for (let candidateRelease of sortedReleases.reverse()) {\n // merge the release data into dependency config\n let releaseConfig = mergeChildConfig(config, candidateRelease);\n // calculate updateType and then apply it\n releaseConfig.updateType = getUpdateType(\n releaseConfig,\n versioningApi,\n // TODO #22198\n currentVersion!,\n candidateRelease.version,\n );\n releaseConfig = mergeChildConfig(\n releaseConfig,\n releaseConfig[releaseConfig.updateType]!,\n );\n // Apply packageRules in case any apply to updateType\n releaseConfig = await applyPackageRules(releaseConfig, 'update-type');\n\n const updatedCandidateRelease = await postprocessRelease(\n releaseConfig,\n candidateRelease,\n );\n if (!updatedCandidateRelease) {\n continue;\n }\n candidateRelease = updatedCandidateRelease;\n\n // Now check for a minimumReleaseAge config\n const { minimumConfidence, minimumReleaseAge, updateType } =\n releaseConfig;\n if (\n is.nonEmptyString(minimumReleaseAge) &&\n candidateRelease.releaseTimestamp\n ) {\n if (\n getElapsedMs(candidateRelease.releaseTimestamp) <\n coerceNumber(toMs(minimumReleaseAge), 0)\n ) {\n // Skip it if it doesn't pass checks\n logger.trace(\n { depName, check: 'minimumReleaseAge' },\n `Release ${candidateRelease.version} is pending status checks`,\n );\n pendingReleases.unshift(candidateRelease);\n continue;\n }\n }\n\n // TODO #22198\n if (isActiveConfidenceLevel(minimumConfidence!)) {\n const confidenceLevel =\n (await getMergeConfidenceLevel(\n datasource!,\n depName!,\n currentVersion!,\n candidateRelease.version,\n updateType!,\n )) ?? 'neutral';\n // TODO #22198\n if (!satisfiesConfidenceLevel(confidenceLevel, minimumConfidence!)) {\n logger.trace(\n { depName, check: 'minimumConfidence' },\n `Release ${candidateRelease.version} is pending status checks`,\n );\n pendingReleases.unshift(candidateRelease);\n continue;\n }\n }\n // If we get to here, then the release is OK and we can stop iterating\n release = candidateRelease;\n break;\n }\n if (!release) {\n if (pendingReleases.length) {\n // If all releases were pending then just take the highest\n logger.trace(\n { depName, bucket },\n 'All releases are pending - using latest',\n );\n release = pendingReleases.pop();\n // None are pending anymore because we took the latest, so empty the array\n pendingReleases = [];\n if (internalChecksFilter === 'strict') {\n pendingChecks = true;\n }\n }\n }\n }\n\n return { release, pendingChecks, pendingReleases };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"filter-checks.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/filter-checks.ts"],"names":[],"mappings":";;AAyBA,oDA0KC;;AAnMD,kEAAkC;AAClC,+CAAsD;AAEtD,+CAA4C;AAE5C,4FAAwF;AAExF,gDAAqD;AACrD,wEAI2C;AAC3C,oDAAuD;AACvD,kEAAmE;AACnE,8DAAoD;AAEpD,+CAA8C;AAQvC,KAAK,UAAU,oBAAoB,CACxC,MAAkD,EAClD,aAA4B,EAC5B,MAAc,EACd,cAAyB;IAEzB,MAAM,EACJ,cAAc,EACd,UAAU,EACV,OAAO,EACP,WAAW,EACX,oBAAoB,GACrB,GAAG,MAAM,CAAC;IACX,IAAI,OAAO,GAAwB,SAAS,CAAC;IAC7C,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,eAAe,GAAc,EAAE,CAAC;IACpC,IAAI,oBAAoB,KAAK,MAAM,EAAE,CAAC;QACpC,iEAAiE;QACjE,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,wCAAwC,GAG1C;YACF,oBAAoB,EAAE,EAAE;YACxB,oBAAoB,EAAE,EAAE;SACzB,CAAC;QAEF,2GAA2G;QAC3G,KAAK,IAAI,gBAAgB,IAAI,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,gDAAgD;YAChD,IAAI,aAAa,GAAG,IAAA,yBAAgB,EAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YAC/D,yCAAyC;YACzC,aAAa,CAAC,UAAU,GAAG,IAAA,2BAAa,EACtC,aAAa,EACb,aAAa;YACb,cAAc;YACd,cAAe,EACf,gBAAgB,CAAC,OAAO,CACzB,CAAC;YACF,aAAa,GAAG,IAAA,yBAAgB,EAC9B,aAAa,EACb,aAAa,CAAC,aAAa,CAAC,UAAU,CAAE,CACzC,CAAC;YACF,qDAAqD;YACrD,aAAa,GAAG,MAAM,IAAA,iCAAiB,EAAC,aAAa,EAAE,aAAa,CAAC,CAAC;YAEtE,MAAM,uBAAuB,GAAG,MAAM,IAAA,wCAAkB,EACtD,aAAa,EACb,gBAAgB,CACjB,CAAC;YACF,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBAC7B,SAAS;YACX,CAAC;YACD,gBAAgB,GAAG,uBAAuB,CAAC;YAE3C,2CAA2C;YAC3C,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,GACxD,aAAa,CAAC;YAChB,IAAI,YAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACzC,MAAM,0BAA0B,GAC9B,aAAa,CAAC,0BAA0B,CAAC;gBAE3C,mGAAmG;gBACnG,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;oBACtC,wEAAwE;oBACxE,IACE,IAAA,mBAAY,EAAC,gBAAgB,CAAC,gBAAgB,CAAC;wBAC/C,IAAA,qBAAY,EAAC,IAAA,kBAAI,EAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,EACxC,CAAC;wBACD,oCAAoC;wBACpC,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,EACvC,WAAW,gBAAgB,CAAC,OAAO,2BAA2B,CAC/D,CAAC;wBACF,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;wBAC1C,SAAS;oBACX,CAAC;gBACH,CAAC,CAAC,oGAAoG;qBACjG,IACH,YAAE,CAAC,eAAe,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBACrD,0BAA0B,KAAK,oBAAoB,EACnD,CAAC;oBACD,qCAAqC;oBACrC,wCAAwC,CACtC,0BAA0B,CAC3B,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBACjC,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;oBAC1C,SAAS;gBACX,CAAC,CAAC,kFAAkF;qBAC/E,IACH,YAAE,CAAC,eAAe,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBACrD,0BAA0B,KAAK,oBAAoB,EACnD,CAAC;oBACD,wCAAwC,CACtC,0BAA0B,CAC3B,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,cAAc;YACd,IAAI,IAAA,0CAAuB,EAAC,iBAAkB,CAAC,EAAE,CAAC;gBAChD,MAAM,eAAe,GACnB,CAAC,MAAM,IAAA,0CAAuB,EAC5B,UAAW,EACX,WAAY,EACZ,cAAe,EACf,gBAAgB,CAAC,OAAO,EACxB,UAAW,CACZ,CAAC,IAAI,SAAS,CAAC;gBAClB,cAAc;gBACd,IAAI,CAAC,IAAA,2CAAwB,EAAC,eAAe,EAAE,iBAAkB,CAAC,EAAE,CAAC;oBACnE,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,EACvC,WAAW,gBAAgB,CAAC,OAAO,2BAA2B,CAC/D,CAAC;oBACF,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;oBAC1C,SAAS;gBACX,CAAC;YACH,CAAC;YACD,sEAAsE;YACtE,OAAO,GAAG,gBAAgB,CAAC;YAC3B,MAAM;QACR,CAAC;QAED,IAAI,wCAAwC,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,CAAC;YAC1E,eAAM,CAAC,KAAK,CACV;gBACE,OAAO;gBACP,QAAQ,EACN,wCAAwC,CAAC,oBAAoB,CAAC;gBAChE,KAAK,EAAE,mBAAmB;aAC3B,EACD,WAAW,wCAAwC,CAAC,oBAAoB,CAAC,CAAC,MAAM,oIAAoI,CACrN,CAAC;QACJ,CAAC;QAED,IAAI,wCAAwC,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,CAAC;YAC1E,eAAM,CAAC,IAAI,CAAC,IAAI,CACd,2KAA2K,CAC5K,CAAC;YACF,eAAM,CAAC,KAAK,CACV;gBACE,OAAO;gBACP,QAAQ,EACN,wCAAwC,CAAC,oBAAoB,CAAC;gBAChE,KAAK,EAAE,mBAAmB;aAC3B,EACD,GAAG,wCAAwC,CAAC,oBAAoB,CAAC,CAAC,MAAM,kIAAkI,CAC3M,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;gBAC3B,0DAA0D;gBAC1D,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,MAAM,EAAE,EACnB,yCAAyC,CAC1C,CAAC;gBACF,OAAO,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;gBAChC,0EAA0E;gBAC1E,eAAe,GAAG,EAAE,CAAC;gBACrB,IAAI,oBAAoB,KAAK,QAAQ,EAAE,CAAC;oBACtC,aAAa,GAAG,IAAI,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;AACrD,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { mergeChildConfig } from '../../../../config';\nimport type { MinimumReleaseAgeBehaviour } from '../../../../config/types';\nimport { logger } from '../../../../logger';\nimport type { Release } from '../../../../modules/datasource';\nimport { postprocessRelease } from '../../../../modules/datasource/postprocess-release';\nimport type { VersioningApi } from '../../../../modules/versioning';\nimport { getElapsedMs } from '../../../../util/date';\nimport {\n getMergeConfidenceLevel,\n isActiveConfidenceLevel,\n satisfiesConfidenceLevel,\n} from '../../../../util/merge-confidence';\nimport { coerceNumber } from '../../../../util/number';\nimport { applyPackageRules } from '../../../../util/package-rules';\nimport { toMs } from '../../../../util/pretty-time';\nimport type { LookupUpdateConfig, UpdateResult } from './types';\nimport { getUpdateType } from './update-type';\n\nexport interface InternalChecksResult {\n release?: Release;\n pendingChecks: boolean;\n pendingReleases: Release[];\n}\n\nexport async function filterInternalChecks(\n config: Partial<LookupUpdateConfig & UpdateResult>,\n versioningApi: VersioningApi,\n bucket: string,\n sortedReleases: Release[],\n): Promise<InternalChecksResult> {\n const {\n currentVersion,\n datasource,\n depName,\n packageName,\n internalChecksFilter,\n } = config;\n let release: Release | undefined = undefined;\n let pendingChecks = false;\n let pendingReleases: Release[] = [];\n if (internalChecksFilter === 'none') {\n // Don't care if minimumReleaseAge or minimumConfidence are unmet\n release = sortedReleases.pop();\n } else {\n const candidateVersionsWithoutReleaseTimestamp: Record<\n MinimumReleaseAgeBehaviour,\n string[]\n > = {\n 'timestamp-required': [],\n 'timestamp-optional': [],\n };\n\n // iterate through releases from highest to lowest, looking for the first which will pass checks if present\n for (let candidateRelease of sortedReleases.reverse()) {\n // merge the release data into dependency config\n let releaseConfig = mergeChildConfig(config, candidateRelease);\n // calculate updateType and then apply it\n releaseConfig.updateType = getUpdateType(\n releaseConfig,\n versioningApi,\n // TODO #22198\n currentVersion!,\n candidateRelease.version,\n );\n releaseConfig = mergeChildConfig(\n releaseConfig,\n releaseConfig[releaseConfig.updateType]!,\n );\n // Apply packageRules in case any apply to updateType\n releaseConfig = await applyPackageRules(releaseConfig, 'update-type');\n\n const updatedCandidateRelease = await postprocessRelease(\n releaseConfig,\n candidateRelease,\n );\n if (!updatedCandidateRelease) {\n continue;\n }\n candidateRelease = updatedCandidateRelease;\n\n // Now check for a minimumReleaseAge config\n const { minimumConfidence, minimumReleaseAge, updateType } =\n releaseConfig;\n if (is.nonEmptyString(minimumReleaseAge)) {\n const minimumReleaseAgeBehaviour =\n releaseConfig.minimumReleaseAgeBehaviour;\n\n // if there is a releaseTimestamp, regardless of `minimumReleaseAgeBehaviour`, we should process it\n if (candidateRelease.releaseTimestamp) {\n // we should skip this if we have a timestamp that isn't passing checks:\n if (\n getElapsedMs(candidateRelease.releaseTimestamp) <\n coerceNumber(toMs(minimumReleaseAge), 0)\n ) {\n // Skip it if it doesn't pass checks\n logger.trace(\n { depName, check: 'minimumReleaseAge' },\n `Release ${candidateRelease.version} is pending status checks`,\n );\n pendingReleases.unshift(candidateRelease);\n continue;\n }\n } // or if there is no timestamp, and we're running in `minimumReleaseAgeBehaviour=timestamp-required`\n else if (\n is.nullOrUndefined(candidateRelease.releaseTimestamp) &&\n minimumReleaseAgeBehaviour === 'timestamp-required'\n ) {\n // Skip it, as we require a timestamp\n candidateVersionsWithoutReleaseTimestamp[\n minimumReleaseAgeBehaviour\n ].push(candidateRelease.version);\n pendingReleases.unshift(candidateRelease);\n continue;\n } // if there is no timestamp, and we're running in `optional` mode, we can allow it\n else if (\n is.nullOrUndefined(candidateRelease.releaseTimestamp) &&\n minimumReleaseAgeBehaviour === 'timestamp-optional'\n ) {\n candidateVersionsWithoutReleaseTimestamp[\n minimumReleaseAgeBehaviour\n ].push(candidateRelease.version);\n }\n }\n\n // TODO #22198\n if (isActiveConfidenceLevel(minimumConfidence!)) {\n const confidenceLevel =\n (await getMergeConfidenceLevel(\n datasource!,\n packageName!,\n currentVersion!,\n candidateRelease.version,\n updateType!,\n )) ?? 'neutral';\n // TODO #22198\n if (!satisfiesConfidenceLevel(confidenceLevel, minimumConfidence!)) {\n logger.trace(\n { depName, check: 'minimumConfidence' },\n `Release ${candidateRelease.version} is pending status checks`,\n );\n pendingReleases.unshift(candidateRelease);\n continue;\n }\n }\n // If we get to here, then the release is OK and we can stop iterating\n release = candidateRelease;\n break;\n }\n\n if (candidateVersionsWithoutReleaseTimestamp['timestamp-required'].length) {\n logger.debug(\n {\n depName,\n versions:\n candidateVersionsWithoutReleaseTimestamp['timestamp-required'],\n check: 'minimumReleaseAge',\n },\n `Marking ${candidateVersionsWithoutReleaseTimestamp['timestamp-required'].length} release(s) as pending, as they do not have a releaseTimestamp and we're running with minimumReleaseAgeBehaviour=require-timestamp`,\n );\n }\n\n if (candidateVersionsWithoutReleaseTimestamp['timestamp-optional'].length) {\n logger.once.warn(\n \"Some release(s) did not have a releaseTimestamp, but as we're running with minimumReleaseAgeBehaviour=timestamp-optional, proceeding. See debug logs for more information\",\n );\n logger.debug(\n {\n depName,\n versions:\n candidateVersionsWithoutReleaseTimestamp['timestamp-optional'],\n check: 'minimumReleaseAge',\n },\n `${candidateVersionsWithoutReleaseTimestamp['timestamp-optional'].length} release(s) did not have a releaseTimestamp, but as we're running with minimumReleaseAgeBehaviour=timestamp-optional, proceeding`,\n );\n }\n\n if (!release) {\n if (pendingReleases.length) {\n // If all releases were pending then just take the highest\n logger.trace(\n { depName, bucket },\n 'All releases are pending - using latest',\n );\n release = pendingReleases.pop();\n // None are pending anymore because we took the latest, so empty the array\n pendingReleases = [];\n if (internalChecksFilter === 'strict') {\n pendingChecks = true;\n }\n }\n }\n }\n\n return { release, pendingChecks, pendingReleases };\n}\n"]}
|
|
@@ -25,13 +25,11 @@ function filterVersions(config, currentVersion, latestVersion, releases, version
|
|
|
25
25
|
return [];
|
|
26
26
|
}
|
|
27
27
|
// Leave only versions greater than current
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const currentRelease =
|
|
31
|
-
versioningApi.
|
|
32
|
-
|
|
33
|
-
versioningApi.isVersion(currentVersion) &&
|
|
34
|
-
versioningApi.equals(r.version, currentVersion));
|
|
28
|
+
const versionedReleases = releases.filter((r) => versioningApi.isVersion(r.version));
|
|
29
|
+
let filteredReleases = versionedReleases.filter((r) => versioningApi.isGreaterThan(r.version, currentVersion));
|
|
30
|
+
const currentRelease = versioningApi.isVersion(currentVersion)
|
|
31
|
+
? versionedReleases.find((r) => versioningApi.equals(r.version, currentVersion))
|
|
32
|
+
: undefined;
|
|
35
33
|
// Don't upgrade from non-deprecated to deprecated
|
|
36
34
|
if (ignoreDeprecated && currentRelease && !currentRelease.isDeprecated) {
|
|
37
35
|
filteredReleases = filteredReleases.filter((r) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/filter.ts"],"names":[],"mappings":";;AA0BA,
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/filter.ts"],"names":[],"mappings":"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","sourcesContent":["import semver from 'semver';\nimport { CONFIG_VALIDATION } from '../../../../constants/error-messages';\nimport { logger } from '../../../../logger';\nimport type { Release } from '../../../../modules/datasource/types';\nimport type { VersioningApi } from '../../../../modules/versioning';\nimport * as npmVersioning from '../../../../modules/versioning/npm';\nimport * as pep440 from '../../../../modules/versioning/pep440';\nimport * as poetryVersioning from '../../../../modules/versioning/poetry';\nimport { getRegexPredicate } from '../../../../util/string-match';\nimport type { FilterConfig } from './types';\n\nfunction isReleaseStable(\n release: Release,\n versioningApi: VersioningApi,\n): boolean {\n if (!versioningApi.isStable(release.version)) {\n return false;\n }\n\n if (release.isStable === false) {\n return false;\n }\n\n return true;\n}\n\nexport function filterVersions(\n config: FilterConfig,\n currentVersion: string,\n latestVersion: string,\n releases: Release[],\n versioningApi: VersioningApi,\n): Release[] {\n const { ignoreUnstable, ignoreDeprecated, respectLatest, allowedVersions } =\n config;\n\n // istanbul ignore if: shouldn't happen\n if (!currentVersion) {\n return [];\n }\n\n // Leave only versions greater than current\n const versionedReleases = releases.filter((r) =>\n versioningApi.isVersion(r.version),\n );\n let filteredReleases = versionedReleases.filter((r) =>\n versioningApi.isGreaterThan(r.version, currentVersion),\n );\n\n const currentRelease = versioningApi.isVersion(currentVersion)\n ? versionedReleases.find((r) =>\n versioningApi.equals(r.version, currentVersion),\n )\n : undefined;\n\n // Don't upgrade from non-deprecated to deprecated\n if (ignoreDeprecated && currentRelease && !currentRelease.isDeprecated) {\n filteredReleases = filteredReleases.filter((r) => {\n if (r.isDeprecated) {\n logger.trace(\n `Skipping ${config.depName!}@${r.version} because it is deprecated`,\n );\n return false;\n }\n return true;\n });\n }\n\n if (allowedVersions) {\n const isAllowedPred = getRegexPredicate(allowedVersions);\n if (isAllowedPred) {\n filteredReleases = filteredReleases.filter(({ version }) =>\n isAllowedPred(version),\n );\n } else if (versioningApi.isValid(allowedVersions)) {\n filteredReleases = filteredReleases.filter((r) =>\n versioningApi.matches(r.version, allowedVersions),\n );\n } else if (\n config.versioning !== npmVersioning.id &&\n semver.validRange(allowedVersions)\n ) {\n logger.debug(\n { depName: config.depName },\n 'Falling back to npm semver syntax for allowedVersions',\n );\n filteredReleases = filteredReleases.filter((r) =>\n semver.satisfies(\n semver.valid(r.version)\n ? r.version\n : /* istanbul ignore next: not reachable, but it's safer to preserve it */ semver.coerce(\n r.version,\n )!,\n allowedVersions,\n ),\n );\n } else if (\n config.versioning === poetryVersioning.id &&\n pep440.isValid(allowedVersions)\n ) {\n logger.debug(\n { depName: config.depName },\n 'Falling back to pypi syntax for allowedVersions',\n );\n filteredReleases = filteredReleases.filter((r) =>\n pep440.matches(r.version, allowedVersions),\n );\n } else {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = 'config';\n error.validationError = 'Invalid `allowedVersions`';\n error.validationMessage =\n 'The following allowedVersions does not parse as a valid version or range: ' +\n JSON.stringify(allowedVersions);\n throw error;\n }\n }\n\n if (config.followTag) {\n return filteredReleases;\n }\n\n if (\n respectLatest &&\n latestVersion &&\n !versioningApi.isGreaterThan(currentVersion, latestVersion)\n ) {\n filteredReleases = filteredReleases.filter(\n (r) => !versioningApi.isGreaterThan(r.version, latestVersion),\n );\n }\n\n if (!ignoreUnstable) {\n return filteredReleases;\n }\n\n if (currentRelease && isReleaseStable(currentRelease, versioningApi)) {\n return filteredReleases.filter((r) => isReleaseStable(r, versioningApi));\n }\n\n const currentMajor = versioningApi.getMajor(currentVersion);\n const currentMinor = versioningApi.getMinor(currentVersion);\n const currentPatch = versioningApi.getPatch(currentVersion);\n\n return filteredReleases.filter((r) => {\n if (isReleaseStable(r, versioningApi)) {\n return true;\n }\n\n const major = versioningApi.getMajor(r.version);\n\n if (major !== currentMajor) {\n return false;\n }\n\n if (versioningApi.allowUnstableMajorUpgrades) {\n return true;\n }\n\n const minor = versioningApi.getMinor(r.version);\n const patch = versioningApi.getPatch(r.version);\n\n return minor === currentMinor && patch === currentPatch;\n });\n}\n"]}
|
|
@@ -137,6 +137,7 @@ async function lookupUpdates(inconfig) {
|
|
|
137
137
|
'packageScope',
|
|
138
138
|
'mostRecentTimestamp',
|
|
139
139
|
'isAbandoned',
|
|
140
|
+
'respectLatest',
|
|
140
141
|
]);
|
|
141
142
|
const latestVersion = dependency.tags?.latest;
|
|
142
143
|
// Filter out any results from datasource that don't comply with our versioning
|
|
@@ -167,10 +168,13 @@ async function lookupUpdates(inconfig) {
|
|
|
167
168
|
(v.version === compareValue &&
|
|
168
169
|
versioningApi.isGreaterThan(taggedVersion, compareValue)));
|
|
169
170
|
}
|
|
171
|
+
const inRangeOnlyStrategy = config.rangeStrategy === 'in-range-only';
|
|
170
172
|
// Check that existing constraint can be satisfied
|
|
171
|
-
const allSatisfyingVersions =
|
|
172
|
-
|
|
173
|
-
|
|
173
|
+
const allSatisfyingVersions = (inRangeOnlyStrategy || config.rollbackPrs) && !unconstrainedValue
|
|
174
|
+
? allVersions.filter((v) =>
|
|
175
|
+
// TODO #22198
|
|
176
|
+
versioningApi.matches(v.version, compareValue))
|
|
177
|
+
: allVersions;
|
|
174
178
|
if (!allSatisfyingVersions.length) {
|
|
175
179
|
logger_1.logger.debug(`Found no satisfying versions with '${config.versioning}' versioning`);
|
|
176
180
|
}
|
|
@@ -235,16 +239,11 @@ async function lookupUpdates(inconfig) {
|
|
|
235
239
|
currentVersion &&
|
|
236
240
|
rangeStrategy === 'pin' &&
|
|
237
241
|
!versioningApi.isSingleVersion(compareValue)) {
|
|
242
|
+
const newValue = versioningApi.getPinnedValue?.(currentVersion) ?? currentVersion;
|
|
238
243
|
res.updates.push({
|
|
239
244
|
updateType: 'pin',
|
|
240
245
|
isPin: true,
|
|
241
|
-
|
|
242
|
-
newValue: versioningApi.getNewValue({
|
|
243
|
-
currentValue: compareValue,
|
|
244
|
-
rangeStrategy,
|
|
245
|
-
currentVersion,
|
|
246
|
-
newVersion: currentVersion,
|
|
247
|
-
}),
|
|
246
|
+
newValue,
|
|
248
247
|
newVersion: currentVersion,
|
|
249
248
|
newMajor: versioningApi.getMajor(currentVersion),
|
|
250
249
|
});
|
|
@@ -260,9 +259,7 @@ async function lookupUpdates(inconfig) {
|
|
|
260
259
|
}
|
|
261
260
|
// Filter latest, unstable, etc
|
|
262
261
|
// TODO #22198
|
|
263
|
-
let filteredReleases = (0, filter_1.filterVersions)(config, currentVersion, latestVersion,
|
|
264
|
-
? allSatisfyingVersions
|
|
265
|
-
: allVersions, versioningApi).filter((v) =>
|
|
262
|
+
let filteredReleases = (0, filter_1.filterVersions)(config, currentVersion, latestVersion, inRangeOnlyStrategy ? allSatisfyingVersions : allVersions, versioningApi).filter((v) =>
|
|
266
263
|
// Leave only compatible versions
|
|
267
264
|
unconstrainedValue ||
|
|
268
265
|
versioningApi.isCompatible(v.version, compareValue));
|