renovate 42.3.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/artifacts.js +1 -1
- package/dist/modules/manager/copier/artifacts.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 +6 -6
- 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/homebrew/extract.js +1 -1
- package/dist/modules/manager/homebrew/extract.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/schema.d.ts +1 -1
- package/dist/modules/manager/pep621/schema.js +1 -0
- package/dist/modules/manager/pep621/schema.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/poetry/schema.d.ts +4 -0
- package/dist/modules/manager/poetry/schema.js +5 -1
- package/dist/modules/manager/poetry/schema.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 +3 -3
- 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/pr-cache.js +1 -1
- package/dist/modules/platform/forgejo/pr-cache.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/pr-cache.js +1 -1
- package/dist/modules/platform/gitea/pr-cache.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/ivy/parse.js +1 -1
- package/dist/modules/versioning/ivy/parse.js.map +1 -1
- package/dist/modules/versioning/maven/index.js +1 -1
- package/dist/modules/versioning/maven/index.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/nuget/index.js +1 -1
- package/dist/modules/versioning/nuget/index.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/behind-base-branch-cache.js +2 -1
- package/dist/util/git/behind-base-branch-cache.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/conflicts-cache.js +2 -1
- package/dist/util/git/conflicts-cache.js.map +1 -1
- package/dist/util/git/index.js +5 -5
- 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/github/graphql/datasource-fetcher.js +2 -1
- package/dist/util/github/graphql/datasource-fetcher.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/http/retry-after.js +3 -4
- package/dist/util/http/retry-after.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/check.js +2 -1
- package/dist/workers/repository/onboarding/branch/check.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/index.js +3 -4
- package/dist/workers/repository/onboarding/branch/index.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js +7 -8
- 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 +5 -5
- package/renovate-schema.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limits.js","sourceRoot":"","sources":["../../../lib/util/http/rate-limits.ts"],"names":[],"mappings":";;AAkDA,8CAMC;AAUD,gEA0BC;AAED,sDAsBC;;AApHD,
|
|
1
|
+
{"version":3,"file":"rate-limits.js","sourceRoot":"","sources":["../../../lib/util/http/rate-limits.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNumber } from '@sindresorhus/is';\nimport { matchesHost } from '../host-rules';\nimport * as hostRules from '../host-rules';\nimport type { ConcurrencyLimitRule, ThrottleLimitRule } from './types';\n\n// The first match wins\nconst concurrencyDefaults: ConcurrencyLimitRule[] = [\n {\n matchHost: 'registry.npmjs.org',\n concurrency: 999,\n },\n {\n matchHost: 'repology.org',\n concurrency: 1,\n },\n {\n matchHost: '*',\n concurrency: 16,\n },\n];\n\n// The first match wins\nconst throttleDefaults: ThrottleLimitRule[] = [\n {\n // https://guides.rubygems.org/rubygems-org-rate-limits/\n matchHost: 'rubygems.org',\n throttleMs: 125,\n },\n {\n // https://crates.io/data-access#api\n matchHost: 'https://crates.io/api/',\n throttleMs: 1000,\n },\n {\n // The rate limit is 100 per second, according this comment:\n // https://github.com/renovatebot/renovate/discussions/27018#discussioncomment-10336270\n //\n // We stick to 20 per second just in case.\n matchHost: 'https://plugins.gradle.org',\n throttleMs: 50,\n },\n {\n matchHost: 'repology.org',\n throttleMs: 2000,\n },\n];\n\nlet throttleLimits: ThrottleLimitRule[] = [];\nlet concurrencyLimits: ConcurrencyLimitRule[] = [];\n\nexport function setHttpRateLimits(\n concurrencyRules?: ConcurrencyLimitRule[],\n throttleRules?: ThrottleLimitRule[],\n): void {\n concurrencyLimits = concurrencyRules ?? concurrencyDefaults;\n throttleLimits = throttleRules ?? throttleDefaults;\n}\n\nfunction matches(url: string, host: string): boolean {\n if (host === '*') {\n return true;\n }\n\n return matchesHost(url, host);\n}\n\nexport function getConcurrentRequestsLimit(url: string): number | null {\n let result: number | null = null;\n\n const { concurrentRequestLimit: hostRuleLimit } = hostRules.find({ url });\n if (\n isNumber(hostRuleLimit) &&\n hostRuleLimit > 0 &&\n hostRuleLimit < Number.MAX_SAFE_INTEGER\n ) {\n result = hostRuleLimit;\n }\n\n for (const { matchHost, concurrency: limit } of concurrencyLimits) {\n if (!matches(url, matchHost)) {\n continue;\n }\n\n if (result && result <= limit) {\n continue;\n }\n\n result = limit;\n break;\n }\n\n return result;\n}\n\nexport function getThrottleIntervalMs(url: string): number | null {\n let result: number | null = null;\n\n const { maxRequestsPerSecond } = hostRules.find({ url });\n if (isNumber(maxRequestsPerSecond) && maxRequestsPerSecond > 0) {\n result = Math.ceil(1000 / maxRequestsPerSecond);\n }\n\n for (const { matchHost, throttleMs: limit } of throttleLimits) {\n if (!matches(url, matchHost)) {\n continue;\n }\n\n if (result && result >= limit) {\n continue;\n }\n\n result = limit;\n break;\n }\n\n return result;\n}\n"]}
|
|
@@ -40,10 +40,9 @@ async function wrapWithRetry(task, url, getRetryAfter, maxRetryAfter) {
|
|
|
40
40
|
throw err;
|
|
41
41
|
}
|
|
42
42
|
logger_1.logger.debug(`Retry-After: will retry ${url} after ${delaySeconds} seconds`);
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
]);
|
|
43
|
+
let hostDelay = hostDelays.get(key);
|
|
44
|
+
hostDelay ??= Promise.resolve();
|
|
45
|
+
const delay = Promise.all([hostDelay, (0, promises_1.setTimeout)(1000 * delaySeconds)]);
|
|
47
46
|
hostDelays.set(key, delay);
|
|
48
47
|
retries += 1;
|
|
49
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-after.js","sourceRoot":"","sources":["../../../lib/util/http/retry-after.ts"],"names":[],"mappings":";;AAmBA,
|
|
1
|
+
{"version":3,"file":"retry-after.js","sourceRoot":"","sources":["../../../lib/util/http/retry-after.ts"],"names":[],"mappings":"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","sourcesContent":["import { setTimeout } from 'timers/promises';\nimport { RequestError } from 'got';\nimport { DateTime } from 'luxon';\nimport { logger } from '../../logger';\nimport { parseUrl } from '../url';\nimport type { Task } from './types';\n\nconst hostDelays = new Map<string, Promise<unknown>>();\n\nconst maxRetries = 2;\n\n/**\n * Given a task that returns a promise, retry the task if it fails with a\n * 429 Too Many Requests or 403 Forbidden response, using the Retry-After\n * header to determine the delay.\n *\n * For response codes other than 429 or 403, or if the Retry-After header\n * is not present or invalid, the task is not retried, throwing the error.\n */\nexport async function wrapWithRetry<T>(\n task: Task<T>,\n url: string,\n getRetryAfter: (err: unknown) => number | null,\n maxRetryAfter: number,\n): Promise<T> {\n const key = parseUrl(url)?.host ?? url;\n\n let retries = 0;\n for (;;) {\n try {\n await hostDelays.get(key);\n hostDelays.delete(key);\n\n return await task();\n } catch (err) {\n const delaySeconds = getRetryAfter(err);\n if (delaySeconds === null) {\n throw err;\n }\n\n if (retries === maxRetries) {\n logger.debug(\n `Retry-After: reached maximum retries (${maxRetries}) for ${url}`,\n );\n throw err;\n }\n\n if (delaySeconds > maxRetryAfter) {\n logger.debug(\n `Retry-After: delay ${delaySeconds} seconds exceeds maxRetryAfter ${maxRetryAfter} seconds for ${url}`,\n );\n throw err;\n }\n\n logger.debug(\n `Retry-After: will retry ${url} after ${delaySeconds} seconds`,\n );\n\n let hostDelay = hostDelays.get(key);\n hostDelay ??= Promise.resolve();\n const delay = Promise.all([hostDelay, setTimeout(1000 * delaySeconds)]);\n hostDelays.set(key, delay);\n retries += 1;\n }\n }\n}\n\nexport function getRetryAfter(err: unknown): number | null {\n if (!(err instanceof RequestError)) {\n return null;\n }\n\n if (!err.response) {\n return null;\n }\n\n if (err.response.statusCode < 400 || err.response.statusCode >= 500) {\n logger.debug(\n { url: err.response.url },\n `Retry-After: unexpected status code ${err.response.statusCode}`,\n );\n return null;\n }\n\n const retryAfter = err.response.headers['retry-after']?.trim();\n if (!retryAfter) {\n return null;\n }\n\n const date = DateTime.fromHTTP(retryAfter);\n if (date.isValid) {\n const seconds = Math.floor(date.diffNow('seconds').seconds);\n if (seconds < 0) {\n logger.debug(\n { url: err.response.url, retryAfter },\n 'Retry-After: date in the past',\n );\n return null;\n }\n\n return seconds;\n }\n\n const seconds = parseInt(retryAfter);\n if (!Number.isNaN(seconds) && seconds >= 0) {\n return seconds;\n }\n\n logger.debug(\n { url: err.response.url, retryAfter },\n 'Retry-After: unsupported format',\n );\n return null;\n}\n"]}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.validateInterpolatedValues = validateInterpolatedValues;
|
|
4
4
|
exports.replaceInterpolatedValuesInObject = replaceInterpolatedValuesInObject;
|
|
5
|
-
const
|
|
6
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
7
6
|
const error_messages_1 = require("../constants/error-messages");
|
|
8
7
|
const logger_1 = require("../logger");
|
|
9
8
|
const string_1 = require("./string");
|
|
@@ -13,12 +12,12 @@ function validateInterpolatedValues(input, options) {
|
|
|
13
12
|
}
|
|
14
13
|
const { name, nameRegex } = options;
|
|
15
14
|
const validationErrors = [];
|
|
16
|
-
if (is_1.
|
|
15
|
+
if ((0, is_1.isPlainObject)(input)) {
|
|
17
16
|
for (const [key, value] of Object.entries(input)) {
|
|
18
17
|
if (!nameRegex.test(key)) {
|
|
19
18
|
validationErrors.push(`Invalid ${name} name "${key}"`);
|
|
20
19
|
}
|
|
21
|
-
if (!is_1.
|
|
20
|
+
if (!(0, is_1.isString)(value)) {
|
|
22
21
|
validationErrors.push(`${(0, string_1.capitalize)(name)} values must be strings. Found type ${typeof value} for ${name} ${key}`);
|
|
23
22
|
}
|
|
24
23
|
}
|
|
@@ -65,18 +64,18 @@ function replaceInterpolatedValuesInObject(config_, input, options, deleteValues
|
|
|
65
64
|
delete config[name];
|
|
66
65
|
}
|
|
67
66
|
for (const [key, value] of Object.entries(config)) {
|
|
68
|
-
if (is_1.
|
|
67
|
+
if ((0, is_1.isPlainObject)(value)) {
|
|
69
68
|
config[key] = replaceInterpolatedValuesInObject(value, input, options, deleteValues);
|
|
70
69
|
}
|
|
71
|
-
if (is_1.
|
|
70
|
+
if ((0, is_1.isString)(value)) {
|
|
72
71
|
config[key] = replaceInterpolatedValuesInString(key, value, input, options);
|
|
73
72
|
}
|
|
74
|
-
if (is_1.
|
|
73
|
+
if ((0, is_1.isArray)(value)) {
|
|
75
74
|
for (const [arrayIndex, arrayItem] of value.entries()) {
|
|
76
|
-
if (is_1.
|
|
75
|
+
if ((0, is_1.isPlainObject)(arrayItem)) {
|
|
77
76
|
value[arrayIndex] = replaceInterpolatedValuesInObject(arrayItem, input, options, deleteValues);
|
|
78
77
|
}
|
|
79
|
-
else if (is_1.
|
|
78
|
+
else if ((0, is_1.isString)(arrayItem)) {
|
|
80
79
|
value[arrayIndex] = replaceInterpolatedValuesInString(key, arrayItem, input, options);
|
|
81
80
|
}
|
|
82
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpolator.js","sourceRoot":"","sources":["../../lib/util/interpolator.ts"],"names":[],"mappings":";;AAgBA,gEAkCC;AAuCD,8EAiDC
|
|
1
|
+
{"version":3,"file":"interpolator.js","sourceRoot":"","sources":["../../lib/util/interpolator.ts"],"names":[],"mappings":"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","sourcesContent":["import { isArray, isPlainObject, isString } from '@sindresorhus/is';\nimport type { RenovateConfig } from '../config/types';\nimport {\n CONFIG_SECRETS_INVALID,\n CONFIG_VALIDATION,\n CONFIG_VARIABLES_INVALID,\n} from '../constants/error-messages';\nimport { logger } from '../logger';\nimport { capitalize } from './string';\n\nexport interface InterpolatorOptions {\n name: 'secrets' | 'variables';\n templateRegex: RegExp;\n nameRegex: RegExp;\n}\n\nexport function validateInterpolatedValues(\n input: unknown,\n options: InterpolatorOptions,\n): void {\n if (!input) {\n return;\n }\n\n const { name, nameRegex } = options;\n\n const validationErrors: string[] = [];\n if (isPlainObject(input)) {\n for (const [key, value] of Object.entries(input)) {\n if (!nameRegex.test(key)) {\n validationErrors.push(`Invalid ${name} name \"${key}\"`);\n }\n if (!isString(value)) {\n validationErrors.push(\n `${capitalize(name)} values must be strings. Found type ${typeof value} for ${name} ${key}`,\n );\n }\n }\n } else {\n validationErrors.push(\n `Config ${name}s must be a plain object. Found: ${typeof input}`,\n );\n }\n\n if (validationErrors.length) {\n logger.error({ validationErrors }, `Invalid ${name}s configured`);\n throw new Error(\n name === 'secrets' ? CONFIG_SECRETS_INVALID : CONFIG_VARIABLES_INVALID,\n );\n }\n}\n\nfunction replaceInterpolatedValuesInString(\n key: string,\n value: string,\n input: Record<string, string>,\n options: InterpolatorOptions,\n): string {\n const { name, templateRegex } = options;\n // Reset regex lastIndex for global regexes to ensure consistent behavior\n templateRegex.lastIndex = 0;\n\n // do nothing if no interpolator template found\n if (!templateRegex.test(value)) {\n return value;\n }\n\n const disallowedPrefixes = ['branch', 'commit', 'group', 'pr', 'semantic'];\n if (disallowedPrefixes.some((prefix) => key.startsWith(prefix))) {\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = 'config';\n error.validationError = `Disallowed ${name} substitution`;\n error.validationMessage = `The field \\`${key}\\` may not use ${name} substitution`;\n throw error;\n }\n return value.replace(templateRegex, (_, key) => {\n if (input?.[key]) {\n return input[key];\n }\n const error = new Error(CONFIG_VALIDATION);\n error.validationSource = 'config';\n error.validationError = `Unknown ${name} name`;\n error.validationMessage = `The following ${name} name was not found in config: ${String(\n key,\n )}`;\n throw error;\n });\n}\n\nexport function replaceInterpolatedValuesInObject(\n config_: RenovateConfig,\n input: Record<string, string>,\n options: InterpolatorOptions,\n deleteValues = true,\n): RenovateConfig {\n const config = { ...config_ };\n const { name } = options;\n if (deleteValues) {\n delete config[name];\n }\n for (const [key, value] of Object.entries(config)) {\n if (isPlainObject(value)) {\n config[key] = replaceInterpolatedValuesInObject(\n value,\n input,\n options,\n deleteValues,\n );\n }\n if (isString(value)) {\n config[key] = replaceInterpolatedValuesInString(\n key,\n value,\n input,\n options,\n );\n }\n if (isArray(value)) {\n for (const [arrayIndex, arrayItem] of value.entries()) {\n if (isPlainObject(arrayItem)) {\n value[arrayIndex] = replaceInterpolatedValuesInObject(\n arrayItem,\n input,\n options,\n deleteValues,\n );\n } else if (isString(arrayItem)) {\n value[arrayIndex] = replaceInterpolatedValuesInString(\n key,\n arrayItem,\n input,\n options,\n );\n }\n }\n }\n }\n return config;\n}\n"]}
|
|
@@ -10,7 +10,7 @@ exports.getMergeConfidenceLevel = getMergeConfidenceLevel;
|
|
|
10
10
|
exports.initMergeConfidence = initMergeConfidence;
|
|
11
11
|
exports.getApiToken = getApiToken;
|
|
12
12
|
const tslib_1 = require("tslib");
|
|
13
|
-
const is_1 =
|
|
13
|
+
const is_1 = require("@sindresorhus/is");
|
|
14
14
|
const merge_confidence_1 = require("../../config/presets/internal/merge-confidence");
|
|
15
15
|
const logger_1 = require("../../logger");
|
|
16
16
|
const external_host_error_1 = require("../../types/errors/external-host-error");
|
|
@@ -37,7 +37,7 @@ function initConfig({ mergeConfidenceEndpoint, mergeConfidenceDatasources, }) {
|
|
|
37
37
|
token = getApiToken();
|
|
38
38
|
supportedDatasources =
|
|
39
39
|
mergeConfidenceDatasources ?? merge_confidence_1.supportedDatasources;
|
|
40
|
-
if (!is_1.
|
|
40
|
+
if (!(0, is_1.isNullOrUndefined)(token)) {
|
|
41
41
|
logger_1.logger.debug(`Merge confidence token found for ${apiBaseUrl}`);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
@@ -81,7 +81,7 @@ const updateTypeConfidenceMapping = {
|
|
|
81
81
|
* @throws {ExternalHostError} If a request has been made and an error occurs during the request, such as a timeout, connection reset, authentication failure, or internal server error.
|
|
82
82
|
*/
|
|
83
83
|
async function getMergeConfidenceLevel(datasource, packageName, currentVersion, newVersion, updateType) {
|
|
84
|
-
if (is_1.
|
|
84
|
+
if ((0, is_1.isNullOrUndefined)(apiBaseUrl) || (0, is_1.isNullOrUndefined)(token)) {
|
|
85
85
|
return undefined;
|
|
86
86
|
}
|
|
87
87
|
if (!supportedDatasources.includes(datasource)) {
|
|
@@ -112,7 +112,7 @@ async function getMergeConfidenceLevel(datasource, packageName, currentVersion,
|
|
|
112
112
|
*/
|
|
113
113
|
async function queryApi(datasource, packageName, currentVersion, newVersion) {
|
|
114
114
|
// istanbul ignore if: defensive, already been validated before calling this function
|
|
115
|
-
if (is_1.
|
|
115
|
+
if ((0, is_1.isNullOrUndefined)(apiBaseUrl) || (0, is_1.isNullOrUndefined)(token)) {
|
|
116
116
|
return 'neutral';
|
|
117
117
|
}
|
|
118
118
|
const escapedPackageName = packageName
|
|
@@ -161,7 +161,7 @@ async function queryApi(datasource, packageName, currentVersion, newVersion) {
|
|
|
161
161
|
*/
|
|
162
162
|
async function initMergeConfidence(config) {
|
|
163
163
|
initConfig(config);
|
|
164
|
-
if (is_1.
|
|
164
|
+
if ((0, is_1.isNullOrUndefined)(apiBaseUrl) || (0, is_1.isNullOrUndefined)(token)) {
|
|
165
165
|
logger_1.logger.trace('merge confidence API usage is disabled');
|
|
166
166
|
return;
|
|
167
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/util/merge-confidence/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { supportedDatasources as presetSupportedDatasources } from '../../config/presets/internal/merge-confidence';\nimport type { AllConfig, UpdateType } from '../../config/types';\nimport { logger } from '../../logger';\nimport { ExternalHostError } from '../../types/errors/external-host-error';\nimport * as packageCache from '../cache/package';\nimport * as hostRules from '../host-rules';\nimport { Http } from '../http';\nimport { memCacheProvider } from '../http/cache/memory-http-cache-provider';\nimport { regEx } from '../regex';\nimport { ensureTrailingSlash, joinUrlParts } from '../url';\nimport { MERGE_CONFIDENCE } from './common';\nimport type { MergeConfidence } from './types';\n\nconst hostType = 'merge-confidence';\nconst http = new Http(hostType);\nlet token: string | undefined;\nlet apiBaseUrl: string | undefined;\nlet supportedDatasources: string[] = [];\n\nexport const confidenceLevels: Record<MergeConfidence, number> = {\n low: -1,\n neutral: 0,\n high: 1,\n 'very high': 2,\n};\n\nexport function initConfig({\n mergeConfidenceEndpoint,\n mergeConfidenceDatasources,\n}: AllConfig): void {\n apiBaseUrl = getApiBaseUrl(mergeConfidenceEndpoint);\n token = getApiToken();\n\n supportedDatasources =\n mergeConfidenceDatasources ?? presetSupportedDatasources;\n\n if (!is.nullOrUndefined(token)) {\n logger.debug(`Merge confidence token found for ${apiBaseUrl}`);\n }\n}\n\nexport function resetConfig(): void {\n token = undefined;\n apiBaseUrl = undefined;\n supportedDatasources = [];\n}\n\nexport function isMergeConfidence(value: string): value is MergeConfidence {\n return MERGE_CONFIDENCE.includes(value as MergeConfidence);\n}\n\nexport function isActiveConfidenceLevel(confidence: string): boolean {\n return isMergeConfidence(confidence) && confidence !== 'low';\n}\n\nexport function satisfiesConfidenceLevel(\n confidence: MergeConfidence,\n minimumConfidence: MergeConfidence,\n): boolean {\n return confidenceLevels[confidence] >= confidenceLevels[minimumConfidence];\n}\n\nconst updateTypeConfidenceMapping: Record<UpdateType, MergeConfidence | null> =\n {\n pin: 'high',\n digest: 'neutral',\n pinDigest: 'high',\n bump: 'neutral',\n lockFileMaintenance: 'neutral',\n lockfileUpdate: 'neutral',\n rollback: 'neutral',\n replacement: 'neutral',\n major: null,\n minor: null,\n patch: null,\n };\n\n/**\n * Retrieves the merge confidence of a package update if the merge confidence API is enabled. Otherwise, undefined is returned.\n *\n * @param datasource\n * @param packageName\n * @param currentVersion\n * @param newVersion\n * @param updateType\n *\n * @returns The merge confidence level for the given package release.\n * @throws {ExternalHostError} If a request has been made and an error occurs during the request, such as a timeout, connection reset, authentication failure, or internal server error.\n */\nexport async function getMergeConfidenceLevel(\n datasource: string,\n packageName: string,\n currentVersion: string,\n newVersion: string,\n updateType: UpdateType,\n): Promise<MergeConfidence | undefined> {\n if (is.nullOrUndefined(apiBaseUrl) || is.nullOrUndefined(token)) {\n return undefined;\n }\n\n if (!supportedDatasources.includes(datasource)) {\n return undefined;\n }\n\n if (!(currentVersion && newVersion && updateType)) {\n return 'neutral';\n }\n\n const mappedConfidence = updateTypeConfidenceMapping[updateType];\n if (mappedConfidence) {\n return mappedConfidence;\n }\n\n return await queryApi(datasource, packageName, currentVersion, newVersion);\n}\n\n/**\n * Queries the Merge Confidence API with the given package release information.\n *\n * @param datasource\n * @param packageName\n * @param currentVersion\n * @param newVersion\n *\n * @returns The merge confidence level for the given package release.\n * @throws {ExternalHostError} if a timeout or connection reset error, authentication failure, or internal server error occurs during the request.\n *\n * @remarks\n * Results are cached for 60 minutes to reduce the number of API calls.\n */\nasync function queryApi(\n datasource: string,\n packageName: string,\n currentVersion: string,\n newVersion: string,\n): Promise<MergeConfidence> {\n // istanbul ignore if: defensive, already been validated before calling this function\n if (is.nullOrUndefined(apiBaseUrl) || is.nullOrUndefined(token)) {\n return 'neutral';\n }\n\n const escapedPackageName = packageName\n .replace(regEx(/\\//g), '%2f')\n .replace(regEx(/:/g), '%3A');\n const url = joinUrlParts(\n apiBaseUrl,\n 'api/mc/json',\n datasource,\n escapedPackageName,\n currentVersion,\n newVersion,\n );\n const cacheKey = `${token}:${url}`;\n const cachedResult = await packageCache.get(hostType, cacheKey);\n\n // istanbul ignore if\n if (cachedResult) {\n logger.debug(\n {\n datasource,\n packageName,\n currentVersion,\n newVersion,\n cachedResult,\n },\n 'using merge confidence cached result',\n );\n return cachedResult;\n }\n\n let confidence: MergeConfidence = 'neutral';\n try {\n const res = (\n await http.getJsonUnchecked<{ confidence: MergeConfidence }>(url, {\n cacheProvider: memCacheProvider,\n })\n ).body;\n if (isMergeConfidence(res.confidence)) {\n confidence = res.confidence;\n }\n } catch (err) {\n apiErrorHandler(err);\n }\n\n await packageCache.set(hostType, cacheKey, confidence, 60);\n return confidence;\n}\n\n/**\n * Checks the health of the Merge Confidence API by attempting to authenticate with it.\n *\n * @returns Resolves when the API health check is completed successfully.\n *\n * @throws {ExternalHostError} if a timeout, connection reset error, authentication failure, or internal server error occurs during the request.\n *\n * @remarks\n * This function first checks that the API base URL and an authentication bearer token are defined before attempting to\n * authenticate with the API. If either the base URL or token is not defined, it will immediately return\n * without making a request.\n */\nexport async function initMergeConfidence(config: AllConfig): Promise<void> {\n initConfig(config);\n\n if (is.nullOrUndefined(apiBaseUrl) || is.nullOrUndefined(token)) {\n logger.trace('merge confidence API usage is disabled');\n return;\n }\n\n const url = joinUrlParts(apiBaseUrl, 'api/mc/availability');\n try {\n await http.get(url);\n } catch (err) {\n apiErrorHandler(err);\n }\n\n logger.debug(\n { supportedDatasources },\n 'merge confidence API - successfully authenticated',\n );\n return;\n}\n\nfunction getApiBaseUrl(mergeConfidenceEndpoint: string | undefined): string {\n const defaultBaseUrl = 'https://developer.mend.io/';\n const baseFromEnv = mergeConfidenceEndpoint ?? defaultBaseUrl;\n\n try {\n const parsedBaseUrl = new URL(baseFromEnv).toString();\n logger.trace(\n { baseUrl: parsedBaseUrl },\n 'using merge confidence API base found in environment variables',\n );\n return ensureTrailingSlash(parsedBaseUrl);\n } catch (err) {\n logger.warn(\n { err, baseFromEnv },\n 'invalid merge confidence API base URL found in environment variables - using default value instead',\n );\n return defaultBaseUrl;\n }\n}\n\nexport function getApiToken(): string | undefined {\n return hostRules.find({\n url: apiBaseUrl,\n hostType,\n })?.token;\n}\n\n/**\n * Handles errors returned by the Merge Confidence API.\n *\n * @param err - The error object returned by the API.\n * @throws {ExternalHostError} if a timeout or connection reset error, authentication failure, or internal server error occurs during the request.\n */\nfunction apiErrorHandler(err: any): void {\n if (err.code === 'ETIMEDOUT' || err.code === 'ECONNRESET') {\n logger.error({ err }, 'merge confidence API request failed - aborting run');\n throw new ExternalHostError(err, hostType);\n }\n\n if (err.statusCode === 403) {\n logger.error({ err }, 'merge confidence API token rejected - aborting run');\n throw new ExternalHostError(err, hostType);\n }\n\n if (err.statusCode >= 500 && err.statusCode < 600) {\n logger.error({ err }, 'merge confidence API failure: 5xx - aborting run');\n throw new ExternalHostError(err, hostType);\n }\n\n logger.warn({ err }, 'error fetching merge confidence data');\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/util/merge-confidence/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNullOrUndefined } from '@sindresorhus/is';\nimport { supportedDatasources as presetSupportedDatasources } from '../../config/presets/internal/merge-confidence';\nimport type { AllConfig, UpdateType } from '../../config/types';\nimport { logger } from '../../logger';\nimport { ExternalHostError } from '../../types/errors/external-host-error';\nimport * as packageCache from '../cache/package';\nimport * as hostRules from '../host-rules';\nimport { Http } from '../http';\nimport { memCacheProvider } from '../http/cache/memory-http-cache-provider';\nimport { regEx } from '../regex';\nimport { ensureTrailingSlash, joinUrlParts } from '../url';\nimport { MERGE_CONFIDENCE } from './common';\nimport type { MergeConfidence } from './types';\n\nconst hostType = 'merge-confidence';\nconst http = new Http(hostType);\nlet token: string | undefined;\nlet apiBaseUrl: string | undefined;\nlet supportedDatasources: string[] = [];\n\nexport const confidenceLevels: Record<MergeConfidence, number> = {\n low: -1,\n neutral: 0,\n high: 1,\n 'very high': 2,\n};\n\nexport function initConfig({\n mergeConfidenceEndpoint,\n mergeConfidenceDatasources,\n}: AllConfig): void {\n apiBaseUrl = getApiBaseUrl(mergeConfidenceEndpoint);\n token = getApiToken();\n\n supportedDatasources =\n mergeConfidenceDatasources ?? presetSupportedDatasources;\n\n if (!isNullOrUndefined(token)) {\n logger.debug(`Merge confidence token found for ${apiBaseUrl}`);\n }\n}\n\nexport function resetConfig(): void {\n token = undefined;\n apiBaseUrl = undefined;\n supportedDatasources = [];\n}\n\nexport function isMergeConfidence(value: string): value is MergeConfidence {\n return MERGE_CONFIDENCE.includes(value as MergeConfidence);\n}\n\nexport function isActiveConfidenceLevel(confidence: string): boolean {\n return isMergeConfidence(confidence) && confidence !== 'low';\n}\n\nexport function satisfiesConfidenceLevel(\n confidence: MergeConfidence,\n minimumConfidence: MergeConfidence,\n): boolean {\n return confidenceLevels[confidence] >= confidenceLevels[minimumConfidence];\n}\n\nconst updateTypeConfidenceMapping: Record<UpdateType, MergeConfidence | null> =\n {\n pin: 'high',\n digest: 'neutral',\n pinDigest: 'high',\n bump: 'neutral',\n lockFileMaintenance: 'neutral',\n lockfileUpdate: 'neutral',\n rollback: 'neutral',\n replacement: 'neutral',\n major: null,\n minor: null,\n patch: null,\n };\n\n/**\n * Retrieves the merge confidence of a package update if the merge confidence API is enabled. Otherwise, undefined is returned.\n *\n * @param datasource\n * @param packageName\n * @param currentVersion\n * @param newVersion\n * @param updateType\n *\n * @returns The merge confidence level for the given package release.\n * @throws {ExternalHostError} If a request has been made and an error occurs during the request, such as a timeout, connection reset, authentication failure, or internal server error.\n */\nexport async function getMergeConfidenceLevel(\n datasource: string,\n packageName: string,\n currentVersion: string,\n newVersion: string,\n updateType: UpdateType,\n): Promise<MergeConfidence | undefined> {\n if (isNullOrUndefined(apiBaseUrl) || isNullOrUndefined(token)) {\n return undefined;\n }\n\n if (!supportedDatasources.includes(datasource)) {\n return undefined;\n }\n\n if (!(currentVersion && newVersion && updateType)) {\n return 'neutral';\n }\n\n const mappedConfidence = updateTypeConfidenceMapping[updateType];\n if (mappedConfidence) {\n return mappedConfidence;\n }\n\n return await queryApi(datasource, packageName, currentVersion, newVersion);\n}\n\n/**\n * Queries the Merge Confidence API with the given package release information.\n *\n * @param datasource\n * @param packageName\n * @param currentVersion\n * @param newVersion\n *\n * @returns The merge confidence level for the given package release.\n * @throws {ExternalHostError} if a timeout or connection reset error, authentication failure, or internal server error occurs during the request.\n *\n * @remarks\n * Results are cached for 60 minutes to reduce the number of API calls.\n */\nasync function queryApi(\n datasource: string,\n packageName: string,\n currentVersion: string,\n newVersion: string,\n): Promise<MergeConfidence> {\n // istanbul ignore if: defensive, already been validated before calling this function\n if (isNullOrUndefined(apiBaseUrl) || isNullOrUndefined(token)) {\n return 'neutral';\n }\n\n const escapedPackageName = packageName\n .replace(regEx(/\\//g), '%2f')\n .replace(regEx(/:/g), '%3A');\n const url = joinUrlParts(\n apiBaseUrl,\n 'api/mc/json',\n datasource,\n escapedPackageName,\n currentVersion,\n newVersion,\n );\n const cacheKey = `${token}:${url}`;\n const cachedResult = await packageCache.get(hostType, cacheKey);\n\n // istanbul ignore if\n if (cachedResult) {\n logger.debug(\n {\n datasource,\n packageName,\n currentVersion,\n newVersion,\n cachedResult,\n },\n 'using merge confidence cached result',\n );\n return cachedResult;\n }\n\n let confidence: MergeConfidence = 'neutral';\n try {\n const res = (\n await http.getJsonUnchecked<{ confidence: MergeConfidence }>(url, {\n cacheProvider: memCacheProvider,\n })\n ).body;\n if (isMergeConfidence(res.confidence)) {\n confidence = res.confidence;\n }\n } catch (err) {\n apiErrorHandler(err);\n }\n\n await packageCache.set(hostType, cacheKey, confidence, 60);\n return confidence;\n}\n\n/**\n * Checks the health of the Merge Confidence API by attempting to authenticate with it.\n *\n * @returns Resolves when the API health check is completed successfully.\n *\n * @throws {ExternalHostError} if a timeout, connection reset error, authentication failure, or internal server error occurs during the request.\n *\n * @remarks\n * This function first checks that the API base URL and an authentication bearer token are defined before attempting to\n * authenticate with the API. If either the base URL or token is not defined, it will immediately return\n * without making a request.\n */\nexport async function initMergeConfidence(config: AllConfig): Promise<void> {\n initConfig(config);\n\n if (isNullOrUndefined(apiBaseUrl) || isNullOrUndefined(token)) {\n logger.trace('merge confidence API usage is disabled');\n return;\n }\n\n const url = joinUrlParts(apiBaseUrl, 'api/mc/availability');\n try {\n await http.get(url);\n } catch (err) {\n apiErrorHandler(err);\n }\n\n logger.debug(\n { supportedDatasources },\n 'merge confidence API - successfully authenticated',\n );\n return;\n}\n\nfunction getApiBaseUrl(mergeConfidenceEndpoint: string | undefined): string {\n const defaultBaseUrl = 'https://developer.mend.io/';\n const baseFromEnv = mergeConfidenceEndpoint ?? defaultBaseUrl;\n\n try {\n const parsedBaseUrl = new URL(baseFromEnv).toString();\n logger.trace(\n { baseUrl: parsedBaseUrl },\n 'using merge confidence API base found in environment variables',\n );\n return ensureTrailingSlash(parsedBaseUrl);\n } catch (err) {\n logger.warn(\n { err, baseFromEnv },\n 'invalid merge confidence API base URL found in environment variables - using default value instead',\n );\n return defaultBaseUrl;\n }\n}\n\nexport function getApiToken(): string | undefined {\n return hostRules.find({\n url: apiBaseUrl,\n hostType,\n })?.token;\n}\n\n/**\n * Handles errors returned by the Merge Confidence API.\n *\n * @param err - The error object returned by the API.\n * @throws {ExternalHostError} if a timeout or connection reset error, authentication failure, or internal server error occurs during the request.\n */\nfunction apiErrorHandler(err: any): void {\n if (err.code === 'ETIMEDOUT' || err.code === 'ECONNRESET') {\n logger.error({ err }, 'merge confidence API request failed - aborting run');\n throw new ExternalHostError(err, hostType);\n }\n\n if (err.statusCode === 403) {\n logger.error({ err }, 'merge confidence API token rejected - aborting run');\n throw new ExternalHostError(err, hostType);\n }\n\n if (err.statusCode >= 500 && err.statusCode < 600) {\n logger.error({ err }, 'merge confidence API failure: 5xx - aborting run');\n throw new ExternalHostError(err, hostType);\n }\n\n logger.warn({ err }, 'error fetching merge confidence data');\n}\n"]}
|
package/dist/util/number.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.coerceNumber = coerceNumber;
|
|
4
4
|
exports.parseInteger = parseInteger;
|
|
5
|
-
const
|
|
6
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
7
6
|
/**
|
|
8
7
|
* Coerces a value to a number with optional default value.
|
|
9
8
|
* @param val the value to coerce
|
|
@@ -22,7 +21,7 @@ function coerceNumber(val, def) {
|
|
|
22
21
|
*/
|
|
23
22
|
function parseInteger(val, def) {
|
|
24
23
|
// Number.parseInt returns NaN if the value is not a finite integer.
|
|
25
|
-
const parsed = is_1.
|
|
24
|
+
const parsed = (0, is_1.isString)(val) && /^\d+$/.test(val) ? Number.parseInt(val) : Number.NaN;
|
|
26
25
|
return Number.isFinite(parsed) ? parsed : (def ?? 0);
|
|
27
26
|
}
|
|
28
27
|
//# sourceMappingURL=number.js.map
|
package/dist/util/number.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../lib/util/number.ts"],"names":[],"mappings":";;AAQA,oCAKC;AASD,oCAQC
|
|
1
|
+
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../lib/util/number.ts"],"names":[],"mappings":";;AAQA,oCAKC;AASD,oCAQC;AA9BD,yCAA4C;AAE5C;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,GAA8B,EAC9B,GAAY;IAEZ,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,GAA8B,EAC9B,GAAY;IAEZ,oEAAoE;IACpE,MAAM,MAAM,GACV,IAAA,aAAQ,EAAC,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IACzE,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC","sourcesContent":["import { isString } from '@sindresorhus/is';\n\n/**\n * Coerces a value to a number with optional default value.\n * @param val the value to coerce\n * @param def default value\n * @returns cocerced value\n */\nexport function coerceNumber(\n val: number | null | undefined,\n def?: number,\n): number {\n return val ?? def ?? 0;\n}\n\n/**\n * Parses a value as a finite positive integer with optional default value.\n * If no default value is provided, the default value is 0.\n * @param val Value to parse as finite integer.\n * @param def Optional default value.\n * @returns The parsed value or the default value if the parsed value is not finite.\n */\nexport function parseInteger(\n val: string | undefined | null,\n def?: number,\n): number {\n // Number.parseInt returns NaN if the value is not a finite integer.\n const parsed =\n isString(val) && /^\\d+$/.test(val) ? Number.parseInt(val) : Number.NaN;\n return Number.isFinite(parsed) ? parsed : (def ?? 0);\n}\n"]}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseBranchesMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const string_match_1 = require("../string-match");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class BaseBranchesMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ baseBranch }, { matchBaseBranches }) {
|
|
10
|
-
if (is_1.
|
|
9
|
+
if ((0, is_1.isUndefined)(matchBaseBranches)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
|
-
if (is_1.
|
|
12
|
+
if ((0, is_1.isUndefined)(baseBranch)) {
|
|
14
13
|
return false;
|
|
15
14
|
}
|
|
16
15
|
return (0, string_match_1.matchRegexOrGlobList)(baseBranch, matchBaseBranches);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-branches.js","sourceRoot":"","sources":["../../../lib/util/package-rules/base-branches.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"base-branches.js","sourceRoot":"","sources":["../../../lib/util/package-rules/base-branches.ts"],"names":[],"mappings":";;;AAAA,yCAA+C;AAE/C,kDAAuD;AACvD,iCAAiC;AAEjC,MAAa,mBAAoB,SAAQ,cAAO;IACrC,OAAO,CACd,EAAE,UAAU,EAA0B,EACtC,EAAE,iBAAiB,EAAe;QAElC,IAAI,IAAA,gBAAW,EAAC,iBAAiB,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAA,gBAAW,EAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAA,mCAAoB,EAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IAC7D,CAAC;CACF;AAfD,kDAeC","sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { matchRegexOrGlobList } from '../string-match';\nimport { Matcher } from './base';\n\nexport class BaseBranchesMatcher extends Matcher {\n override matches(\n { baseBranch }: PackageRuleInputConfig,\n { matchBaseBranches }: PackageRule,\n ): boolean | null {\n if (isUndefined(matchBaseBranches)) {\n return null;\n }\n\n if (isUndefined(baseBranch)) {\n return false;\n }\n\n return matchRegexOrGlobList(baseBranch, matchBaseBranches);\n }\n}\n"]}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CategoriesMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const string_match_1 = require("../string-match");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class CategoriesMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ categories }, { matchCategories }) {
|
|
10
|
-
if (is_1.
|
|
9
|
+
if ((0, is_1.isNullOrUndefined)(matchCategories)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
|
-
if (is_1.
|
|
12
|
+
if ((0, is_1.isNullOrUndefined)(categories)) {
|
|
14
13
|
return false;
|
|
15
14
|
}
|
|
16
15
|
return (0, string_match_1.anyMatchRegexOrGlobList)(categories, matchCategories);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"categories.js","sourceRoot":"","sources":["../../../lib/util/package-rules/categories.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"categories.js","sourceRoot":"","sources":["../../../lib/util/package-rules/categories.ts"],"names":[],"mappings":";;;AAAA,yCAAqD;AAErD,kDAA0D;AAC1D,iCAAiC;AAEjC,MAAa,iBAAkB,SAAQ,cAAO;IACnC,OAAO,CACd,EAAE,UAAU,EAA0B,EACtC,EAAE,eAAe,EAAe;QAEhC,IAAI,IAAA,sBAAiB,EAAC,eAAe,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAA,sBAAiB,EAAC,UAAU,CAAC,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAA,sCAAuB,EAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAC9D,CAAC;CACF;AAfD,8CAeC","sourcesContent":["import { isNullOrUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { anyMatchRegexOrGlobList } from '../string-match';\nimport { Matcher } from './base';\n\nexport class CategoriesMatcher extends Matcher {\n override matches(\n { categories }: PackageRuleInputConfig,\n { matchCategories }: PackageRule,\n ): boolean | null {\n if (isNullOrUndefined(matchCategories)) {\n return null;\n }\n\n if (isNullOrUndefined(categories)) {\n return false;\n }\n\n return anyMatchRegexOrGlobList(categories, matchCategories);\n }\n}\n"]}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CurrentAgeMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const pretty_time_1 = require("../pretty-time");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class CurrentAgeMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ currentVersionTimestamp }, { matchCurrentAge }) {
|
|
10
|
-
if (!is_1.
|
|
9
|
+
if (!(0, is_1.isString)(matchCurrentAge)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
|
-
if (!is_1.
|
|
12
|
+
if (!(0, is_1.isString)(currentVersionTimestamp)) {
|
|
14
13
|
return false;
|
|
15
14
|
}
|
|
16
15
|
return (0, pretty_time_1.satisfiesDateRange)(currentVersionTimestamp, matchCurrentAge);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"current-age.js","sourceRoot":"","sources":["../../../lib/util/package-rules/current-age.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"current-age.js","sourceRoot":"","sources":["../../../lib/util/package-rules/current-age.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAE5C,gDAAoD;AACpD,iCAAiC;AAEjC,MAAa,iBAAkB,SAAQ,cAAO;IACnC,OAAO,CACd,EAAE,uBAAuB,EAA0B,EACnD,EAAE,eAAe,EAAe;QAEhC,IAAI,CAAC,IAAA,aAAQ,EAAC,eAAe,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAA,aAAQ,EAAC,uBAAuB,CAAC,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAA,gCAAkB,EAAC,uBAAuB,EAAE,eAAe,CAAC,CAAC;IACtE,CAAC;CACF;AAfD,8CAeC","sourcesContent":["import { isString } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { satisfiesDateRange } from '../pretty-time';\nimport { Matcher } from './base';\n\nexport class CurrentAgeMatcher extends Matcher {\n override matches(\n { currentVersionTimestamp }: PackageRuleInputConfig,\n { matchCurrentAge }: PackageRule,\n ): boolean | null {\n if (!isString(matchCurrentAge)) {\n return null;\n }\n\n if (!isString(currentVersionTimestamp)) {\n return false;\n }\n\n return satisfiesDateRange(currentVersionTimestamp, matchCurrentAge);\n }\n}\n"]}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CurrentValueMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const string_match_1 = require("../string-match");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class CurrentValueMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ currentValue }, { matchCurrentValue }) {
|
|
10
|
-
if (is_1.
|
|
9
|
+
if ((0, is_1.isUndefined)(matchCurrentValue)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
12
|
const matchCurrentValuePred = (0, string_match_1.getRegexOrGlobPredicate)(matchCurrentValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"current-value.js","sourceRoot":"","sources":["../../../lib/util/package-rules/current-value.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"current-value.js","sourceRoot":"","sources":["../../../lib/util/package-rules/current-value.ts"],"names":[],"mappings":";;;AAAA,yCAA+C;AAE/C,kDAA0D;AAC1D,iCAAiC;AAEjC,MAAa,mBAAoB,SAAQ,cAAO;IACrC,OAAO,CACd,EAAE,YAAY,EAA0B,EACxC,EAAE,iBAAiB,EAAe;QAElC,IAAI,IAAA,gBAAW,EAAC,iBAAiB,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,qBAAqB,GAAG,IAAA,sCAAuB,EAAC,iBAAiB,CAAC,CAAC;QAEzE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;CACF;AAhBD,kDAgBC","sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { getRegexOrGlobPredicate } from '../string-match';\nimport { Matcher } from './base';\n\nexport class CurrentValueMatcher extends Matcher {\n override matches(\n { currentValue }: PackageRuleInputConfig,\n { matchCurrentValue }: PackageRule,\n ): boolean | null {\n if (isUndefined(matchCurrentValue)) {\n return null;\n }\n const matchCurrentValuePred = getRegexOrGlobPredicate(matchCurrentValue);\n\n if (!currentValue) {\n return false;\n }\n\n return matchCurrentValuePred(currentValue);\n }\n}\n"]}
|
|
@@ -2,23 +2,23 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CurrentVersionMatcher = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const is_1 =
|
|
5
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
6
|
const logger_1 = require("../../logger");
|
|
7
7
|
const allVersioning = tslib_1.__importStar(require("../../modules/versioning"));
|
|
8
8
|
const string_match_1 = require("../string-match");
|
|
9
9
|
const base_1 = require("./base");
|
|
10
10
|
class CurrentVersionMatcher extends base_1.Matcher {
|
|
11
11
|
matches({ versioning, lockedVersion, currentValue, currentVersion, }, { matchCurrentVersion }) {
|
|
12
|
-
if (is_1.
|
|
12
|
+
if ((0, is_1.isUndefined)(matchCurrentVersion)) {
|
|
13
13
|
return null;
|
|
14
14
|
}
|
|
15
|
-
const isUnconstrainedValue = !!lockedVersion && is_1.
|
|
15
|
+
const isUnconstrainedValue = !!lockedVersion && (0, is_1.isNullOrUndefined)(currentValue);
|
|
16
16
|
const versioningApi = allVersioning.get(versioning);
|
|
17
17
|
const matchCurrentVersionStr = matchCurrentVersion.toString();
|
|
18
18
|
const matchCurrentVersionPred = (0, string_match_1.getRegexPredicate)(matchCurrentVersionStr);
|
|
19
19
|
if (matchCurrentVersionPred) {
|
|
20
20
|
const compareVersion = lockedVersion ?? currentVersion ?? currentValue;
|
|
21
|
-
return (!is_1.
|
|
21
|
+
return (!(0, is_1.isNullOrUndefined)(compareVersion) &&
|
|
22
22
|
matchCurrentVersionPred(compareVersion));
|
|
23
23
|
}
|
|
24
24
|
if (versioningApi.isVersion(matchCurrentVersionStr)) {
|
|
@@ -35,7 +35,7 @@ class CurrentVersionMatcher extends base_1.Matcher {
|
|
|
35
35
|
const compareVersion = versioningApi.isVersion(currentValue)
|
|
36
36
|
? currentValue // it's a version so we can match against it
|
|
37
37
|
: (lockedVersion ?? currentVersion); // need to match against this currentVersion, if available
|
|
38
|
-
if (is_1.
|
|
38
|
+
if ((0, is_1.isNullOrUndefined)(compareVersion)) {
|
|
39
39
|
return false;
|
|
40
40
|
}
|
|
41
41
|
if (versioningApi.isVersion(compareVersion)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"current-version.js","sourceRoot":"","sources":["../../../lib/util/package-rules/current-version.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"current-version.js","sourceRoot":"","sources":["../../../lib/util/package-rules/current-version.ts"],"names":[],"mappings":";;;;AAAA,yCAAkE;AAElE,yCAAsC;AACtC,gFAA0D;AAC1D,kDAAoD;AACpD,iCAAiC;AAEjC,MAAa,qBAAsB,SAAQ,cAAO;IACvC,OAAO,CACd,EACE,UAAU,EACV,aAAa,EACb,YAAY,EACZ,cAAc,GACS,EACzB,EAAE,mBAAmB,EAAe;QAEpC,IAAI,IAAA,gBAAW,EAAC,mBAAmB,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,oBAAoB,GACxB,CAAC,CAAC,aAAa,IAAI,IAAA,sBAAiB,EAAC,YAAY,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QAC9D,MAAM,uBAAuB,GAAG,IAAA,gCAAiB,EAAC,sBAAsB,CAAC,CAAC;QAE1E,IAAI,uBAAuB,EAAE,CAAC;YAC5B,MAAM,cAAc,GAAG,aAAa,IAAI,cAAc,IAAI,YAAY,CAAC;YACvE,OAAO,CACL,CAAC,IAAA,sBAAiB,EAAC,cAAc,CAAC;gBAClC,uBAAuB,CAAC,cAAc,CAAC,CACxC,CAAC;QACJ,CAAC;QACD,IAAI,aAAa,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC;gBACH,OAAO,CACL,oBAAoB;oBACpB,CAAC,CAAC,CACA,YAAY;wBACZ,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;wBACnC,aAAa,CAAC,OAAO,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAC5D,CACF,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC;YAC1D,CAAC,CAAC,YAAY,CAAC,4CAA4C;YAC3D,CAAC,CAAC,CAAC,aAAa,IAAI,cAAc,CAAC,CAAC,CAAC,0DAA0D;QACjG,IAAI,IAAA,sBAAiB,EAAC,cAAc,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,aAAa,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5C,OAAO,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QACpE,CAAC;QACD,eAAM,CAAC,KAAK,CACV,EAAE,sBAAsB,EAAE,YAAY,EAAE,EACxC,qCAAqC,CACtC,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAxDD,sDAwDC","sourcesContent":["import { isNullOrUndefined, isUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { logger } from '../../logger';\nimport * as allVersioning from '../../modules/versioning';\nimport { getRegexPredicate } from '../string-match';\nimport { Matcher } from './base';\n\nexport class CurrentVersionMatcher extends Matcher {\n override matches(\n {\n versioning,\n lockedVersion,\n currentValue,\n currentVersion,\n }: PackageRuleInputConfig,\n { matchCurrentVersion }: PackageRule,\n ): boolean | null {\n if (isUndefined(matchCurrentVersion)) {\n return null;\n }\n const isUnconstrainedValue =\n !!lockedVersion && isNullOrUndefined(currentValue);\n const versioningApi = allVersioning.get(versioning);\n const matchCurrentVersionStr = matchCurrentVersion.toString();\n const matchCurrentVersionPred = getRegexPredicate(matchCurrentVersionStr);\n\n if (matchCurrentVersionPred) {\n const compareVersion = lockedVersion ?? currentVersion ?? currentValue;\n return (\n !isNullOrUndefined(compareVersion) &&\n matchCurrentVersionPred(compareVersion)\n );\n }\n if (versioningApi.isVersion(matchCurrentVersionStr)) {\n try {\n return (\n isUnconstrainedValue ||\n !!(\n currentValue &&\n versioningApi.isValid(currentValue) &&\n versioningApi.matches(matchCurrentVersionStr, currentValue)\n )\n );\n } catch {\n return false;\n }\n }\n\n const compareVersion = versioningApi.isVersion(currentValue)\n ? currentValue // it's a version so we can match against it\n : (lockedVersion ?? currentVersion); // need to match against this currentVersion, if available\n if (isNullOrUndefined(compareVersion)) {\n return false;\n }\n if (versioningApi.isVersion(compareVersion)) {\n return versioningApi.matches(compareVersion, matchCurrentVersion);\n }\n logger.debug(\n { matchCurrentVersionStr, currentValue },\n 'Could not find a version to compare',\n );\n return false;\n }\n}\n"]}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DatasourcesMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const string_match_1 = require("../string-match");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class DatasourcesMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ datasource }, { matchDatasources }) {
|
|
10
|
-
if (is_1.
|
|
9
|
+
if ((0, is_1.isUndefined)(matchDatasources)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
|
-
if (is_1.
|
|
12
|
+
if ((0, is_1.isUndefined)(datasource)) {
|
|
14
13
|
return false;
|
|
15
14
|
}
|
|
16
15
|
return (0, string_match_1.matchRegexOrGlobList)(datasource, matchDatasources);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasources.js","sourceRoot":"","sources":["../../../lib/util/package-rules/datasources.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"datasources.js","sourceRoot":"","sources":["../../../lib/util/package-rules/datasources.ts"],"names":[],"mappings":";;;AAAA,yCAA+C;AAE/C,kDAAuD;AACvD,iCAAiC;AAEjC,MAAa,kBAAmB,SAAQ,cAAO;IACpC,OAAO,CACd,EAAE,UAAU,EAA0B,EACtC,EAAE,gBAAgB,EAAe;QAEjC,IAAI,IAAA,gBAAW,EAAC,gBAAgB,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,IAAA,gBAAW,EAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAA,mCAAoB,EAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAC5D,CAAC;CACF;AAbD,gDAaC","sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { matchRegexOrGlobList } from '../string-match';\nimport { Matcher } from './base';\n\nexport class DatasourcesMatcher extends Matcher {\n override matches(\n { datasource }: PackageRuleInputConfig,\n { matchDatasources }: PackageRule,\n ): boolean | null {\n if (isUndefined(matchDatasources)) {\n return null;\n }\n if (isUndefined(datasource)) {\n return false;\n }\n return matchRegexOrGlobList(datasource, matchDatasources);\n }\n}\n"]}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DepNameMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const string_match_1 = require("../string-match");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class DepNameMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ depName }, { matchDepNames }) {
|
|
10
|
-
if (is_1.
|
|
9
|
+
if ((0, is_1.isUndefined)(matchDepNames)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
|
-
if (is_1.
|
|
12
|
+
if ((0, is_1.isUndefined)(depName)) {
|
|
14
13
|
return false;
|
|
15
14
|
}
|
|
16
15
|
return (0, string_match_1.matchRegexOrGlobList)(depName, matchDepNames);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dep-names.js","sourceRoot":"","sources":["../../../lib/util/package-rules/dep-names.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dep-names.js","sourceRoot":"","sources":["../../../lib/util/package-rules/dep-names.ts"],"names":[],"mappings":";;;AAAA,yCAA+C;AAE/C,kDAAuD;AACvD,iCAAiC;AAEjC,MAAa,cAAe,SAAQ,cAAO;IAChC,OAAO,CACd,EAAE,OAAO,EAA0B,EACnC,EAAE,aAAa,EAAe;QAE9B,IAAI,IAAA,gBAAW,EAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,IAAA,gBAAW,EAAC,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAA,mCAAoB,EAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC;CACF;AAbD,wCAaC","sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { matchRegexOrGlobList } from '../string-match';\nimport { Matcher } from './base';\n\nexport class DepNameMatcher extends Matcher {\n override matches(\n { depName }: PackageRuleInputConfig,\n { matchDepNames }: PackageRule,\n ): boolean | null {\n if (isUndefined(matchDepNames)) {\n return null;\n }\n if (isUndefined(depName)) {\n return false;\n }\n return matchRegexOrGlobList(depName, matchDepNames);\n }\n}\n"]}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DepTypesMatcher = void 0;
|
|
4
|
-
const
|
|
5
|
-
const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
|
|
4
|
+
const is_1 = require("@sindresorhus/is");
|
|
6
5
|
const string_match_1 = require("../string-match");
|
|
7
6
|
const base_1 = require("./base");
|
|
8
7
|
class DepTypesMatcher extends base_1.Matcher {
|
|
9
8
|
matches({ depTypes, depType }, { matchDepTypes }) {
|
|
10
|
-
if (is_1.
|
|
9
|
+
if ((0, is_1.isUndefined)(matchDepTypes)) {
|
|
11
10
|
return null;
|
|
12
11
|
}
|
|
13
12
|
if (depType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dep-types.js","sourceRoot":"","sources":["../../../lib/util/package-rules/dep-types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dep-types.js","sourceRoot":"","sources":["../../../lib/util/package-rules/dep-types.ts"],"names":[],"mappings":";;;AAAA,yCAA+C;AAE/C,kDAAgF;AAChF,iCAAiC;AAEjC,MAAa,eAAgB,SAAQ,cAAO;IACjC,OAAO,CACd,EAAE,QAAQ,EAAE,OAAO,EAA0B,EAC7C,EAAE,aAAa,EAAe;QAE9B,IAAI,IAAA,gBAAW,EAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAA,mCAAoB,EAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAA,sCAAuB,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAnBD,0CAmBC","sourcesContent":["import { isUndefined } from '@sindresorhus/is';\nimport type { PackageRule, PackageRuleInputConfig } from '../../config/types';\nimport { anyMatchRegexOrGlobList, matchRegexOrGlobList } from '../string-match';\nimport { Matcher } from './base';\n\nexport class DepTypesMatcher extends Matcher {\n override matches(\n { depTypes, depType }: PackageRuleInputConfig,\n { matchDepTypes }: PackageRule,\n ): boolean | null {\n if (isUndefined(matchDepTypes)) {\n return null;\n }\n\n if (depType) {\n return matchRegexOrGlobList(depType, matchDepTypes);\n }\n\n if (depTypes) {\n return anyMatchRegexOrGlobList(depTypes, matchDepTypes);\n }\n\n return false;\n }\n}\n"]}
|