renovate 42.4.0 → 42.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/decrypt.js +13 -14
- package/dist/config/decrypt.js.map +1 -1
- package/dist/config/massage.js +6 -7
- package/dist/config/massage.js.map +1 -1
- package/dist/config/migrate-validate.js +3 -3
- package/dist/config/migrate-validate.js.map +1 -1
- package/dist/config/migration.js +19 -20
- package/dist/config/migration.js.map +1 -1
- package/dist/config/migrations/base/abstract-migration.js +5 -6
- package/dist/config/migrations/base/abstract-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-major-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-major-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-migration.js +4 -5
- package/dist/config/migrations/custom/automerge-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-minor-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-minor-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-patch-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-patch-migration.js.map +1 -1
- package/dist/config/migrations/custom/automerge-type-migration.js +2 -3
- package/dist/config/migrations/custom/automerge-type-migration.js.map +1 -1
- package/dist/config/migrations/custom/base-branch-migration.js +3 -4
- package/dist/config/migrations/custom/base-branch-migration.js.map +1 -1
- package/dist/config/migrations/custom/branch-name-migration.js +2 -3
- package/dist/config/migrations/custom/branch-name-migration.js.map +1 -1
- package/dist/config/migrations/custom/branch-prefix-migration.js +2 -3
- package/dist/config/migrations/custom/branch-prefix-migration.js.map +1 -1
- package/dist/config/migrations/custom/compatibility-migration.js +2 -3
- package/dist/config/migrations/custom/compatibility-migration.js.map +1 -1
- package/dist/config/migrations/custom/composer-ignore-platform-reqs-migration.js +2 -3
- package/dist/config/migrations/custom/composer-ignore-platform-reqs-migration.js.map +1 -1
- package/dist/config/migrations/custom/custom-managers-migration.js +2 -3
- package/dist/config/migrations/custom/custom-managers-migration.js.map +1 -1
- package/dist/config/migrations/custom/datasource-migration.js +2 -3
- package/dist/config/migrations/custom/datasource-migration.js.map +1 -1
- package/dist/config/migrations/custom/dep-types-migration.js +4 -5
- package/dist/config/migrations/custom/dep-types-migration.js.map +1 -1
- package/dist/config/migrations/custom/enabled-managers-migration.js +2 -3
- package/dist/config/migrations/custom/enabled-managers-migration.js.map +1 -1
- package/dist/config/migrations/custom/extends-migration.js +4 -5
- package/dist/config/migrations/custom/extends-migration.js.map +1 -1
- package/dist/config/migrations/custom/fetch-release-notes-migration.js +2 -3
- package/dist/config/migrations/custom/fetch-release-notes-migration.js.map +1 -1
- package/dist/config/migrations/custom/file-match-migration.js +3 -4
- package/dist/config/migrations/custom/file-match-migration.js.map +1 -1
- package/dist/config/migrations/custom/host-rules-migration.js +6 -7
- package/dist/config/migrations/custom/host-rules-migration.js.map +1 -1
- package/dist/config/migrations/custom/ignore-npmrc-file-migration.js +2 -3
- package/dist/config/migrations/custom/ignore-npmrc-file-migration.js.map +1 -1
- package/dist/config/migrations/custom/include-forks-migration.js +2 -3
- package/dist/config/migrations/custom/include-forks-migration.js.map +1 -1
- package/dist/config/migrations/custom/match-datasources-migration.js +2 -3
- package/dist/config/migrations/custom/match-datasources-migration.js.map +1 -1
- package/dist/config/migrations/custom/match-managers-migration.js +2 -3
- package/dist/config/migrations/custom/match-managers-migration.js.map +1 -1
- package/dist/config/migrations/custom/match-strings-migration.js +2 -3
- package/dist/config/migrations/custom/match-strings-migration.js.map +1 -1
- package/dist/config/migrations/custom/package-files-migration.js +6 -7
- package/dist/config/migrations/custom/package-files-migration.js.map +1 -1
- package/dist/config/migrations/custom/package-rules-migration.js +15 -16
- package/dist/config/migrations/custom/package-rules-migration.js.map +1 -1
- package/dist/config/migrations/custom/packages-migration.js +3 -4
- package/dist/config/migrations/custom/packages-migration.js.map +1 -1
- package/dist/config/migrations/custom/path-rules-migration.js +3 -4
- package/dist/config/migrations/custom/path-rules-migration.js.map +1 -1
- package/dist/config/migrations/custom/pin-versions-migration.js +2 -3
- package/dist/config/migrations/custom/pin-versions-migration.js.map +1 -1
- package/dist/config/migrations/custom/platform-commit-migration.js +2 -3
- package/dist/config/migrations/custom/platform-commit-migration.js.map +1 -1
- package/dist/config/migrations/custom/post-update-options-migration.js +2 -3
- package/dist/config/migrations/custom/post-update-options-migration.js.map +1 -1
- package/dist/config/migrations/custom/rebase-stale-prs-migration.js +2 -3
- package/dist/config/migrations/custom/rebase-stale-prs-migration.js.map +1 -1
- package/dist/config/migrations/custom/recreate-closed-migration.js +2 -3
- package/dist/config/migrations/custom/recreate-closed-migration.js.map +1 -1
- package/dist/config/migrations/custom/renovate-fork-migration.js +2 -3
- package/dist/config/migrations/custom/renovate-fork-migration.js.map +1 -1
- package/dist/config/migrations/custom/schedule-migration.js +4 -4
- package/dist/config/migrations/custom/schedule-migration.js.map +1 -1
- package/dist/config/migrations/custom/semantic-commits-migration.js +2 -3
- package/dist/config/migrations/custom/semantic-commits-migration.js.map +1 -1
- package/dist/config/migrations/custom/semantic-prefix-migration.js +2 -3
- package/dist/config/migrations/custom/semantic-prefix-migration.js.map +1 -1
- package/dist/config/migrations/custom/stability-days-migration.js +2 -3
- package/dist/config/migrations/custom/stability-days-migration.js.map +1 -1
- package/dist/config/migrations/custom/suppress-notifications-migration.js +2 -3
- package/dist/config/migrations/custom/suppress-notifications-migration.js.map +1 -1
- package/dist/config/migrations/custom/unpublish-safe-migration.js +2 -3
- package/dist/config/migrations/custom/unpublish-safe-migration.js.map +1 -1
- package/dist/config/migrations/migrations-service.js +2 -3
- package/dist/config/migrations/migrations-service.js.map +1 -1
- package/dist/config/presets/github/index.js +2 -3
- package/dist/config/presets/github/index.js.map +1 -1
- package/dist/config/presets/gitlab/index.js +2 -3
- package/dist/config/presets/gitlab/index.js.map +1 -1
- package/dist/config/presets/index.js +8 -8
- package/dist/config/presets/index.js.map +1 -1
- package/dist/config/presets/parse.js +2 -3
- package/dist/config/presets/parse.js.map +1 -1
- package/dist/config/secrets.js +3 -4
- package/dist/config/secrets.js.map +1 -1
- package/dist/config/validation-helpers/match-base-branches.js +2 -3
- package/dist/config/validation-helpers/match-base-branches.js.map +1 -1
- package/dist/config/validation-helpers/regex-glob-matchers.js +2 -3
- package/dist/config/validation-helpers/regex-glob-matchers.js.map +1 -1
- package/dist/config/validation-helpers/utils.js +6 -6
- package/dist/config/validation-helpers/utils.js.map +1 -1
- package/dist/config/validation.js +29 -29
- package/dist/config/validation.js.map +1 -1
- package/dist/instrumentation/reporting.js +7 -8
- package/dist/instrumentation/reporting.js.map +1 -1
- package/dist/instrumentation/utils.js +2 -3
- package/dist/instrumentation/utils.js.map +1 -1
- package/dist/logger/err-serializer.js +2 -2
- package/dist/logger/err-serializer.js.map +1 -1
- package/dist/logger/index.js +3 -3
- package/dist/logger/index.js.map +1 -1
- package/dist/logger/renovate-logger.js +4 -5
- package/dist/logger/renovate-logger.js.map +1 -1
- package/dist/logger/utils.js +19 -19
- package/dist/logger/utils.js.map +1 -1
- package/dist/modules/datasource/aws-eks-addon/index.js +2 -2
- package/dist/modules/datasource/aws-eks-addon/index.js.map +1 -1
- package/dist/modules/datasource/bazel/index.js +2 -2
- package/dist/modules/datasource/bazel/index.js.map +1 -1
- package/dist/modules/datasource/bitrise/index.js +2 -2
- package/dist/modules/datasource/bitrise/index.js.map +1 -1
- package/dist/modules/datasource/common.js +4 -4
- package/dist/modules/datasource/common.js.map +1 -1
- package/dist/modules/datasource/conan/index.js +3 -3
- package/dist/modules/datasource/conan/index.js.map +1 -1
- package/dist/modules/datasource/custom/formats/html.js +2 -5
- package/dist/modules/datasource/custom/formats/html.js.map +1 -1
- package/dist/modules/datasource/custom/index.js +2 -3
- package/dist/modules/datasource/custom/index.js.map +1 -1
- package/dist/modules/datasource/custom/utils.js +4 -4
- package/dist/modules/datasource/custom/utils.js.map +1 -1
- package/dist/modules/datasource/dart-version/index.js +2 -3
- package/dist/modules/datasource/dart-version/index.js.map +1 -1
- package/dist/modules/datasource/deno/index.js +2 -2
- package/dist/modules/datasource/deno/index.js.map +1 -1
- package/dist/modules/datasource/docker/common.js +5 -5
- package/dist/modules/datasource/docker/common.js.map +1 -1
- package/dist/modules/datasource/docker/index.js +6 -6
- package/dist/modules/datasource/docker/index.js.map +1 -1
- package/dist/modules/datasource/endoflife-date/index.js +2 -2
- package/dist/modules/datasource/endoflife-date/index.js.map +1 -1
- package/dist/modules/datasource/galaxy/index.js +2 -2
- package/dist/modules/datasource/galaxy/index.js.map +1 -1
- package/dist/modules/datasource/galaxy-collection/index.js +2 -2
- package/dist/modules/datasource/galaxy-collection/index.js.map +1 -1
- package/dist/modules/datasource/git-refs/base.js +2 -2
- package/dist/modules/datasource/git-refs/base.js.map +1 -1
- package/dist/modules/datasource/github-release-attachments/index.js +2 -2
- package/dist/modules/datasource/github-release-attachments/index.js.map +1 -1
- package/dist/modules/datasource/github-releases/index.js +2 -3
- package/dist/modules/datasource/github-releases/index.js.map +1 -1
- package/dist/modules/datasource/github-tags/index.js +2 -3
- package/dist/modules/datasource/github-tags/index.js.map +1 -1
- package/dist/modules/datasource/go/goproxy-parser.js +3 -3
- package/dist/modules/datasource/go/goproxy-parser.js.map +1 -1
- package/dist/modules/datasource/go/index.js +2 -2
- package/dist/modules/datasource/go/index.js.map +1 -1
- package/dist/modules/datasource/go/releases-goproxy.js +3 -3
- package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
- package/dist/modules/datasource/hackage/index.js +2 -2
- package/dist/modules/datasource/hackage/index.js.map +1 -1
- package/dist/modules/datasource/hex/schema.js +2 -3
- package/dist/modules/datasource/hex/schema.js.map +1 -1
- package/dist/modules/datasource/hexpm-bob/index.js +2 -2
- package/dist/modules/datasource/hexpm-bob/index.js.map +1 -1
- package/dist/modules/datasource/index.js +14 -14
- package/dist/modules/datasource/index.js.map +1 -1
- package/dist/modules/datasource/jsr/index.js +2 -2
- package/dist/modules/datasource/jsr/index.js.map +1 -1
- package/dist/modules/datasource/jsr/util.js +3 -4
- package/dist/modules/datasource/jsr/util.js.map +1 -1
- package/dist/modules/datasource/metadata.js +5 -5
- package/dist/modules/datasource/metadata.js.map +1 -1
- package/dist/modules/datasource/npm/get.js +2 -2
- package/dist/modules/datasource/npm/get.js.map +1 -1
- package/dist/modules/datasource/npm/npmrc.js +7 -7
- package/dist/modules/datasource/npm/npmrc.js.map +1 -1
- package/dist/modules/datasource/nuget/v3.js +2 -2
- package/dist/modules/datasource/nuget/v3.js.map +1 -1
- package/dist/modules/datasource/packagist/index.js +2 -2
- package/dist/modules/datasource/packagist/index.js.map +1 -1
- package/dist/modules/datasource/packagist/schema.js +3 -4
- package/dist/modules/datasource/packagist/schema.js.map +1 -1
- package/dist/modules/datasource/pypi/index.js +2 -2
- package/dist/modules/datasource/pypi/index.js.map +1 -1
- package/dist/modules/datasource/repology/index.js +3 -3
- package/dist/modules/datasource/repology/index.js.map +1 -1
- package/dist/modules/datasource/rubygems/schema.js +5 -6
- package/dist/modules/datasource/rubygems/schema.js.map +1 -1
- package/dist/modules/datasource/util.js +2 -3
- package/dist/modules/datasource/util.js.map +1 -1
- package/dist/modules/manager/argocd/extract.js +3 -4
- package/dist/modules/manager/argocd/extract.js.map +1 -1
- package/dist/modules/manager/asdf/extract.js +2 -3
- package/dist/modules/manager/asdf/extract.js.map +1 -1
- package/dist/modules/manager/bazel/artifacts.js +2 -2
- package/dist/modules/manager/bazel/artifacts.js.map +1 -1
- package/dist/modules/manager/bazel/common.js +4 -5
- package/dist/modules/manager/bazel/common.js.map +1 -1
- package/dist/modules/manager/bazel/rules/http.js +3 -4
- package/dist/modules/manager/bazel/rules/http.js.map +1 -1
- package/dist/modules/manager/bazel/rules/maven.js +2 -3
- package/dist/modules/manager/bazel/rules/maven.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/starlark.js +2 -3
- package/dist/modules/manager/bazel-module/parser/starlark.js.map +1 -1
- package/dist/modules/manager/bazel-module/rules.js +3 -3
- package/dist/modules/manager/bazel-module/rules.js.map +1 -1
- package/dist/modules/manager/bitrise/utils.js +3 -4
- package/dist/modules/manager/bitrise/utils.js.map +1 -1
- package/dist/modules/manager/buildpacks/extract.js +2 -3
- package/dist/modules/manager/buildpacks/extract.js.map +1 -1
- package/dist/modules/manager/bun/artifacts.js +2 -2
- package/dist/modules/manager/bun/artifacts.js.map +1 -1
- package/dist/modules/manager/bun/extract.js +2 -3
- package/dist/modules/manager/bun/extract.js.map +1 -1
- package/dist/modules/manager/bundler/artifacts.js +3 -3
- package/dist/modules/manager/bundler/artifacts.js.map +1 -1
- package/dist/modules/manager/bundler/extract.js +5 -6
- package/dist/modules/manager/bundler/extract.js.map +1 -1
- package/dist/modules/manager/cargo/extract.js +3 -4
- package/dist/modules/manager/cargo/extract.js.map +1 -1
- package/dist/modules/manager/composer/artifacts.js +3 -3
- package/dist/modules/manager/composer/artifacts.js.map +1 -1
- package/dist/modules/manager/composer/utils.js +3 -4
- package/dist/modules/manager/composer/utils.js.map +1 -1
- package/dist/modules/manager/conan/extract.js +2 -3
- package/dist/modules/manager/conan/extract.js.map +1 -1
- package/dist/modules/manager/copier/utils.js +3 -4
- package/dist/modules/manager/copier/utils.js.map +1 -1
- package/dist/modules/manager/crow/extract.js +2 -3
- package/dist/modules/manager/crow/extract.js.map +1 -1
- package/dist/modules/manager/custom/jsonata/index.js +2 -3
- package/dist/modules/manager/custom/jsonata/index.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/custom/regex/index.js +2 -3
- package/dist/modules/manager/custom/regex/index.js.map +1 -1
- package/dist/modules/manager/custom/regex/strategies.js +4 -5
- package/dist/modules/manager/custom/regex/strategies.js.map +1 -1
- package/dist/modules/manager/custom/regex/utils.js +2 -2
- package/dist/modules/manager/custom/regex/utils.js.map +1 -1
- package/dist/modules/manager/custom/utils.js +6 -7
- package/dist/modules/manager/custom/utils.js.map +1 -1
- package/dist/modules/manager/deps-edn/extract.js +13 -14
- package/dist/modules/manager/deps-edn/extract.js.map +1 -1
- package/dist/modules/manager/deps-edn/parser.js +2 -2
- package/dist/modules/manager/deps-edn/parser.js.map +1 -1
- package/dist/modules/manager/devbox/artifacts.js +2 -2
- package/dist/modules/manager/devbox/artifacts.js.map +1 -1
- package/dist/modules/manager/docker-compose/extract.js +3 -4
- package/dist/modules/manager/docker-compose/extract.js.map +1 -1
- package/dist/modules/manager/docker-compose/schema.js +2 -3
- package/dist/modules/manager/docker-compose/schema.js.map +1 -1
- package/dist/modules/manager/dockerfile/extract.js +5 -5
- package/dist/modules/manager/dockerfile/extract.js.map +1 -1
- package/dist/modules/manager/fingerprint.generated.js +5 -5
- package/dist/modules/manager/fingerprint.generated.js.map +1 -1
- package/dist/modules/manager/fleet/extract.js +2 -3
- package/dist/modules/manager/fleet/extract.js.map +1 -1
- package/dist/modules/manager/flux/extract.js +2 -3
- package/dist/modules/manager/flux/extract.js.map +1 -1
- package/dist/modules/manager/glasskube/extract.js +2 -3
- package/dist/modules/manager/glasskube/extract.js.map +1 -1
- package/dist/modules/manager/gleam/artifacts.js +3 -4
- package/dist/modules/manager/gleam/artifacts.js.map +1 -1
- package/dist/modules/manager/gomod/artifacts.js +2 -2
- package/dist/modules/manager/gomod/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/artifacts.js +2 -2
- package/dist/modules/manager/gradle/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/extract/catalog.js +5 -5
- package/dist/modules/manager/gradle/extract/catalog.js.map +1 -1
- package/dist/modules/manager/gradle-wrapper/artifacts.js +2 -2
- package/dist/modules/manager/gradle-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/helm-requirements/extract.js +2 -3
- package/dist/modules/manager/helm-requirements/extract.js.map +1 -1
- package/dist/modules/manager/helmfile/artifacts.js +2 -3
- package/dist/modules/manager/helmfile/artifacts.js.map +1 -1
- package/dist/modules/manager/helmfile/extract.js +4 -5
- package/dist/modules/manager/helmfile/extract.js.map +1 -1
- package/dist/modules/manager/helmsman/extract.js +4 -5
- package/dist/modules/manager/helmsman/extract.js.map +1 -1
- package/dist/modules/manager/helmv3/artifacts.js +4 -4
- package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
- package/dist/modules/manager/helmv3/extract.js +4 -5
- package/dist/modules/manager/helmv3/extract.js.map +1 -1
- package/dist/modules/manager/helmv3/oci.js +3 -4
- package/dist/modules/manager/helmv3/oci.js.map +1 -1
- package/dist/modules/manager/jenkins/extract.js +3 -3
- package/dist/modules/manager/jenkins/extract.js.map +1 -1
- package/dist/modules/manager/kotlin-script/extract.js +3 -4
- package/dist/modules/manager/kotlin-script/extract.js.map +1 -1
- package/dist/modules/manager/kubernetes/extract.js +4 -4
- package/dist/modules/manager/kubernetes/extract.js.map +1 -1
- package/dist/modules/manager/kustomize/artifacts.js +8 -8
- package/dist/modules/manager/kustomize/artifacts.js.map +1 -1
- package/dist/modules/manager/kustomize/extract.js +8 -8
- package/dist/modules/manager/kustomize/extract.js.map +1 -1
- package/dist/modules/manager/maven/extract.js +4 -4
- package/dist/modules/manager/maven/extract.js.map +1 -1
- package/dist/modules/manager/maven/update.js +2 -2
- package/dist/modules/manager/maven/update.js.map +1 -1
- package/dist/modules/manager/maven-wrapper/artifacts.js +2 -2
- package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/mise/backends.js +9 -10
- package/dist/modules/manager/mise/backends.js.map +1 -1
- package/dist/modules/manager/mise/extract.js +7 -8
- package/dist/modules/manager/mise/extract.js.map +1 -1
- package/dist/modules/manager/mix/artifacts.js +3 -3
- package/dist/modules/manager/mix/artifacts.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/npm/detect.js +2 -2
- package/dist/modules/manager/npm/detect.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/dependency.js +2 -2
- package/dist/modules/manager/npm/extract/common/dependency.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/overrides.js +3 -4
- package/dist/modules/manager/npm/extract/common/overrides.js.map +1 -1
- package/dist/modules/manager/npm/extract/common/package-file.js +8 -9
- package/dist/modules/manager/npm/extract/common/package-file.js.map +1 -1
- package/dist/modules/manager/npm/extract/index.js +10 -10
- package/dist/modules/manager/npm/extract/index.js.map +1 -1
- package/dist/modules/manager/npm/extract/pnpm.js +7 -7
- package/dist/modules/manager/npm/extract/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/extract/post/locked-versions.js +3 -3
- package/dist/modules/manager/npm/extract/post/locked-versions.js.map +1 -1
- package/dist/modules/manager/npm/extract/post/monorepo.js +3 -4
- package/dist/modules/manager/npm/extract/post/monorepo.js.map +1 -1
- package/dist/modules/manager/npm/extract/yarn.js +2 -3
- package/dist/modules/manager/npm/extract/yarn.js.map +1 -1
- package/dist/modules/manager/npm/extract/yarnrc.js +2 -3
- package/dist/modules/manager/npm/extract/yarnrc.js.map +1 -1
- package/dist/modules/manager/npm/post-update/index.js +6 -6
- package/dist/modules/manager/npm/post-update/index.js.map +1 -1
- package/dist/modules/manager/npm/post-update/npm.js +4 -4
- package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/pnpm.js +3 -3
- package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/rules.js +2 -2
- package/dist/modules/manager/npm/post-update/rules.js.map +1 -1
- package/dist/modules/manager/npm/post-update/utils.js +2 -2
- package/dist/modules/manager/npm/post-update/utils.js.map +1 -1
- package/dist/modules/manager/npm/post-update/yarn.js +3 -3
- package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/index.js +2 -3
- package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/pnpm.js +2 -3
- package/dist/modules/manager/npm/update/dependency/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/update/dependency/yarn.js +3 -4
- package/dist/modules/manager/npm/update/dependency/yarn.js.map +1 -1
- package/dist/modules/manager/nuget/config-formatter.js +2 -2
- package/dist/modules/manager/nuget/config-formatter.js.map +1 -1
- package/dist/modules/manager/nuget/extract.js +4 -4
- package/dist/modules/manager/nuget/extract.js.map +1 -1
- package/dist/modules/manager/nuget/package-tree.js +2 -2
- package/dist/modules/manager/nuget/package-tree.js.map +1 -1
- package/dist/modules/manager/ocb/extract.js +2 -3
- package/dist/modules/manager/ocb/extract.js.map +1 -1
- package/dist/modules/manager/osgi/extract.js +4 -4
- package/dist/modules/manager/osgi/extract.js.map +1 -1
- package/dist/modules/manager/pep621/artifacts.js +3 -4
- package/dist/modules/manager/pep621/artifacts.js.map +1 -1
- package/dist/modules/manager/pep621/processors/uv.js +2 -3
- package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
- package/dist/modules/manager/pep621/utils.js +8 -10
- package/dist/modules/manager/pep621/utils.js.map +1 -1
- package/dist/modules/manager/pep723/schema.js +2 -3
- package/dist/modules/manager/pep723/schema.js.map +1 -1
- package/dist/modules/manager/pip-compile/common.js +3 -3
- package/dist/modules/manager/pip-compile/common.js.map +1 -1
- package/dist/modules/manager/pip_requirements/artifacts.js +2 -3
- package/dist/modules/manager/pip_requirements/artifacts.js.map +1 -1
- package/dist/modules/manager/pip_requirements/extract.js +2 -3
- package/dist/modules/manager/pip_requirements/extract.js.map +1 -1
- package/dist/modules/manager/pipenv/artifacts.js +3 -4
- package/dist/modules/manager/pipenv/artifacts.js.map +1 -1
- package/dist/modules/manager/pipenv/extract.js +6 -7
- package/dist/modules/manager/pipenv/extract.js.map +1 -1
- package/dist/modules/manager/pixi/artifacts.js +2 -3
- package/dist/modules/manager/pixi/artifacts.js.map +1 -1
- package/dist/modules/manager/pixi/extract.js +2 -3
- package/dist/modules/manager/pixi/extract.js.map +1 -1
- package/dist/modules/manager/poetry/artifacts.js +4 -5
- package/dist/modules/manager/poetry/artifacts.js.map +1 -1
- package/dist/modules/manager/poetry/extract.js +2 -3
- package/dist/modules/manager/poetry/extract.js.map +1 -1
- package/dist/modules/manager/pre-commit/extract.js +4 -5
- package/dist/modules/manager/pre-commit/extract.js.map +1 -1
- package/dist/modules/manager/pub/artifacts.js +3 -4
- package/dist/modules/manager/pub/artifacts.js.map +1 -1
- package/dist/modules/manager/pub/extract.js +8 -11
- package/dist/modules/manager/pub/extract.js.map +1 -1
- package/dist/modules/manager/renovate-config-presets/extract.js +4 -5
- package/dist/modules/manager/renovate-config-presets/extract.js.map +1 -1
- package/dist/modules/manager/tekton/extract.js +9 -10
- package/dist/modules/manager/tekton/extract.js.map +1 -1
- package/dist/modules/manager/terraform/base.js +2 -3
- package/dist/modules/manager/terraform/base.js.map +1 -1
- package/dist/modules/manager/terraform/extract.js +2 -2
- package/dist/modules/manager/terraform/extract.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/others/modules.js +3 -4
- package/dist/modules/manager/terraform/extractors/others/modules.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/others/providers.js +3 -4
- package/dist/modules/manager/terraform/extractors/others/providers.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js +7 -8
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/helm-release.js +5 -6
- package/dist/modules/manager/terraform/extractors/resources/helm-release.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/terraform-workspace.js +3 -4
- package/dist/modules/manager/terraform/extractors/resources/terraform-workspace.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/terraform-block/required-provider.js +4 -5
- package/dist/modules/manager/terraform/extractors/terraform-block/required-provider.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/terraform-block/terraform-version.js +3 -3
- package/dist/modules/manager/terraform/extractors/terraform-block/terraform-version.js.map +1 -1
- package/dist/modules/manager/terraform/lockfile/index.js +2 -2
- package/dist/modules/manager/terraform/lockfile/index.js.map +1 -1
- package/dist/modules/manager/terraform/lockfile/util.js +2 -3
- package/dist/modules/manager/terraform/lockfile/util.js.map +1 -1
- package/dist/modules/manager/terraform/util.js +2 -3
- package/dist/modules/manager/terraform/util.js.map +1 -1
- package/dist/modules/manager/tflint-plugin/plugins.js +2 -3
- package/dist/modules/manager/tflint-plugin/plugins.js.map +1 -1
- package/dist/modules/manager/travis/extract.js +5 -6
- package/dist/modules/manager/travis/extract.js.map +1 -1
- package/dist/modules/manager/woodpecker/extract.js +2 -3
- package/dist/modules/manager/woodpecker/extract.js.map +1 -1
- package/dist/modules/platform/azure/index.js +2 -2
- package/dist/modules/platform/azure/index.js.map +1 -1
- package/dist/modules/platform/bitbucket/index.js +5 -5
- package/dist/modules/platform/bitbucket/index.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/pr-cache.js +2 -2
- package/dist/modules/platform/bitbucket-server/pr-cache.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/utils.js +2 -2
- package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
- package/dist/modules/platform/codecommit/codecommit-client.js +2 -2
- package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
- package/dist/modules/platform/forgejo/index.js +5 -5
- package/dist/modules/platform/forgejo/index.js.map +1 -1
- package/dist/modules/platform/forgejo/utils.js +2 -2
- package/dist/modules/platform/forgejo/utils.js.map +1 -1
- package/dist/modules/platform/gitea/index.js +5 -5
- package/dist/modules/platform/gitea/index.js.map +1 -1
- package/dist/modules/platform/gitea/utils.js +2 -2
- package/dist/modules/platform/gitea/utils.js.map +1 -1
- package/dist/modules/platform/github/common.js +4 -5
- package/dist/modules/platform/github/common.js.map +1 -1
- package/dist/modules/platform/github/index.js +5 -5
- package/dist/modules/platform/github/index.js.map +1 -1
- package/dist/modules/platform/github/pr.js +2 -3
- package/dist/modules/platform/github/pr.js.map +1 -1
- package/dist/modules/platform/gitlab/http.js +2 -3
- package/dist/modules/platform/gitlab/http.js.map +1 -1
- package/dist/modules/platform/gitlab/index.js +3 -3
- package/dist/modules/platform/gitlab/index.js.map +1 -1
- package/dist/modules/platform/gitlab/utils.js +3 -3
- package/dist/modules/platform/gitlab/utils.js.map +1 -1
- package/dist/modules/platform/pr-body.js +2 -3
- package/dist/modules/platform/pr-body.js.map +1 -1
- package/dist/modules/versioning/composer/index.js +2 -3
- package/dist/modules/versioning/composer/index.js.map +1 -1
- package/dist/modules/versioning/generic.js +5 -6
- package/dist/modules/versioning/generic.js.map +1 -1
- package/dist/modules/versioning/gradle/compare.js +3 -4
- package/dist/modules/versioning/gradle/compare.js.map +1 -1
- package/dist/modules/versioning/nixpkgs/index.js +6 -7
- package/dist/modules/versioning/nixpkgs/index.js.map +1 -1
- package/dist/modules/versioning/npm/range.js +2 -2
- package/dist/modules/versioning/npm/range.js.map +1 -1
- package/dist/modules/versioning/rpm/index.js +4 -5
- package/dist/modules/versioning/rpm/index.js.map +1 -1
- package/dist/modules/versioning/schema.js +2 -2
- package/dist/modules/versioning/schema.js.map +1 -1
- package/dist/modules/versioning/semver-coerced/index.js +3 -3
- package/dist/modules/versioning/semver-coerced/index.js.map +1 -1
- package/dist/modules/versioning/semver-partial/index.js +4 -4
- package/dist/modules/versioning/semver-partial/index.js.map +1 -1
- package/dist/proxy.js +3 -4
- package/dist/proxy.js.map +1 -1
- package/dist/util/array.js +4 -5
- package/dist/util/array.js.map +1 -1
- package/dist/util/assign-keys.js +2 -3
- package/dist/util/assign-keys.js.map +1 -1
- package/dist/util/cache/package/decorator.js +6 -6
- package/dist/util/cache/package/decorator.js.map +1 -1
- package/dist/util/cache/package/ttl.js +4 -5
- package/dist/util/cache/package/ttl.js.map +1 -1
- package/dist/util/cache/repository/impl/base.js +3 -4
- package/dist/util/cache/repository/impl/base.js.map +1 -1
- package/dist/util/cache/repository/impl/s3.js +2 -3
- package/dist/util/cache/repository/impl/s3.js.map +1 -1
- package/dist/util/exec/common.js +2 -3
- package/dist/util/exec/common.js.map +1 -1
- package/dist/util/exec/containerbase.js +2 -2
- package/dist/util/exec/containerbase.js.map +1 -1
- package/dist/util/exec/docker/index.js +5 -5
- package/dist/util/exec/docker/index.js.map +1 -1
- package/dist/util/exec/index.js +2 -2
- package/dist/util/exec/index.js.map +1 -1
- package/dist/util/exec/utils.js +3 -4
- package/dist/util/exec/utils.js.map +1 -1
- package/dist/util/filter-map.js +2 -3
- package/dist/util/filter-map.js.map +1 -1
- package/dist/util/fs/index.js +3 -3
- package/dist/util/fs/index.js.map +1 -1
- package/dist/util/git/auth.js +2 -3
- package/dist/util/git/auth.js.map +1 -1
- package/dist/util/git/config.js +3 -4
- package/dist/util/git/config.js.map +1 -1
- package/dist/util/git/index.js +4 -4
- package/dist/util/git/index.js.map +1 -1
- package/dist/util/git/private-key.js +2 -2
- package/dist/util/git/private-key.js.map +1 -1
- package/dist/util/host-rules.js +6 -6
- package/dist/util/host-rules.js.map +1 -1
- package/dist/util/http/auth.js +3 -4
- package/dist/util/http/auth.js.map +1 -1
- package/dist/util/http/bitbucket-server.js +2 -3
- package/dist/util/http/bitbucket-server.js.map +1 -1
- package/dist/util/http/bitbucket.js +3 -4
- package/dist/util/http/bitbucket.js.map +1 -1
- package/dist/util/http/cache/package-http-cache-provider.js +2 -2
- package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
- package/dist/util/http/forgejo.js +3 -4
- package/dist/util/http/forgejo.js.map +1 -1
- package/dist/util/http/gitea.js +3 -4
- package/dist/util/http/gitea.js.map +1 -1
- package/dist/util/http/github.js +10 -10
- package/dist/util/http/github.js.map +1 -1
- package/dist/util/http/gitlab.js +4 -5
- package/dist/util/http/gitlab.js.map +1 -1
- package/dist/util/http/host-rules.js +10 -10
- package/dist/util/http/host-rules.js.map +1 -1
- package/dist/util/http/http.js +5 -5
- package/dist/util/http/http.js.map +1 -1
- package/dist/util/http/rate-limits.js +3 -3
- package/dist/util/http/rate-limits.js.map +1 -1
- package/dist/util/interpolator.js +8 -9
- package/dist/util/interpolator.js.map +1 -1
- package/dist/util/merge-confidence/index.js +5 -5
- package/dist/util/merge-confidence/index.js.map +1 -1
- package/dist/util/number.js +2 -3
- package/dist/util/number.js.map +1 -1
- package/dist/util/package-rules/base-branches.js +3 -4
- package/dist/util/package-rules/base-branches.js.map +1 -1
- package/dist/util/package-rules/categories.js +3 -4
- package/dist/util/package-rules/categories.js.map +1 -1
- package/dist/util/package-rules/current-age.js +3 -4
- package/dist/util/package-rules/current-age.js.map +1 -1
- package/dist/util/package-rules/current-value.js +2 -3
- package/dist/util/package-rules/current-value.js.map +1 -1
- package/dist/util/package-rules/current-version.js +5 -5
- package/dist/util/package-rules/current-version.js.map +1 -1
- package/dist/util/package-rules/datasources.js +3 -4
- package/dist/util/package-rules/datasources.js.map +1 -1
- package/dist/util/package-rules/dep-names.js +3 -4
- package/dist/util/package-rules/dep-names.js.map +1 -1
- package/dist/util/package-rules/dep-types.js +2 -3
- package/dist/util/package-rules/dep-types.js.map +1 -1
- package/dist/util/package-rules/files.js +4 -5
- package/dist/util/package-rules/files.js.map +1 -1
- package/dist/util/package-rules/index.js +6 -6
- package/dist/util/package-rules/index.js.map +1 -1
- package/dist/util/package-rules/managers.js +3 -4
- package/dist/util/package-rules/managers.js.map +1 -1
- package/dist/util/package-rules/merge-confidence.js +5 -6
- package/dist/util/package-rules/merge-confidence.js.map +1 -1
- package/dist/util/package-rules/new-value.js +2 -3
- package/dist/util/package-rules/new-value.js.map +1 -1
- package/dist/util/package-rules/package-names.js +2 -3
- package/dist/util/package-rules/package-names.js.map +1 -1
- package/dist/util/package-rules/repositories.js +3 -4
- package/dist/util/package-rules/repositories.js.map +1 -1
- package/dist/util/package-rules/sourceurls.js +2 -3
- package/dist/util/package-rules/sourceurls.js.map +1 -1
- package/dist/util/package-rules/update-types.js +2 -3
- package/dist/util/package-rules/update-types.js.map +1 -1
- package/dist/util/pretty-time.js +4 -4
- package/dist/util/pretty-time.js.map +1 -1
- package/dist/util/regex.js +2 -3
- package/dist/util/regex.js.map +1 -1
- package/dist/util/s3.js +2 -3
- package/dist/util/s3.js.map +1 -1
- package/dist/util/sanitize.js +2 -3
- package/dist/util/sanitize.js.map +1 -1
- package/dist/util/string-match.js +2 -3
- package/dist/util/string-match.js.map +1 -1
- package/dist/util/template/index.js +6 -6
- package/dist/util/template/index.js.map +1 -1
- package/dist/util/url.js +5 -5
- package/dist/util/url.js.map +1 -1
- package/dist/workers/global/autodiscover.js +3 -4
- package/dist/workers/global/autodiscover.js.map +1 -1
- package/dist/workers/global/config/parse/additional-config-file.js +4 -4
- package/dist/workers/global/config/parse/additional-config-file.js.map +1 -1
- package/dist/workers/global/config/parse/coersions.js +2 -2
- package/dist/workers/global/config/parse/coersions.js.map +1 -1
- package/dist/workers/global/config/parse/env.js +2 -2
- package/dist/workers/global/config/parse/env.js.map +1 -1
- package/dist/workers/global/config/parse/file.js +5 -5
- package/dist/workers/global/config/parse/file.js.map +1 -1
- package/dist/workers/global/config/parse/index.js +6 -7
- package/dist/workers/global/config/parse/index.js.map +1 -1
- package/dist/workers/global/config/parse/util.js +2 -2
- package/dist/workers/global/config/parse/util.js.map +1 -1
- package/dist/workers/global/index.js +5 -5
- package/dist/workers/global/index.js.map +1 -1
- package/dist/workers/global/limits.js +6 -7
- package/dist/workers/global/limits.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/index.js +2 -3
- package/dist/workers/repository/config-migration/branch/index.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/migrated-data.js +2 -2
- package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
- package/dist/workers/repository/config-migration/pr/index.js +3 -3
- package/dist/workers/repository/config-migration/pr/index.js.map +1 -1
- package/dist/workers/repository/dependency-dashboard.js +10 -10
- package/dist/workers/repository/dependency-dashboard.js.map +1 -1
- package/dist/workers/repository/extract/index.js +2 -3
- package/dist/workers/repository/extract/index.js.map +1 -1
- package/dist/workers/repository/extract/manager-files.js +2 -3
- package/dist/workers/repository/extract/manager-files.js.map +1 -1
- package/dist/workers/repository/extract/supersedes.js +4 -5
- package/dist/workers/repository/extract/supersedes.js.map +1 -1
- package/dist/workers/repository/finalize/prune.js +2 -3
- package/dist/workers/repository/finalize/prune.js.map +1 -1
- package/dist/workers/repository/init/inherited.js +5 -5
- package/dist/workers/repository/init/inherited.js.map +1 -1
- package/dist/workers/repository/init/merge.js +13 -13
- package/dist/workers/repository/init/merge.js.map +1 -1
- package/dist/workers/repository/model/commit-message.js +2 -3
- package/dist/workers/repository/model/commit-message.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/index.js +2 -3
- package/dist/workers/repository/onboarding/branch/index.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js +5 -6
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js.map +1 -1
- package/dist/workers/repository/onboarding/pr/config-description.js +2 -5
- package/dist/workers/repository/onboarding/pr/config-description.js.map +1 -1
- package/dist/workers/repository/onboarding/pr/index.js +3 -3
- package/dist/workers/repository/onboarding/pr/index.js.map +1 -1
- package/dist/workers/repository/package-files.js +8 -9
- package/dist/workers/repository/package-files.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 +3 -3
- package/dist/workers/repository/process/fetch.js.map +1 -1
- package/dist/workers/repository/process/lookup/current.js +2 -3
- package/dist/workers/repository/process/lookup/current.js.map +1 -1
- package/dist/workers/repository/process/lookup/filter-checks.js +4 -5
- package/dist/workers/repository/process/lookup/filter-checks.js.map +1 -1
- package/dist/workers/repository/process/lookup/generate.js +2 -3
- package/dist/workers/repository/process/lookup/generate.js.map +1 -1
- package/dist/workers/repository/process/lookup/index.js +15 -16
- package/dist/workers/repository/process/lookup/index.js.map +1 -1
- package/dist/workers/repository/process/lookup/utils.js +7 -7
- package/dist/workers/repository/process/lookup/utils.js.map +1 -1
- package/dist/workers/repository/process/vulnerabilities.js +11 -11
- package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
- package/dist/workers/repository/process/write.js +2 -3
- package/dist/workers/repository/process/write.js.map +1 -1
- package/dist/workers/repository/reconfigure/comment.js +2 -5
- package/dist/workers/repository/reconfigure/comment.js.map +1 -1
- package/dist/workers/repository/reconfigure/utils.js +2 -3
- package/dist/workers/repository/reconfigure/utils.js.map +1 -1
- package/dist/workers/repository/reconfigure/validate.js +2 -3
- package/dist/workers/repository/reconfigure/validate.js.map +1 -1
- package/dist/workers/repository/update/branch/auto-replace.js +4 -5
- package/dist/workers/repository/update/branch/auto-replace.js.map +1 -1
- package/dist/workers/repository/update/branch/commit.js +3 -4
- package/dist/workers/repository/update/branch/commit.js.map +1 -1
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +12 -5
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
- package/dist/workers/repository/update/branch/get-updated.js +8 -9
- package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
- package/dist/workers/repository/update/branch/index.js +3 -3
- package/dist/workers/repository/update/branch/index.js.map +1 -1
- package/dist/workers/repository/update/branch/schedule.js +2 -2
- package/dist/workers/repository/update/branch/schedule.js.map +1 -1
- package/dist/workers/repository/update/pr/body/notes.js +2 -2
- package/dist/workers/repository/update/pr/body/notes.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/bitbucket/index.js +2 -2
- package/dist/workers/repository/update/pr/changelog/bitbucket/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/index.js +3 -3
- package/dist/workers/repository/update/pr/changelog/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/release-notes.js +4 -4
- package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/source.js +8 -8
- package/dist/workers/repository/update/pr/changelog/source.js.map +1 -1
- package/dist/workers/repository/update/pr/code-owners.js +2 -2
- package/dist/workers/repository/update/pr/code-owners.js.map +1 -1
- package/dist/workers/repository/update/pr/index.js +7 -8
- package/dist/workers/repository/update/pr/index.js.map +1 -1
- package/dist/workers/repository/update/pr/labels.js +4 -4
- package/dist/workers/repository/update/pr/labels.js.map +1 -1
- package/dist/workers/repository/update/pr/participants.js +4 -5
- package/dist/workers/repository/update/pr/participants.js.map +1 -1
- package/dist/workers/repository/updates/generate.js +4 -4
- package/dist/workers/repository/updates/generate.js.map +1 -1
- package/package.json +1 -1
- package/renovate-schema.json +2 -2
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PackageFiles = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const logger_1 = require("../../logger");
|
|
7
6
|
const clone_1 = require("../../util/clone");
|
|
8
7
|
class PackageFiles {
|
|
@@ -36,10 +35,10 @@ class PackageFiles {
|
|
|
36
35
|
let truncated = false;
|
|
37
36
|
const data = new Map((0, clone_1.clone)(Array.from(this.data)));
|
|
38
37
|
// filter all deps with skip reason
|
|
39
|
-
for (const managers of [...data.values()].filter(is_1.
|
|
40
|
-
for (const files of Object.values(managers).filter(is_1.
|
|
41
|
-
for (const file of files.filter((f) => is_1.
|
|
42
|
-
file.deps = file.deps.filter(is_1.
|
|
38
|
+
for (const managers of [...data.values()].filter(is_1.isTruthy)) {
|
|
39
|
+
for (const files of Object.values(managers).filter(is_1.isTruthy)) {
|
|
40
|
+
for (const file of files.filter((f) => (0, is_1.isTruthy)(f.deps))) {
|
|
41
|
+
file.deps = file.deps.filter(is_1.isTruthy).filter((d) => !d.skipReason);
|
|
43
42
|
}
|
|
44
43
|
}
|
|
45
44
|
}
|
|
@@ -124,18 +123,18 @@ class PackageFiles {
|
|
|
124
123
|
return false;
|
|
125
124
|
}
|
|
126
125
|
// delete base branch listing if it has no managers left
|
|
127
|
-
if (!managers || is_1.
|
|
126
|
+
if (!managers || (0, is_1.isEmptyObject)(managers)) {
|
|
128
127
|
return data.delete(branch);
|
|
129
128
|
}
|
|
130
129
|
// get all manifest files for the last listed manager
|
|
131
130
|
const [manager, packageFiles] = Object.entries(managers).pop();
|
|
132
131
|
// delete current manager if it has no manifest files left
|
|
133
|
-
if (!packageFiles || is_1.
|
|
132
|
+
if (!packageFiles || (0, is_1.isEmptyArray)(packageFiles)) {
|
|
134
133
|
return delete managers[manager];
|
|
135
134
|
}
|
|
136
135
|
// delete manifest file if it has no deps left
|
|
137
136
|
const len = packageFiles.length - 1;
|
|
138
|
-
if (is_1.
|
|
137
|
+
if ((0, is_1.isEmptyArray)(packageFiles[len].deps)) {
|
|
139
138
|
return !!packageFiles.pop();
|
|
140
139
|
}
|
|
141
140
|
// remove the last listed dependency
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-files.js","sourceRoot":"","sources":["../../../lib/workers/repository/package-files.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../logger';\nimport type { PackageFile } from '../../modules/manager/types';\nimport { clone } from '../../util/clone';\n\nexport class PackageFiles {\n private static data = new Map<string, Record<string, PackageFile[]> | null>();\n\n static add(\n baseBranch: string,\n packageFiles: Record<string, PackageFile[]> | null,\n ): void {\n logger.debug(\n { baseBranch },\n `PackageFiles.add() - Package file saved for base branch`,\n );\n this.data.set(baseBranch, packageFiles);\n }\n\n static clear(): void {\n logger.debug('PackageFiles.clear() - Package files deleted');\n this.data.clear();\n }\n\n /**\n * Truncates the detected dependencies' section until it fits the available space\n * i.e. It has length smaller than maxLength.\n * This does not mutate the original PackageFiles data\n * Note: setHeader=false is used for testing purposes only\n * Mainly for comparing truncated and non-truncated markdown\n * @param maxLength\n * @param setHeader\n */\n static getDashboardMarkdown(maxLength: number, setHeader = true): string {\n const note =\n '> ℹ **Note**\\n> \\n> Detected dependencies section has been truncated\\n\\n';\n const title = `## Detected dependencies\\n\\n`;\n\n // exclude header length from the available space\n const maxHeaderLen = setHeader ? (title + note).length : 0;\n const mdMaxLength = maxLength - maxHeaderLen;\n\n let md: string;\n let header = '';\n let removed = false;\n let truncated = false;\n\n const data = new Map(clone(Array.from(this.data)));\n\n // filter all deps with skip reason\n for (const managers of [...data.values()].filter(is.truthy)) {\n for (const files of Object.values(managers).filter(is.truthy)) {\n for (const file of files.filter((f) => is.truthy(f.deps))) {\n file.deps = file.deps.filter(is.truthy).filter((d) => !d.skipReason);\n }\n }\n }\n\n do {\n // shorten markdown until it fits\n md = PackageFiles.getDashboardMarkdownInternal(data);\n if (md.length > mdMaxLength) {\n // truncate data\n removed = PackageFiles.pop(data);\n }\n if (removed) {\n truncated = true; // used to set the truncation Note\n }\n } while (removed && md.length > mdMaxLength);\n\n header += title;\n header += truncated ? note : '';\n\n return (setHeader ? header : '') + md;\n }\n\n /**\n * Generates the \"detected dependencies\" markdown\n * @param data\n */\n private static getDashboardMarkdownInternal(\n data: Map<string, Record<string, PackageFile[]> | null>,\n ): string {\n const none = 'None detected\\n\\n';\n const pad = data.size > 1; // padding condition for a multi base branch repo\n let deps = '';\n\n for (const [branch, packageFiles] of Array.from(data).sort(([a], [b]) =>\n a.localeCompare(b, undefined, { numeric: true }),\n )) {\n deps += pad\n ? `<details><summary>Branch ${branch}</summary>\\n<blockquote>\\n\\n`\n : '';\n if (packageFiles === null) {\n deps += none;\n deps += pad ? '</blockquote>\\n</details>\\n\\n' : '';\n continue;\n }\n\n const managers = Object.keys(packageFiles).sort();\n if (managers.length === 0) {\n deps += none;\n deps += pad ? '</blockquote>\\n</details>\\n\\n' : '';\n continue;\n }\n\n for (const manager of managers) {\n deps += `<details><summary>${manager}</summary>\\n<blockquote>\\n\\n`;\n for (const packageFile of Array.from(packageFiles[manager]).sort(\n (a, b) => a.packageFile.localeCompare(b.packageFile),\n )) {\n deps += `<details><summary>${packageFile.packageFile}</summary>\\n\\n`;\n for (const dep of packageFile.deps) {\n const ver = dep.currentValue;\n const digest = dep.currentDigest;\n const lock = dep.lockedVersion;\n let version;\n if (ver || digest) {\n version = ver && digest ? `${ver}@${digest}` : `${digest ?? ver}`;\n } else if (lock) {\n version = `lock file @ ${lock}`;\n } else {\n version = 'unknown version';\n }\n // TODO: types (#22198)\n deps += ` - \\`${dep.depName!} ${version}\\`\\n`;\n }\n deps += '\\n</details>\\n\\n';\n }\n deps += `</blockquote>\\n</details>\\n\\n`;\n }\n deps += pad ? '</blockquote>\\n</details>\\n\\n' : '';\n }\n\n return deps;\n }\n\n /**\n * Removes the last dependency/entry in the PackageFiles data\n * i.e. the last line in the tobe generated detected dependency section\n * @param data\n * @Returns true if anything that translates to a markdown written line was deleted\n * otherwise false is returned\n */\n private static pop(\n data: Map<string, Record<string, PackageFile[]> | null>,\n ): boolean {\n // get detected managers list of the last listed base branch\n const [branch, managers] = Array.from(data).pop() ?? [];\n if (!branch) {\n return false;\n }\n\n // delete base branch listing if it has no managers left\n if (!managers || is.emptyObject(managers)) {\n return data.delete(branch);\n }\n\n // get all manifest files for the last listed manager\n const [manager, packageFiles] = Object.entries(managers).pop()!;\n\n // delete current manager if it has no manifest files left\n if (!packageFiles || is.emptyArray(packageFiles)) {\n return delete managers[manager];\n }\n\n // delete manifest file if it has no deps left\n const len = packageFiles.length - 1;\n if (is.emptyArray(packageFiles[len].deps)) {\n return !!packageFiles.pop();\n }\n\n // remove the last listed dependency\n return !!packageFiles[len].deps.pop();\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"package-files.js","sourceRoot":"","sources":["../../../lib/workers/repository/package-files.ts"],"names":[],"mappings":"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","sourcesContent":["import { isEmptyArray, isEmptyObject, isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../logger';\nimport type { PackageFile } from '../../modules/manager/types';\nimport { clone } from '../../util/clone';\n\nexport class PackageFiles {\n private static data = new Map<string, Record<string, PackageFile[]> | null>();\n\n static add(\n baseBranch: string,\n packageFiles: Record<string, PackageFile[]> | null,\n ): void {\n logger.debug(\n { baseBranch },\n `PackageFiles.add() - Package file saved for base branch`,\n );\n this.data.set(baseBranch, packageFiles);\n }\n\n static clear(): void {\n logger.debug('PackageFiles.clear() - Package files deleted');\n this.data.clear();\n }\n\n /**\n * Truncates the detected dependencies' section until it fits the available space\n * i.e. It has length smaller than maxLength.\n * This does not mutate the original PackageFiles data\n * Note: setHeader=false is used for testing purposes only\n * Mainly for comparing truncated and non-truncated markdown\n * @param maxLength\n * @param setHeader\n */\n static getDashboardMarkdown(maxLength: number, setHeader = true): string {\n const note =\n '> ℹ **Note**\\n> \\n> Detected dependencies section has been truncated\\n\\n';\n const title = `## Detected dependencies\\n\\n`;\n\n // exclude header length from the available space\n const maxHeaderLen = setHeader ? (title + note).length : 0;\n const mdMaxLength = maxLength - maxHeaderLen;\n\n let md: string;\n let header = '';\n let removed = false;\n let truncated = false;\n\n const data = new Map(clone(Array.from(this.data)));\n\n // filter all deps with skip reason\n for (const managers of [...data.values()].filter(isTruthy)) {\n for (const files of Object.values(managers).filter(isTruthy)) {\n for (const file of files.filter((f) => isTruthy(f.deps))) {\n file.deps = file.deps.filter(isTruthy).filter((d) => !d.skipReason);\n }\n }\n }\n\n do {\n // shorten markdown until it fits\n md = PackageFiles.getDashboardMarkdownInternal(data);\n if (md.length > mdMaxLength) {\n // truncate data\n removed = PackageFiles.pop(data);\n }\n if (removed) {\n truncated = true; // used to set the truncation Note\n }\n } while (removed && md.length > mdMaxLength);\n\n header += title;\n header += truncated ? note : '';\n\n return (setHeader ? header : '') + md;\n }\n\n /**\n * Generates the \"detected dependencies\" markdown\n * @param data\n */\n private static getDashboardMarkdownInternal(\n data: Map<string, Record<string, PackageFile[]> | null>,\n ): string {\n const none = 'None detected\\n\\n';\n const pad = data.size > 1; // padding condition for a multi base branch repo\n let deps = '';\n\n for (const [branch, packageFiles] of Array.from(data).sort(([a], [b]) =>\n a.localeCompare(b, undefined, { numeric: true }),\n )) {\n deps += pad\n ? `<details><summary>Branch ${branch}</summary>\\n<blockquote>\\n\\n`\n : '';\n if (packageFiles === null) {\n deps += none;\n deps += pad ? '</blockquote>\\n</details>\\n\\n' : '';\n continue;\n }\n\n const managers = Object.keys(packageFiles).sort();\n if (managers.length === 0) {\n deps += none;\n deps += pad ? '</blockquote>\\n</details>\\n\\n' : '';\n continue;\n }\n\n for (const manager of managers) {\n deps += `<details><summary>${manager}</summary>\\n<blockquote>\\n\\n`;\n for (const packageFile of Array.from(packageFiles[manager]).sort(\n (a, b) => a.packageFile.localeCompare(b.packageFile),\n )) {\n deps += `<details><summary>${packageFile.packageFile}</summary>\\n\\n`;\n for (const dep of packageFile.deps) {\n const ver = dep.currentValue;\n const digest = dep.currentDigest;\n const lock = dep.lockedVersion;\n let version;\n if (ver || digest) {\n version = ver && digest ? `${ver}@${digest}` : `${digest ?? ver}`;\n } else if (lock) {\n version = `lock file @ ${lock}`;\n } else {\n version = 'unknown version';\n }\n // TODO: types (#22198)\n deps += ` - \\`${dep.depName!} ${version}\\`\\n`;\n }\n deps += '\\n</details>\\n\\n';\n }\n deps += `</blockquote>\\n</details>\\n\\n`;\n }\n deps += pad ? '</blockquote>\\n</details>\\n\\n' : '';\n }\n\n return deps;\n }\n\n /**\n * Removes the last dependency/entry in the PackageFiles data\n * i.e. the last line in the tobe generated detected dependency section\n * @param data\n * @Returns true if anything that translates to a markdown written line was deleted\n * otherwise false is returned\n */\n private static pop(\n data: Map<string, Record<string, PackageFile[]> | null>,\n ): boolean {\n // get detected managers list of the last listed base branch\n const [branch, managers] = Array.from(data).pop() ?? [];\n if (!branch) {\n return false;\n }\n\n // delete base branch listing if it has no managers left\n if (!managers || isEmptyObject(managers)) {\n return data.delete(branch);\n }\n\n // get all manifest files for the last listed manager\n const [manager, packageFiles] = Object.entries(managers).pop()!;\n\n // delete current manager if it has no manifest files left\n if (!packageFiles || isEmptyArray(packageFiles)) {\n return delete managers[manager];\n }\n\n // delete manifest file if it has no deps left\n const len = packageFiles.length - 1;\n if (isEmptyArray(packageFiles[len].deps)) {\n return !!packageFiles.pop();\n }\n\n // remove the last listed dependency\n return !!packageFiles[len].deps.pop();\n }\n}\n"]}
|
|
@@ -6,7 +6,7 @@ exports.extract = extract;
|
|
|
6
6
|
exports.lookup = lookup;
|
|
7
7
|
exports.update = update;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
|
-
const is_1 =
|
|
9
|
+
const is_1 = require("@sindresorhus/is");
|
|
10
10
|
const logger_1 = require("../../../logger");
|
|
11
11
|
const manager_1 = require("../../../modules/manager");
|
|
12
12
|
const scm_1 = require("../../../modules/platform/scm");
|
|
@@ -134,7 +134,7 @@ async function extract(config, overwriteCache = true) {
|
|
|
134
134
|
};
|
|
135
135
|
}
|
|
136
136
|
// Clean up cached branch extracts
|
|
137
|
-
const baseBranches = is_1.
|
|
137
|
+
const baseBranches = (0, is_1.isNonEmptyArray)(config.baseBranches)
|
|
138
138
|
? config.baseBranches
|
|
139
139
|
: [baseBranch];
|
|
140
140
|
Object.keys(cache.scan).forEach((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.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"]}
|
|
1
|
+
{"version":3,"file":"extract-update.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/extract-update.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyArray } 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 = isNonEmptyArray(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"]}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.fetchUpdates = fetchUpdates;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
// TODO #22198
|
|
6
|
-
const is_1 =
|
|
6
|
+
const is_1 = require("@sindresorhus/is");
|
|
7
7
|
const config_1 = require("../../../config");
|
|
8
8
|
const logger_1 = require("../../../logger");
|
|
9
9
|
const datasource_1 = require("../../../modules/datasource");
|
|
@@ -19,14 +19,14 @@ const lookup_1 = require("./lookup");
|
|
|
19
19
|
async function lookup(packageFileConfig, indep) {
|
|
20
20
|
const dep = (0, clone_1.clone)(indep);
|
|
21
21
|
dep.updates = [];
|
|
22
|
-
if (is_1.
|
|
22
|
+
if ((0, is_1.isString)(dep.depName)) {
|
|
23
23
|
dep.depName = dep.depName.trim();
|
|
24
24
|
}
|
|
25
25
|
dep.packageName ??= dep.depName;
|
|
26
26
|
if (dep.skipReason) {
|
|
27
27
|
return result_1.Result.ok(dep);
|
|
28
28
|
}
|
|
29
|
-
if (!is_1.
|
|
29
|
+
if (!(0, is_1.isNonEmptyString)(dep.packageName)) {
|
|
30
30
|
dep.skipReason = 'invalid-name';
|
|
31
31
|
return result_1.Result.ok(dep);
|
|
32
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/fetch.ts"],"names":[],"mappings":"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","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"]}
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../lib/workers/repository/process/fetch.ts"],"names":[],"mappings":"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","sourcesContent":["// TODO #22198\nimport { isNonEmptyString, isString } 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 (isString(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 (!isNonEmptyString(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"]}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getCurrentVersion = getCurrentVersion;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const regex_1 = require("../../../../util/regex");
|
|
7
6
|
function getCurrentVersion(currentValue, lockedVersion, versioningApi, rangeStrategy, latestVersion, allVersions) {
|
|
8
7
|
// istanbul ignore if
|
|
9
|
-
if (!is_1.
|
|
8
|
+
if (!(0, is_1.isString)(currentValue)) {
|
|
10
9
|
return null;
|
|
11
10
|
}
|
|
12
11
|
let useVersions = allVersions.filter((v) => versioningApi.matches(v, currentValue));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"current.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/current.ts"],"names":[],"mappings":";;AAIA,8CAkDC
|
|
1
|
+
{"version":3,"file":"current.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/current.ts"],"names":[],"mappings":";;AAIA,8CAkDC;AAtDD,yCAA4C;AAE5C,kDAA+C;AAE/C,SAAgB,iBAAiB,CAC/B,YAAoB,EACpB,aAAqB,EACrB,aAA4B,EAC5B,aAAqB,EACrB,aAAqB,EACrB,WAAqB;IAErB,qBAAqB;IACrB,IAAI,CAAC,IAAA,aAAQ,EAAC,YAAY,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACzC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,YAAY,CAAC,CACvC,CAAC;IACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC;QACxE,WAAW,GAAG,WAAW,CAAC,MAAM,CAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,CACtD,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;QAC5B,OAAO,CACL,aAAa;YACb,aAAa,CAAC,oBAAoB,CAAC,WAAW,EAAE,YAAY,CAAC,CAC9D,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QAC7B,8CAA8C;QAC9C,OAAO,aAAa,CAAC,oBAAoB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACvE,CAAC;IACD,+CAA+C;IAC/C,MAAM,iBAAiB,GAAG,aAAa,CAAC,oBAAoB,CAC1D,WAAW,EACX,YAAY,CACb,CAAC;IACF,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1C,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,aAAa,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;QAChD,OAAO,YAAY,CAAC,OAAO,CAAC,IAAA,aAAK,EAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { isString } from '@sindresorhus/is';\nimport type { VersioningApi } from '../../../../modules/versioning/types';\nimport { regEx } from '../../../../util/regex';\n\nexport function getCurrentVersion(\n currentValue: string,\n lockedVersion: string,\n versioningApi: VersioningApi,\n rangeStrategy: string,\n latestVersion: string,\n allVersions: string[],\n): string | null {\n // istanbul ignore if\n if (!isString(currentValue)) {\n return null;\n }\n let useVersions = allVersions.filter((v) =>\n versioningApi.matches(v, currentValue),\n );\n if (useVersions.length === 1) {\n return useVersions[0];\n }\n if (latestVersion && versioningApi.matches(latestVersion, currentValue)) {\n useVersions = useVersions.filter(\n (v) => !versioningApi.isGreaterThan(v, latestVersion),\n );\n }\n if (rangeStrategy === 'pin') {\n return (\n lockedVersion ||\n versioningApi.getSatisfyingVersion(useVersions, currentValue)\n );\n }\n if (rangeStrategy === 'bump') {\n // Use the lowest version in the current range\n return versioningApi.minSatisfyingVersion(useVersions, currentValue);\n }\n // Use the highest version in the current range\n const satisfyingVersion = versioningApi.getSatisfyingVersion(\n useVersions,\n currentValue,\n );\n if (satisfyingVersion) {\n return satisfyingVersion;\n }\n\n if (versioningApi.isVersion(currentValue)) {\n return currentValue;\n }\n if (versioningApi.isSingleVersion(currentValue)) {\n return currentValue.replace(regEx(/=/g), '').trim();\n }\n\n return null;\n}\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.filterInternalChecks = filterInternalChecks;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const config_1 = require("../../../../config");
|
|
7
6
|
const logger_1 = require("../../../../logger");
|
|
8
7
|
const postprocess_release_1 = require("../../../../modules/datasource/postprocess-release");
|
|
@@ -44,7 +43,7 @@ async function filterInternalChecks(config, versioningApi, bucket, sortedRelease
|
|
|
44
43
|
candidateRelease = updatedCandidateRelease;
|
|
45
44
|
// Now check for a minimumReleaseAge config
|
|
46
45
|
const { minimumConfidence, minimumReleaseAge, updateType } = releaseConfig;
|
|
47
|
-
if (is_1.
|
|
46
|
+
if ((0, is_1.isNonEmptyString)(minimumReleaseAge)) {
|
|
48
47
|
const minimumReleaseAgeBehaviour = releaseConfig.minimumReleaseAgeBehaviour;
|
|
49
48
|
// if there is a releaseTimestamp, regardless of `minimumReleaseAgeBehaviour`, we should process it
|
|
50
49
|
if (candidateRelease.releaseTimestamp) {
|
|
@@ -57,14 +56,14 @@ async function filterInternalChecks(config, versioningApi, bucket, sortedRelease
|
|
|
57
56
|
continue;
|
|
58
57
|
}
|
|
59
58
|
} // or if there is no timestamp, and we're running in `minimumReleaseAgeBehaviour=timestamp-required`
|
|
60
|
-
else if (is_1.
|
|
59
|
+
else if ((0, is_1.isNullOrUndefined)(candidateRelease.releaseTimestamp) &&
|
|
61
60
|
minimumReleaseAgeBehaviour === 'timestamp-required') {
|
|
62
61
|
// Skip it, as we require a timestamp
|
|
63
62
|
candidateVersionsWithoutReleaseTimestamp[minimumReleaseAgeBehaviour].push(candidateRelease.version);
|
|
64
63
|
pendingReleases.unshift(candidateRelease);
|
|
65
64
|
continue;
|
|
66
65
|
} // if there is no timestamp, and we're running in `optional` mode, we can allow it
|
|
67
|
-
else if (is_1.
|
|
66
|
+
else if ((0, is_1.isNullOrUndefined)(candidateRelease.releaseTimestamp) &&
|
|
68
67
|
minimumReleaseAgeBehaviour === 'timestamp-optional') {
|
|
69
68
|
candidateVersionsWithoutReleaseTimestamp[minimumReleaseAgeBehaviour].push(candidateRelease.version);
|
|
70
69
|
}
|
|
@@ -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 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"]}
|
|
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 { isNonEmptyString, isNullOrUndefined } 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 (isNonEmptyString(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 isNullOrUndefined(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 isNullOrUndefined(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"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateUpdate = generateUpdate;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const logger_1 = require("../../../../logger");
|
|
7
6
|
const date_1 = require("../../../../util/date");
|
|
8
7
|
const merge_confidence_1 = require("../../../../util/merge-confidence");
|
|
@@ -80,7 +79,7 @@ async function generateUpdate(config, currentValue, versioningApi, rangeStrategy
|
|
|
80
79
|
update.isBreaking = update.updateType === 'major';
|
|
81
80
|
}
|
|
82
81
|
const { datasource, packageName, packageRules } = config;
|
|
83
|
-
if (packageRules?.some((pr) => is_1.
|
|
82
|
+
if (packageRules?.some((pr) => (0, is_1.isNonEmptyArray)(pr.matchConfidence))) {
|
|
84
83
|
update.mergeConfidenceLevel = await (0, merge_confidence_1.getMergeConfidenceLevel)(datasource, packageName, currentVersion, newVersion, update.updateType);
|
|
85
84
|
}
|
|
86
85
|
if (!versioningApi.isVersion(update.newValue)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/generate.ts"],"names":[],"mappings":";;AAWA,wCA0GC
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/process/lookup/generate.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyArray } from '@sindresorhus/is';\nimport { logger } from '../../../../logger';\nimport type { Release } from '../../../../modules/datasource';\nimport type { LookupUpdate } from '../../../../modules/manager/types';\nimport type { VersioningApi } from '../../../../modules/versioning';\nimport type { RangeStrategy } from '../../../../types';\nimport { getElapsedDays } from '../../../../util/date';\nimport { getMergeConfidenceLevel } from '../../../../util/merge-confidence';\nimport type { LookupUpdateConfig } from './types';\nimport { getUpdateType } from './update-type';\n\nexport async function generateUpdate(\n config: LookupUpdateConfig,\n currentValue: string | undefined,\n versioningApi: VersioningApi,\n rangeStrategy: RangeStrategy,\n currentVersion: string,\n bucket: string,\n release: Release,\n): Promise<LookupUpdate> {\n const newVersion = release.version;\n const update: LookupUpdate = {\n bucket,\n newVersion,\n newValue: null!,\n };\n\n // istanbul ignore if\n if (release.checksumUrl !== undefined) {\n update.checksumUrl = release.checksumUrl;\n }\n // istanbul ignore if\n if (release.downloadUrl !== undefined) {\n update.downloadUrl = release.downloadUrl;\n }\n // istanbul ignore if\n if (release.newDigest !== undefined) {\n update.newDigest = release.newDigest;\n }\n // istanbul ignore if\n if (release.releaseTimestamp) {\n update.releaseTimestamp = release.releaseTimestamp;\n update.newVersionAgeInDays = getElapsedDays(release.releaseTimestamp);\n }\n // istanbul ignore if\n if (release.registryUrl !== undefined) {\n /**\n * This means:\n * - registry strategy is set to merge\n * - releases were fetched from multiple registry urls\n */\n update.registryUrl = release.registryUrl;\n }\n\n if (currentValue) {\n try {\n update.newValue = versioningApi.getNewValue({\n currentValue,\n rangeStrategy,\n currentVersion,\n newVersion,\n })!;\n } catch (err) /* istanbul ignore next */ {\n logger.warn(\n { err, currentValue, rangeStrategy, currentVersion, newVersion },\n 'getNewValue error',\n );\n update.newValue = currentValue;\n }\n } else {\n update.newValue = currentValue;\n }\n update.newMajor = versioningApi.getMajor(newVersion)!;\n update.newMinor = versioningApi.getMinor(newVersion)!;\n update.newPatch = versioningApi.getPatch(newVersion)!;\n // istanbul ignore if\n if (!update.updateType && !currentVersion) {\n logger.debug({ update }, 'Update has no currentVersion');\n update.newValue = currentValue!;\n return update;\n }\n update.updateType =\n update.updateType ??\n getUpdateType(config, versioningApi, currentVersion, newVersion);\n if (versioningApi.isBreaking) {\n // This versioning scheme has breaking awareness\n update.isBreaking = versioningApi.isBreaking(currentVersion, newVersion);\n } else {\n // This versioning scheme does not have breaking awareness - assume only major updates are breaking\n // Updates from, or to, unstable releases should be treated as breaking too.\n // But we should not add that as default behavior until we stop treating non-LTS versions as unstable first\n update.isBreaking = update.updateType === 'major';\n }\n const { datasource, packageName, packageRules } = config;\n if (packageRules?.some((pr) => isNonEmptyArray(pr.matchConfidence))) {\n update.mergeConfidenceLevel = await getMergeConfidenceLevel(\n datasource,\n packageName,\n currentVersion,\n newVersion,\n update.updateType,\n );\n }\n if (!versioningApi.isVersion(update.newValue)) {\n update.isRange = true;\n }\n if (rangeStrategy === 'update-lockfile' && currentValue === update.newValue) {\n update.isLockfileUpdate = true;\n }\n if (\n rangeStrategy === 'bump' &&\n // TODO #22198\n versioningApi.matches(newVersion, currentValue!)\n ) {\n update.isBump = true;\n }\n return update;\n}\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.lookupUpdates = lookupUpdates;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const config_1 = require("../../../../config");
|
|
7
7
|
const error_messages_1 = require("../../../../constants/error-messages");
|
|
8
8
|
const logger_1 = require("../../../../logger");
|
|
@@ -54,7 +54,7 @@ async function lookupUpdates(inconfig) {
|
|
|
54
54
|
dependency: config.packageName,
|
|
55
55
|
currentValue: config.currentValue,
|
|
56
56
|
}, 'lookupUpdates');
|
|
57
|
-
if (config.currentValue && !is_1.
|
|
57
|
+
if (config.currentValue && !(0, is_1.isString)(config.currentValue)) {
|
|
58
58
|
// If currentValue is not a string, then it's invalid
|
|
59
59
|
if (config.currentValue) {
|
|
60
60
|
logger_1.logger.debug(`Invalid currentValue for ${config.packageName}: ${JSON.stringify(config.currentValue)} (${typeof config.currentValue})`);
|
|
@@ -68,8 +68,8 @@ async function lookupUpdates(inconfig) {
|
|
|
68
68
|
return result_1.Result.ok(res);
|
|
69
69
|
}
|
|
70
70
|
let compareValue = config.currentValue;
|
|
71
|
-
if (is_1.
|
|
72
|
-
is_1.
|
|
71
|
+
if ((0, is_1.isString)(config.currentValue) &&
|
|
72
|
+
(0, is_1.isString)(config.versionCompatibility)) {
|
|
73
73
|
const versionCompatbilityRegEx = (0, regex_1.regEx)(config.versionCompatibility);
|
|
74
74
|
const regexMatch = versionCompatbilityRegEx.exec(config.currentValue);
|
|
75
75
|
if (regexMatch?.groups) {
|
|
@@ -90,8 +90,8 @@ async function lookupUpdates(inconfig) {
|
|
|
90
90
|
}, 'version compatibility regex mismatch');
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
|
-
const isValid = is_1.
|
|
94
|
-
const unconstrainedValue = !!config.lockedVersion && is_1.
|
|
93
|
+
const isValid = (0, is_1.isString)(compareValue) && versioningApi.isValid(compareValue);
|
|
94
|
+
const unconstrainedValue = !!config.lockedVersion && (0, is_1.isUndefined)(config.currentValue);
|
|
95
95
|
if (isValid || unconstrainedValue) {
|
|
96
96
|
if (!config.updatePinnedDependencies &&
|
|
97
97
|
// TODO #22198
|
|
@@ -227,10 +227,10 @@ async function lookupUpdates(inconfig) {
|
|
|
227
227
|
}
|
|
228
228
|
res.currentVersion = currentVersion;
|
|
229
229
|
const currentVersionTimestamp = await getTimestamp(config, allVersions, currentVersion, versioningApi);
|
|
230
|
-
if (is_1.
|
|
230
|
+
if ((0, is_1.isNonEmptyString)(currentVersionTimestamp)) {
|
|
231
231
|
res.currentVersionTimestamp = currentVersionTimestamp;
|
|
232
232
|
res.currentVersionAgeInDays = (0, date_1.getElapsedDays)(currentVersionTimestamp);
|
|
233
|
-
if (config.packageRules?.some((rule) => is_1.
|
|
233
|
+
if (config.packageRules?.some((rule) => (0, is_1.isNonEmptyString)(rule.matchCurrentAge))) {
|
|
234
234
|
// Reapply package rules to check matches for matchCurrentAge
|
|
235
235
|
config = await (0, package_rules_1.applyPackageRules)({ ...config, currentVersionTimestamp }, 'current-timestamp');
|
|
236
236
|
}
|
|
@@ -312,7 +312,7 @@ async function lookupUpdates(inconfig) {
|
|
|
312
312
|
const bucket = (0, bucket_1.getBucket)(config,
|
|
313
313
|
// TODO #22198
|
|
314
314
|
currentVersion, release.version, versioningApi);
|
|
315
|
-
if (is_1.
|
|
315
|
+
if ((0, is_1.isString)(bucket)) {
|
|
316
316
|
if (buckets[bucket]) {
|
|
317
317
|
buckets[bucket].push(release);
|
|
318
318
|
}
|
|
@@ -363,7 +363,7 @@ async function lookupUpdates(inconfig) {
|
|
|
363
363
|
res.isSingleVersion = true;
|
|
364
364
|
}
|
|
365
365
|
res.isSingleVersion ??=
|
|
366
|
-
is_1.
|
|
366
|
+
(0, is_1.isString)(update.newValue) &&
|
|
367
367
|
versioningApi.isSingleVersion(update.newValue);
|
|
368
368
|
// istanbul ignore if
|
|
369
369
|
if (config.versioning === docker_1.id &&
|
|
@@ -421,12 +421,12 @@ async function lookupUpdates(inconfig) {
|
|
|
421
421
|
res.fixedVersion = compareValue.replace((0, regex_1.regEx)(/^=+/), '');
|
|
422
422
|
}
|
|
423
423
|
// massage versionCompatibility
|
|
424
|
-
if (is_1.
|
|
425
|
-
is_1.
|
|
426
|
-
is_1.
|
|
424
|
+
if ((0, is_1.isString)(config.currentValue) &&
|
|
425
|
+
(0, is_1.isString)(compareValue) &&
|
|
426
|
+
(0, is_1.isString)(config.versionCompatibility)) {
|
|
427
427
|
for (const update of res.updates) {
|
|
428
428
|
logger_1.logger.debug({ update });
|
|
429
|
-
if (is_1.
|
|
429
|
+
if ((0, is_1.isString)(config.currentValue) && (0, is_1.isString)(update.newValue)) {
|
|
430
430
|
update.newValue = config.currentValue.replace(compareValue, update.newValue);
|
|
431
431
|
}
|
|
432
432
|
}
|
|
@@ -525,8 +525,7 @@ async function lookupUpdates(inconfig) {
|
|
|
525
525
|
res.updates = res.updates
|
|
526
526
|
.filter((update) => update.newValue !== null || config.currentValue === null)
|
|
527
527
|
.filter((update) => update.newDigest !== null)
|
|
528
|
-
.filter((update) => (is_1.
|
|
529
|
-
update.newName !== config.packageName) ||
|
|
528
|
+
.filter((update) => ((0, is_1.isString)(update.newName) && update.newName !== config.packageName) ||
|
|
530
529
|
update.isReplacement === true ||
|
|
531
530
|
update.newValue !== config.currentValue ||
|
|
532
531
|
update.isLockfileUpdate === true ||
|