renovate 41.0.0-next.22 → 41.0.0-next.23
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 +5 -3
- package/dist/config/decrypt.js.map +1 -1
- package/dist/config/options/index.js +45 -3
- package/dist/config/options/index.js.map +1 -1
- package/dist/config/presets/github/index.js +2 -2
- package/dist/config/presets/github/index.js.map +1 -1
- package/dist/config/presets/internal/group.js +21 -0
- package/dist/config/presets/internal/group.js.map +1 -1
- package/dist/config/presets/internal/workarounds.js +11 -0
- package/dist/config/presets/internal/workarounds.js.map +1 -1
- package/dist/config/secrets.d.ts +2 -0
- package/dist/config/secrets.js +10 -77
- package/dist/config/secrets.js.map +1 -1
- package/dist/config/types.d.ts +9 -1
- package/dist/config/types.js.map +1 -1
- package/dist/config-validator.js +4 -2
- package/dist/config-validator.js.map +1 -1
- package/dist/data/monorepo.json +10 -1
- package/dist/data-files.generated.d.ts +1 -1
- package/dist/data-files.generated.js +2 -1
- package/dist/data-files.generated.js.map +1 -1
- package/dist/instrumentation/index.js +5 -3
- package/dist/instrumentation/index.js.map +1 -1
- package/dist/instrumentation/reporting.d.ts +2 -2
- package/dist/instrumentation/reporting.js +3 -7
- package/dist/instrumentation/reporting.js.map +1 -1
- package/dist/instrumentation/types.d.ts +11 -5
- package/dist/instrumentation/types.js.map +1 -1
- package/dist/instrumentation/utils.js +3 -2
- package/dist/instrumentation/utils.js.map +1 -1
- package/dist/logger/once.js +2 -0
- package/dist/logger/once.js.map +1 -1
- package/dist/modules/datasource/aws-eks-addon/schema.d.ts +14 -38
- package/dist/modules/datasource/aws-eks-addon/schema.js +11 -22
- package/dist/modules/datasource/aws-eks-addon/schema.js.map +1 -1
- package/dist/modules/datasource/cdnjs/index.js +2 -1
- package/dist/modules/datasource/cdnjs/index.js.map +1 -1
- package/dist/modules/datasource/crate/index.js +7 -2
- package/dist/modules/datasource/crate/index.js.map +1 -1
- package/dist/modules/datasource/docker/ecr.js +2 -2
- package/dist/modules/datasource/docker/ecr.js.map +1 -1
- package/dist/modules/datasource/docker/index.js +26 -9
- package/dist/modules/datasource/docker/index.js.map +1 -1
- package/dist/modules/datasource/docker/schema.d.ts +9 -87
- package/dist/modules/datasource/docker/schema.js +1 -1
- package/dist/modules/datasource/docker/schema.js.map +1 -1
- package/dist/modules/datasource/git-refs/base.js +2 -6
- package/dist/modules/datasource/git-refs/base.js.map +1 -1
- package/dist/modules/datasource/go/goproxy-parser.js +6 -2
- package/dist/modules/datasource/go/goproxy-parser.js.map +1 -1
- package/dist/modules/datasource/go/index.js +4 -2
- package/dist/modules/datasource/go/index.js.map +1 -1
- package/dist/modules/datasource/go/releases-goproxy.js +3 -2
- package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
- package/dist/modules/datasource/index.js +1 -1
- package/dist/modules/datasource/index.js.map +1 -1
- package/dist/modules/datasource/maven/index.js +5 -19
- package/dist/modules/datasource/maven/index.js.map +1 -1
- package/dist/modules/datasource/maven/util.js +8 -1
- package/dist/modules/datasource/maven/util.js.map +1 -1
- package/dist/modules/datasource/npm/get.js +2 -1
- package/dist/modules/datasource/npm/get.js.map +1 -1
- package/dist/modules/datasource/npm/npmrc.js +2 -1
- package/dist/modules/datasource/npm/npmrc.js.map +1 -1
- package/dist/modules/datasource/nuget/v3.js +3 -2
- package/dist/modules/datasource/nuget/v3.js.map +1 -1
- package/dist/modules/datasource/pod/index.js +3 -1
- package/dist/modules/datasource/pod/index.js.map +1 -1
- package/dist/modules/datasource/pypi/index.js +2 -1
- package/dist/modules/datasource/pypi/index.js.map +1 -1
- package/dist/modules/datasource/types.d.ts +2 -1
- package/dist/modules/datasource/types.js.map +1 -1
- package/dist/modules/manager/asdf/upgradeable-tooling.js +8 -0
- package/dist/modules/manager/asdf/upgradeable-tooling.js.map +1 -1
- package/dist/modules/manager/bazel/rules/git.d.ts +7 -7
- package/dist/modules/manager/bazel/rules/git.js +6 -1
- package/dist/modules/manager/bazel/rules/git.js.map +1 -1
- package/dist/modules/manager/bazel-module/bazelrc.d.ts +2 -0
- package/dist/modules/manager/bazel-module/bazelrc.js +30 -1
- package/dist/modules/manager/bazel-module/bazelrc.js.map +1 -1
- package/dist/modules/manager/bazel-module/parser/rules.js +1 -0
- package/dist/modules/manager/bazel-module/parser/rules.js.map +1 -1
- package/dist/modules/manager/bazel-module/rules.d.ts +62 -24
- package/dist/modules/manager/bazel-module/rules.js +10 -4
- package/dist/modules/manager/bazel-module/rules.js.map +1 -1
- package/dist/modules/manager/cargo/extract.js +2 -1
- package/dist/modules/manager/cargo/extract.js.map +1 -1
- package/dist/modules/manager/composer/schema.js +1 -1
- package/dist/modules/manager/composer/schema.js.map +1 -1
- package/dist/modules/manager/docker-compose/extract.js +2 -0
- package/dist/modules/manager/docker-compose/extract.js.map +1 -1
- package/dist/modules/manager/docker-compose/schema.d.ts +120 -9
- package/dist/modules/manager/docker-compose/schema.js +35 -4
- package/dist/modules/manager/docker-compose/schema.js.map +1 -1
- package/dist/modules/manager/fingerprint.generated.js +19 -19
- package/dist/modules/manager/fingerprint.generated.js.map +1 -1
- package/dist/modules/manager/fleet/extract.js +2 -2
- package/dist/modules/manager/fleet/extract.js.map +1 -1
- package/dist/modules/manager/fleet/schema.d.ts +5 -5
- package/dist/modules/manager/fleet/schema.js +1 -1
- package/dist/modules/manager/fleet/schema.js.map +1 -1
- package/dist/modules/manager/flux/extract.js +1 -1
- package/dist/modules/manager/flux/extract.js.map +1 -1
- package/dist/modules/manager/git-submodules/extract.js +2 -6
- package/dist/modules/manager/git-submodules/extract.js.map +1 -1
- package/dist/modules/manager/git-submodules/update.js +3 -7
- package/dist/modules/manager/git-submodules/update.js.map +1 -1
- package/dist/modules/manager/github-actions/extract.js +1 -1
- package/dist/modules/manager/github-actions/extract.js.map +1 -1
- package/dist/modules/manager/gleam/artifacts.js +5 -1
- package/dist/modules/manager/gleam/artifacts.js.map +1 -1
- package/dist/modules/manager/gomod/artifacts.js +8 -6
- package/dist/modules/manager/gomod/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/extract.js +4 -1
- package/dist/modules/manager/gradle/extract.js.map +1 -1
- package/dist/modules/manager/gradle/utils.js +8 -14
- package/dist/modules/manager/gradle/utils.js.map +1 -1
- package/dist/modules/manager/helmfile/utils.js +1 -1
- package/dist/modules/manager/helmfile/utils.js.map +1 -1
- package/dist/modules/manager/helmv3/artifacts.js +8 -2
- package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
- package/dist/modules/manager/helmv3/common.d.ts +1 -1
- package/dist/modules/manager/helmv3/common.js +9 -3
- package/dist/modules/manager/helmv3/common.js.map +1 -1
- package/dist/modules/manager/hermit/artifacts.js +2 -2
- package/dist/modules/manager/hermit/artifacts.js.map +1 -1
- package/dist/modules/manager/kubernetes/extract.js +2 -2
- package/dist/modules/manager/kubernetes/extract.js.map +1 -1
- package/dist/modules/manager/kustomize/artifacts.js +1 -1
- package/dist/modules/manager/kustomize/artifacts.js.map +1 -1
- package/dist/modules/manager/maven/extract.d.ts +1 -1
- package/dist/modules/manager/maven/extract.js +82 -24
- package/dist/modules/manager/maven/extract.js.map +1 -1
- package/dist/modules/manager/maven/index.d.ts +0 -1
- package/dist/modules/manager/maven/index.js +2 -4
- package/dist/modules/manager/maven/index.js.map +1 -1
- package/dist/modules/manager/maven/update.js +15 -0
- package/dist/modules/manager/maven/update.js.map +1 -1
- package/dist/modules/manager/mise/backends.d.ts +48 -0
- package/dist/modules/manager/mise/backends.js +219 -0
- package/dist/modules/manager/mise/backends.js.map +1 -0
- package/dist/modules/manager/mise/extract.js +77 -10
- package/dist/modules/manager/mise/extract.js.map +1 -1
- package/dist/modules/manager/mise/index.js +37 -2
- package/dist/modules/manager/mise/index.js.map +1 -1
- package/dist/modules/manager/mise/schema.d.ts +24 -0
- package/dist/modules/manager/mise/schema.js +7 -1
- package/dist/modules/manager/mise/schema.js.map +1 -1
- package/dist/modules/manager/mise/upgradeable-tooling.js +210 -1
- package/dist/modules/manager/mise/upgradeable-tooling.js.map +1 -1
- package/dist/modules/manager/mix/artifacts.js +5 -0
- package/dist/modules/manager/mix/artifacts.js.map +1 -1
- package/dist/modules/manager/npm/extract/index.js +27 -24
- package/dist/modules/manager/npm/extract/index.js.map +1 -1
- package/dist/modules/manager/npm/post-update/index.js +9 -3
- package/dist/modules/manager/npm/post-update/index.js.map +1 -1
- package/dist/modules/manager/npm/post-update/npm.js +8 -5
- package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/pnpm.js +4 -0
- package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
- package/dist/modules/manager/npm/post-update/utils.js +17 -0
- package/dist/modules/manager/npm/post-update/utils.js.map +1 -1
- package/dist/modules/manager/npm/post-update/yarn.js +7 -5
- package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
- package/dist/modules/manager/npm/schema.d.ts +116 -0
- package/dist/modules/manager/npm/schema.js +9 -0
- package/dist/modules/manager/npm/schema.js.map +1 -1
- package/dist/modules/manager/npm/utils.js +1 -1
- package/dist/modules/manager/npm/utils.js.map +1 -1
- package/dist/modules/manager/nuget/util.js +9 -0
- package/dist/modules/manager/nuget/util.js.map +1 -1
- package/dist/modules/manager/pep621/processors/uv.js +1 -1
- package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
- package/dist/modules/manager/pip-compile/artifacts.js +6 -4
- package/dist/modules/manager/pip-compile/artifacts.js.map +1 -1
- package/dist/modules/manager/pip_requirements/common.js +2 -1
- package/dist/modules/manager/pip_requirements/common.js.map +1 -1
- package/dist/modules/manager/poetry/schema.js +2 -1
- package/dist/modules/manager/poetry/schema.js.map +1 -1
- package/dist/modules/manager/pre-commit/index.js +2 -1
- package/dist/modules/manager/pre-commit/index.js.map +1 -1
- package/dist/modules/manager/renovate-config-presets/index.d.ts +1 -1
- package/dist/modules/manager/renovate-config-presets/index.js +1 -3
- package/dist/modules/manager/renovate-config-presets/index.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/others/modules.js +4 -9
- package/dist/modules/manager/terraform/extractors/others/modules.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.d.ts +1 -0
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js +9 -4
- package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js.map +1 -1
- package/dist/modules/manager/terraform/extractors/resources/utils.d.ts +1 -0
- package/dist/modules/manager/terraform/extractors/resources/utils.js +4 -1
- package/dist/modules/manager/terraform/extractors/resources/utils.js.map +1 -1
- package/dist/modules/manager/terraform/hcl/types.d.ts +1 -0
- package/dist/modules/manager/terraform/hcl/types.js.map +1 -1
- package/dist/modules/manager/types.d.ts +3 -0
- package/dist/modules/manager/types.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/index.js +4 -2
- package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
- package/dist/modules/platform/codecommit/codecommit-client.js +7 -5
- package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
- package/dist/modules/platform/codecommit/index.js +7 -5
- package/dist/modules/platform/codecommit/index.js.map +1 -1
- package/dist/modules/platform/default-scm.d.ts +1 -0
- package/dist/modules/platform/default-scm.js +3 -0
- package/dist/modules/platform/default-scm.js.map +1 -1
- package/dist/modules/platform/gerrit/client.d.ts +6 -7
- package/dist/modules/platform/gerrit/client.js +58 -38
- package/dist/modules/platform/gerrit/client.js.map +1 -1
- package/dist/modules/platform/gerrit/index.d.ts +4 -3
- package/dist/modules/platform/gerrit/index.js +103 -42
- package/dist/modules/platform/gerrit/index.js.map +1 -1
- package/dist/modules/platform/gerrit/scm.d.ts +1 -1
- package/dist/modules/platform/gerrit/scm.js +56 -34
- package/dist/modules/platform/gerrit/scm.js.map +1 -1
- package/dist/modules/platform/gerrit/types.d.ts +23 -12
- package/dist/modules/platform/gerrit/types.js.map +1 -1
- package/dist/modules/platform/gerrit/utils.d.ts +8 -4
- package/dist/modules/platform/gerrit/utils.js +24 -12
- package/dist/modules/platform/gerrit/utils.js.map +1 -1
- package/dist/modules/platform/gitea/index.js +7 -2
- package/dist/modules/platform/gitea/index.js.map +1 -1
- package/dist/modules/platform/gitea/types.d.ts +2 -1
- package/dist/modules/platform/gitea/types.js.map +1 -1
- package/dist/modules/platform/github/index.js +12 -26
- package/dist/modules/platform/github/index.js.map +1 -1
- package/dist/modules/platform/gitlab/code-owners.d.ts +2 -0
- package/dist/modules/platform/gitlab/code-owners.js +38 -0
- package/dist/modules/platform/gitlab/code-owners.js.map +1 -0
- package/dist/modules/platform/gitlab/index.d.ts +2 -1
- package/dist/modules/platform/gitlab/index.js +29 -56
- package/dist/modules/platform/gitlab/index.js.map +1 -1
- package/dist/modules/platform/gitlab/pr-cache.d.ts +21 -0
- package/dist/modules/platform/gitlab/pr-cache.js +124 -0
- package/dist/modules/platform/gitlab/pr-cache.js.map +1 -0
- package/dist/modules/platform/gitlab/types.d.ts +7 -0
- package/dist/modules/platform/gitlab/types.js.map +1 -1
- package/dist/modules/platform/gitlab/utils.js +1 -0
- package/dist/modules/platform/gitlab/utils.js.map +1 -1
- package/dist/modules/platform/types.d.ts +8 -0
- package/dist/modules/platform/types.js.map +1 -1
- package/dist/modules/versioning/api.js +2 -0
- package/dist/modules/versioning/api.js.map +1 -1
- package/dist/modules/versioning/cargo/index.js +20 -0
- package/dist/modules/versioning/cargo/index.js.map +1 -1
- package/dist/modules/versioning/composer/index.js +4 -0
- package/dist/modules/versioning/composer/index.js.map +1 -1
- package/dist/modules/versioning/lambda-node/index.d.ts +8 -0
- package/dist/modules/versioning/lambda-node/index.js +27 -0
- package/dist/modules/versioning/lambda-node/index.js.map +1 -0
- package/dist/modules/versioning/lambda-node/schedule.d.ts +10 -0
- package/dist/modules/versioning/lambda-node/schedule.js +19 -0
- package/dist/modules/versioning/lambda-node/schedule.js.map +1 -0
- package/dist/modules/versioning/npm/index.js +2 -0
- package/dist/modules/versioning/npm/index.js.map +1 -1
- package/dist/modules/versioning/npm/range.js +4 -0
- package/dist/modules/versioning/npm/range.js.map +1 -1
- package/dist/modules/versioning/pep440/index.js +1 -1
- package/dist/modules/versioning/pep440/index.js.map +1 -1
- package/dist/modules/versioning/python/index.d.ts +1 -0
- package/dist/modules/versioning/python/index.js +9 -0
- package/dist/modules/versioning/python/index.js.map +1 -1
- package/dist/modules/versioning/semver/index.d.ts +1 -0
- package/dist/modules/versioning/semver/index.js +15 -0
- package/dist/modules/versioning/semver/index.js.map +1 -1
- package/dist/modules/versioning/semver-coerced/index.js +9 -0
- package/dist/modules/versioning/semver-coerced/index.js.map +1 -1
- package/dist/modules/versioning/types.d.ts +1 -0
- package/dist/modules/versioning/types.js.map +1 -1
- package/dist/util/cache/memory/index.d.ts +1 -0
- package/dist/util/cache/memory/index.js +17 -6
- package/dist/util/cache/memory/index.js.map +1 -1
- package/dist/util/cache/package/index.js +2 -1
- package/dist/util/cache/package/index.js.map +1 -1
- package/dist/util/cache/package/key.js +1 -1
- package/dist/util/cache/package/key.js.map +1 -1
- package/dist/util/cache/package/types.d.ts +2 -2
- package/dist/util/cache/package/types.js.map +1 -1
- package/dist/util/cache/repository/impl/s3.js +2 -1
- package/dist/util/cache/repository/impl/s3.js.map +1 -1
- package/dist/util/cache/repository/types.d.ts +3 -0
- package/dist/util/cache/repository/types.js.map +1 -1
- package/dist/util/env.d.ts +6 -0
- package/dist/util/env.js +13 -0
- package/dist/util/env.js.map +1 -1
- package/dist/util/exec/common.js +2 -1
- package/dist/util/exec/common.js.map +1 -1
- package/dist/util/exec/containerbase.js +2 -1
- package/dist/util/exec/containerbase.js.map +1 -1
- package/dist/util/exec/env.js +1 -0
- package/dist/util/exec/env.js.map +1 -1
- package/dist/util/exec/utils.d.ts +1 -1
- package/dist/util/exec/utils.js +1 -1
- package/dist/util/exec/utils.js.map +1 -1
- package/dist/util/fs/index.js +2 -2
- package/dist/util/fs/index.js.map +1 -1
- package/dist/util/git/auth.js +4 -2
- package/dist/util/git/auth.js.map +1 -1
- package/dist/util/git/error.js +2 -1
- package/dist/util/git/error.js.map +1 -1
- package/dist/util/git/index.d.ts +20 -0
- package/dist/util/git/index.js +140 -10
- package/dist/util/git/index.js.map +1 -1
- package/dist/util/git/types.d.ts +1 -0
- package/dist/util/git/types.js.map +1 -1
- package/dist/util/github/graphql/datasource-fetcher.js +2 -3
- package/dist/util/github/graphql/datasource-fetcher.js.map +1 -1
- package/dist/util/github/graphql/query-adapters/tags-query-adapter.d.ts +48 -2
- package/dist/util/github/graphql/query-adapters/tags-query-adapter.js +27 -7
- package/dist/util/github/graphql/query-adapters/tags-query-adapter.js.map +1 -1
- package/dist/util/host-rules.js +4 -3
- package/dist/util/host-rules.js.map +1 -1
- package/dist/util/http/cache/package-http-cache-provider.d.ts +4 -4
- package/dist/util/http/cache/package-http-cache-provider.js +4 -4
- package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
- package/dist/util/http/github.js +20 -12
- package/dist/util/http/github.js.map +1 -1
- package/dist/util/http/gitlab.js +2 -1
- package/dist/util/http/gitlab.js.map +1 -1
- package/dist/util/http/http.js +7 -3
- package/dist/util/http/http.js.map +1 -1
- package/dist/util/interpolator.d.ts +8 -0
- package/dist/util/interpolator.js +85 -0
- package/dist/util/interpolator.js.map +1 -0
- package/dist/util/merge-confidence/index.js +4 -1
- package/dist/util/merge-confidence/index.js.map +1 -1
- package/dist/util/promises.d.ts +4 -4
- package/dist/util/promises.js +3 -4
- package/dist/util/promises.js.map +1 -1
- package/dist/util/regex.js +3 -2
- package/dist/util/regex.js.map +1 -1
- package/dist/util/{schema-utils.d.ts → schema-utils/index.d.ts} +2 -2
- package/dist/util/{schema-utils.js → schema-utils/index.js} +5 -5
- package/dist/util/schema-utils/index.js.map +1 -0
- package/dist/util/schema-utils/v4.d.ts +7 -0
- package/dist/util/schema-utils/v4.js +64 -0
- package/dist/util/schema-utils/v4.js.map +1 -0
- package/dist/util/stats.d.ts +13 -2
- package/dist/util/stats.js +38 -27
- package/dist/util/stats.js.map +1 -1
- package/dist/workers/global/config/parse/codespaces.js +7 -4
- package/dist/workers/global/config/parse/codespaces.js.map +1 -1
- package/dist/workers/global/index.js +7 -5
- package/dist/workers/global/index.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/migrated-data.js +1 -1
- package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
- package/dist/workers/repository/dependency-dashboard.d.ts +1 -0
- package/dist/workers/repository/dependency-dashboard.js +47 -0
- package/dist/workers/repository/dependency-dashboard.js.map +1 -1
- package/dist/workers/repository/index.js +1 -0
- package/dist/workers/repository/index.js.map +1 -1
- package/dist/workers/repository/init/inherited.js +10 -6
- package/dist/workers/repository/init/inherited.js.map +1 -1
- package/dist/workers/repository/init/merge.d.ts +2 -2
- package/dist/workers/repository/init/merge.js +12 -5
- package/dist/workers/repository/init/merge.js.map +1 -1
- package/dist/workers/repository/package-files.js +11 -1
- package/dist/workers/repository/package-files.js.map +1 -1
- package/dist/workers/repository/process/extract-update.d.ts +1 -1
- package/dist/workers/repository/process/extract-update.js +15 -10
- package/dist/workers/repository/process/extract-update.js.map +1 -1
- package/dist/workers/repository/process/index.d.ts +1 -1
- package/dist/workers/repository/process/index.js +6 -3
- package/dist/workers/repository/process/index.js.map +1 -1
- package/dist/workers/repository/process/libyear.js +15 -7
- package/dist/workers/repository/process/libyear.js.map +1 -1
- package/dist/workers/repository/process/lookup/abandonment.d.ts +3 -0
- package/dist/workers/repository/process/lookup/abandonment.js +50 -0
- package/dist/workers/repository/process/lookup/abandonment.js.map +1 -0
- package/dist/workers/repository/process/lookup/current.js +0 -5
- package/dist/workers/repository/process/lookup/current.js.map +1 -1
- package/dist/workers/repository/process/lookup/generate.js +10 -0
- package/dist/workers/repository/process/lookup/generate.js.map +1 -1
- package/dist/workers/repository/process/lookup/index.js +7 -0
- package/dist/workers/repository/process/lookup/index.js.map +1 -1
- package/dist/workers/repository/process/lookup/timestamps.d.ts +4 -4
- package/dist/workers/repository/process/lookup/timestamps.js +10 -10
- package/dist/workers/repository/process/lookup/timestamps.js.map +1 -1
- package/dist/workers/repository/process/lookup/types.d.ts +4 -0
- package/dist/workers/repository/process/lookup/types.js.map +1 -1
- package/dist/workers/repository/update/branch/auto-replace.js +30 -7
- package/dist/workers/repository/update/branch/auto-replace.js.map +1 -1
- package/dist/workers/repository/update/branch/bump-versions.d.ts +2 -0
- package/dist/workers/repository/update/branch/bump-versions.js +192 -0
- package/dist/workers/repository/update/branch/bump-versions.js.map +1 -0
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +14 -8
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
- package/dist/workers/repository/update/branch/get-updated.js +3 -4
- package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
- package/dist/workers/repository/update/branch/index.js +3 -0
- package/dist/workers/repository/update/branch/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/release-notes.js +23 -19
- package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
- package/dist/workers/repository/update/pr/code-owners.js +13 -9
- package/dist/workers/repository/update/pr/code-owners.js.map +1 -1
- package/dist/workers/repository/updates/generate.js +1 -0
- package/dist/workers/repository/updates/generate.js.map +1 -1
- package/package.json +75 -80
- package/renovate-schema.json +78 -14
- package/dist/util/schema-utils.js.map +0 -1
@@ -12,7 +12,7 @@ const regexVersioning = tslib_1.__importStar(require("../../versioning/regex"));
|
|
12
12
|
const semverVersioning = tslib_1.__importStar(require("../../versioning/semver"));
|
13
13
|
const upgradeable_tooling_1 = require("../asdf/upgradeable-tooling");
|
14
14
|
exports.asdfTooling = upgradeable_tooling_1.upgradeableTooling;
|
15
|
-
|
15
|
+
const miseCoreTooling = {
|
16
16
|
bun: {
|
17
17
|
misePluginUrl: 'https://mise.jdx.dev/lang/bun.html',
|
18
18
|
config: {
|
@@ -161,4 +161,213 @@ exports.miseTooling = {
|
|
161
161
|
},
|
162
162
|
},
|
163
163
|
};
|
164
|
+
const miseRegistryTooling = {
|
165
|
+
actionlint: {
|
166
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
167
|
+
config: {
|
168
|
+
packageName: 'rhysd/actionlint',
|
169
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
170
|
+
extractVersion: '^v(?<version>\\S+)',
|
171
|
+
},
|
172
|
+
},
|
173
|
+
astro: {
|
174
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
175
|
+
config: {
|
176
|
+
packageName: 'astronomer/astro-cli',
|
177
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
178
|
+
extractVersion: '^v(?<version>\\S+)',
|
179
|
+
},
|
180
|
+
},
|
181
|
+
'aws-cli': {
|
182
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
183
|
+
config: {
|
184
|
+
datasource: github_tags_1.GithubTagsDatasource.id,
|
185
|
+
packageName: 'aws/aws-cli',
|
186
|
+
},
|
187
|
+
},
|
188
|
+
'aws-vault': {
|
189
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
190
|
+
config: {
|
191
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
192
|
+
packageName: '99designs/aws-vault',
|
193
|
+
extractVersion: '^v(?<version>\\S+)',
|
194
|
+
},
|
195
|
+
},
|
196
|
+
buf: {
|
197
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
198
|
+
config: {
|
199
|
+
packageName: 'bufbuild/buf',
|
200
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
201
|
+
extractVersion: '^v(?<version>\\S+)',
|
202
|
+
},
|
203
|
+
},
|
204
|
+
ccache: {
|
205
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
206
|
+
config: {
|
207
|
+
packageName: 'ccache/ccache',
|
208
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
209
|
+
extractVersion: '^v(?<version>\\S+)',
|
210
|
+
},
|
211
|
+
},
|
212
|
+
committed: {
|
213
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
214
|
+
config: {
|
215
|
+
packageName: 'crate-ci/committed',
|
216
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
217
|
+
extractVersion: '^v(?<version>\\S+)',
|
218
|
+
},
|
219
|
+
},
|
220
|
+
consul: {
|
221
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
222
|
+
config: {
|
223
|
+
packageName: 'hashicorp/consul',
|
224
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
225
|
+
extractVersion: '^v(?<version>\\S+)',
|
226
|
+
},
|
227
|
+
},
|
228
|
+
hivemind: {
|
229
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
230
|
+
config: {
|
231
|
+
packageName: 'DarthSim/hivemind',
|
232
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
233
|
+
extractVersion: '^v(?<version>\\S+)',
|
234
|
+
},
|
235
|
+
},
|
236
|
+
jq: {
|
237
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
238
|
+
config: {
|
239
|
+
packageName: 'jqlang/jq',
|
240
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
241
|
+
extractVersion: '^jq-v(?<version>\\S+)',
|
242
|
+
},
|
243
|
+
},
|
244
|
+
hk: {
|
245
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
246
|
+
config: {
|
247
|
+
packageName: 'jdx/hk',
|
248
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
249
|
+
extractVersion: '^v(?<version>\\S+)',
|
250
|
+
},
|
251
|
+
},
|
252
|
+
kafka: {
|
253
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
254
|
+
config: (version) => {
|
255
|
+
const apacheMatches = /^apache-(?<version>\d\S+)/.exec(version)?.groups;
|
256
|
+
if (apacheMatches) {
|
257
|
+
return {
|
258
|
+
datasource: github_tags_1.GithubTagsDatasource.id,
|
259
|
+
packageName: 'apache/kafka',
|
260
|
+
currentValue: apacheMatches.version,
|
261
|
+
};
|
262
|
+
}
|
263
|
+
return undefined;
|
264
|
+
},
|
265
|
+
},
|
266
|
+
lefthook: {
|
267
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
268
|
+
config: {
|
269
|
+
packageName: 'evilmartians/lefthook',
|
270
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
271
|
+
extractVersion: '^v(?<version>\\S+)',
|
272
|
+
},
|
273
|
+
},
|
274
|
+
localstack: {
|
275
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
276
|
+
config: {
|
277
|
+
packageName: 'localstack/localstack',
|
278
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
279
|
+
extractVersion: '^v(?<version>\\S+)',
|
280
|
+
},
|
281
|
+
},
|
282
|
+
opentofu: {
|
283
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
284
|
+
config: {
|
285
|
+
packageName: 'opentofu/opentofu',
|
286
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
287
|
+
extractVersion: '^v(?<version>\\S+)',
|
288
|
+
},
|
289
|
+
},
|
290
|
+
protoc: {
|
291
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
292
|
+
config: {
|
293
|
+
packageName: 'protocolbuffers/protobuf',
|
294
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
295
|
+
extractVersion: '^v(?<version>\\S+)',
|
296
|
+
},
|
297
|
+
},
|
298
|
+
redis: {
|
299
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
300
|
+
config: {
|
301
|
+
packageName: 'redis/redis',
|
302
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
303
|
+
},
|
304
|
+
},
|
305
|
+
ruff: {
|
306
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
307
|
+
config: {
|
308
|
+
packageName: 'astral-sh/ruff',
|
309
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
310
|
+
},
|
311
|
+
},
|
312
|
+
shellcheck: {
|
313
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
314
|
+
config: {
|
315
|
+
packageName: 'koalaman/shellcheck',
|
316
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
317
|
+
extractVersion: '^v(?<version>\\S+)',
|
318
|
+
},
|
319
|
+
},
|
320
|
+
skeema: {
|
321
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
322
|
+
config: {
|
323
|
+
packageName: 'skeema/skeema',
|
324
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
325
|
+
extractVersion: '^v(?<version>\\S+)',
|
326
|
+
},
|
327
|
+
},
|
328
|
+
sops: {
|
329
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
330
|
+
config: {
|
331
|
+
packageName: 'getsops/sops',
|
332
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
333
|
+
extractVersion: '^v(?<version>\\S+)',
|
334
|
+
},
|
335
|
+
},
|
336
|
+
stripe: {
|
337
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
338
|
+
config: {
|
339
|
+
packageName: 'stripe/stripe-cli',
|
340
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
341
|
+
extractVersion: '^v(?<version>\\S+)',
|
342
|
+
},
|
343
|
+
},
|
344
|
+
terragrunt: {
|
345
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
346
|
+
config: {
|
347
|
+
packageName: 'gruntwork-io/terragrunt',
|
348
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
349
|
+
extractVersion: '^v(?<version>\\S+)',
|
350
|
+
},
|
351
|
+
},
|
352
|
+
tilt: {
|
353
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
354
|
+
config: {
|
355
|
+
packageName: 'tilt-dev/tilt',
|
356
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
357
|
+
extractVersion: '^v(?<version>\\S+)',
|
358
|
+
},
|
359
|
+
},
|
360
|
+
tusd: {
|
361
|
+
misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',
|
362
|
+
config: {
|
363
|
+
packageName: 'tus/tusd',
|
364
|
+
datasource: github_releases_1.GithubReleasesDatasource.id,
|
365
|
+
extractVersion: '^v(?<version>\\S+)',
|
366
|
+
},
|
367
|
+
},
|
368
|
+
};
|
369
|
+
exports.miseTooling = {
|
370
|
+
...miseCoreTooling,
|
371
|
+
...miseRegistryTooling,
|
372
|
+
};
|
164
373
|
//# sourceMappingURL=upgradeable-tooling.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"upgradeable-tooling.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/upgradeable-tooling.ts"],"names":[],"mappings":"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","sourcesContent":["import { GithubReleasesDatasource } from '../../datasource/github-releases';\nimport { GithubTagsDatasource } from '../../datasource/github-tags';\nimport { HexpmBobDatasource } from '../../datasource/hexpm-bob';\nimport { JavaVersionDatasource } from '../../datasource/java-version';\nimport { NodeVersionDatasource } from '../../datasource/node-version';\nimport { RubyVersionDatasource } from '../../datasource/ruby-version';\nimport * as regexVersioning from '../../versioning/regex';\nimport * as semverVersioning from '../../versioning/semver';\nimport type { ToolingConfig } from '../asdf/upgradeable-tooling';\nimport { upgradeableTooling } from '../asdf/upgradeable-tooling';\n\nexport interface ToolingDefinition {\n config: ToolingConfig;\n misePluginUrl?: string;\n}\n\nexport const asdfTooling = upgradeableTooling;\n\nexport const miseTooling: Record<string, ToolingDefinition> = {\n bun: {\n misePluginUrl: 'https://mise.jdx.dev/lang/bun.html',\n config: {\n packageName: 'oven-sh/bun',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^bun-v(?<version>\\\\S+)',\n },\n },\n deno: {\n misePluginUrl: 'https://mise.jdx.dev/lang/deno.html',\n config: {\n packageName: 'denoland/deno',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n elixir: {\n misePluginUrl: 'https://mise.jdx.dev/lang/elixir.html',\n config: {\n datasource: HexpmBobDatasource.id,\n },\n },\n erlang: {\n misePluginUrl: 'https://mise.jdx.dev/lang/erlang.html',\n config: {\n packageName: 'erlang/otp',\n datasource: GithubTagsDatasource.id,\n extractVersion: '^OTP-(?<version>\\\\S+)',\n versioning: `${regexVersioning.id}:^(?<major>\\\\d+?)\\\\.(?<minor>\\\\d+?)(\\\\.(?<patch>\\\\d+))?$`,\n },\n },\n go: {\n misePluginUrl: 'https://mise.jdx.dev/lang/go.html',\n config: {\n packageName: 'golang/go',\n datasource: GithubTagsDatasource.id,\n extractVersion: '^go(?<version>\\\\S+)',\n },\n },\n java: {\n misePluginUrl: 'https://mise.jdx.dev/lang/java.html',\n config: (version) => {\n // no prefix is shorthand for openjdk\n const versionMatch = /^(\\d\\S+)/.exec(version)?.[1];\n if (versionMatch) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: versionMatch,\n };\n }\n const openJdkMatches = /^openjdk-(?<version>\\d\\S+)/.exec(version)?.groups;\n if (openJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: openJdkMatches.version,\n };\n }\n const adoptOpenJdkMatches = /^adoptopenjdk-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (adoptOpenJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: adoptOpenJdkMatches.version,\n };\n }\n const temurinJdkMatches = /^temurin-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (temurinJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: temurinJdkMatches.version,\n };\n }\n const correttoJdkMatches = /^corretto-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (correttoJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: correttoJdkMatches.version,\n };\n }\n const zuluJdkMatches = /^zulu-(?<version>\\d\\S+)/.exec(version)?.groups;\n if (zuluJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: zuluJdkMatches.version,\n };\n }\n const oracleGraalvmJdkMatches = /^oracle-graalvm-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (oracleGraalvmJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: oracleGraalvmJdkMatches.version,\n };\n }\n\n return undefined;\n },\n },\n node: {\n misePluginUrl: 'https://mise.jdx.dev/lang/node.html',\n config: {\n packageName: 'nodejs',\n datasource: NodeVersionDatasource.id,\n },\n },\n python: {\n misePluginUrl: 'https://mise.jdx.dev/lang/python.html',\n config: {\n packageName: 'python/cpython',\n datasource: GithubTagsDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n ruby: {\n misePluginUrl: 'https://mise.jdx.dev/lang/ruby.html',\n config: {\n packageName: 'ruby-version',\n datasource: RubyVersionDatasource.id,\n versioning: semverVersioning.id,\n },\n },\n rust: {\n misePluginUrl: 'https://mise.jdx.dev/lang/rust.html',\n config: {\n packageName: 'rust-lang/rust',\n datasource: GithubTagsDatasource.id,\n },\n },\n swift: {\n misePluginUrl: 'https://mise.jdx.dev/lang/swift.html',\n config: {\n packageName: 'swift-lang/swift',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^swift-(?<version>\\\\S+)',\n },\n },\n zig: {\n misePluginUrl: 'https://mise.jdx.dev/lang/zig.html',\n config: {\n packageName: 'ziglang/zig',\n datasource: GithubTagsDatasource.id,\n },\n },\n};\n"]}
|
1
|
+
{"version":3,"file":"upgradeable-tooling.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/upgradeable-tooling.ts"],"names":[],"mappings":"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","sourcesContent":["import { GithubReleasesDatasource } from '../../datasource/github-releases';\nimport { GithubTagsDatasource } from '../../datasource/github-tags';\nimport { HexpmBobDatasource } from '../../datasource/hexpm-bob';\nimport { JavaVersionDatasource } from '../../datasource/java-version';\nimport { NodeVersionDatasource } from '../../datasource/node-version';\nimport { RubyVersionDatasource } from '../../datasource/ruby-version';\nimport * as regexVersioning from '../../versioning/regex';\nimport * as semverVersioning from '../../versioning/semver';\nimport type { ToolingConfig } from '../asdf/upgradeable-tooling';\nimport { upgradeableTooling } from '../asdf/upgradeable-tooling';\n\nexport interface ToolingDefinition {\n config: ToolingConfig;\n misePluginUrl?: string;\n}\n\nexport const asdfTooling = upgradeableTooling;\n\nconst miseCoreTooling: Record<string, ToolingDefinition> = {\n bun: {\n misePluginUrl: 'https://mise.jdx.dev/lang/bun.html',\n config: {\n packageName: 'oven-sh/bun',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^bun-v(?<version>\\\\S+)',\n },\n },\n deno: {\n misePluginUrl: 'https://mise.jdx.dev/lang/deno.html',\n config: {\n packageName: 'denoland/deno',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n elixir: {\n misePluginUrl: 'https://mise.jdx.dev/lang/elixir.html',\n config: {\n datasource: HexpmBobDatasource.id,\n },\n },\n erlang: {\n misePluginUrl: 'https://mise.jdx.dev/lang/erlang.html',\n config: {\n packageName: 'erlang/otp',\n datasource: GithubTagsDatasource.id,\n extractVersion: '^OTP-(?<version>\\\\S+)',\n versioning: `${regexVersioning.id}:^(?<major>\\\\d+?)\\\\.(?<minor>\\\\d+?)(\\\\.(?<patch>\\\\d+))?$`,\n },\n },\n go: {\n misePluginUrl: 'https://mise.jdx.dev/lang/go.html',\n config: {\n packageName: 'golang/go',\n datasource: GithubTagsDatasource.id,\n extractVersion: '^go(?<version>\\\\S+)',\n },\n },\n java: {\n misePluginUrl: 'https://mise.jdx.dev/lang/java.html',\n config: (version) => {\n // no prefix is shorthand for openjdk\n const versionMatch = /^(\\d\\S+)/.exec(version)?.[1];\n if (versionMatch) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: versionMatch,\n };\n }\n const openJdkMatches = /^openjdk-(?<version>\\d\\S+)/.exec(version)?.groups;\n if (openJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: openJdkMatches.version,\n };\n }\n const adoptOpenJdkMatches = /^adoptopenjdk-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (adoptOpenJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: adoptOpenJdkMatches.version,\n };\n }\n const temurinJdkMatches = /^temurin-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (temurinJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: temurinJdkMatches.version,\n };\n }\n const correttoJdkMatches = /^corretto-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (correttoJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: correttoJdkMatches.version,\n };\n }\n const zuluJdkMatches = /^zulu-(?<version>\\d\\S+)/.exec(version)?.groups;\n if (zuluJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: zuluJdkMatches.version,\n };\n }\n const oracleGraalvmJdkMatches = /^oracle-graalvm-(?<version>\\d\\S+)/.exec(\n version,\n )?.groups;\n if (oracleGraalvmJdkMatches) {\n return {\n datasource: JavaVersionDatasource.id,\n packageName: 'java-jdk',\n currentValue: oracleGraalvmJdkMatches.version,\n };\n }\n\n return undefined;\n },\n },\n node: {\n misePluginUrl: 'https://mise.jdx.dev/lang/node.html',\n config: {\n packageName: 'nodejs',\n datasource: NodeVersionDatasource.id,\n },\n },\n python: {\n misePluginUrl: 'https://mise.jdx.dev/lang/python.html',\n config: {\n packageName: 'python/cpython',\n datasource: GithubTagsDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n ruby: {\n misePluginUrl: 'https://mise.jdx.dev/lang/ruby.html',\n config: {\n packageName: 'ruby-version',\n datasource: RubyVersionDatasource.id,\n versioning: semverVersioning.id,\n },\n },\n rust: {\n misePluginUrl: 'https://mise.jdx.dev/lang/rust.html',\n config: {\n packageName: 'rust-lang/rust',\n datasource: GithubTagsDatasource.id,\n },\n },\n swift: {\n misePluginUrl: 'https://mise.jdx.dev/lang/swift.html',\n config: {\n packageName: 'swift-lang/swift',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^swift-(?<version>\\\\S+)',\n },\n },\n zig: {\n misePluginUrl: 'https://mise.jdx.dev/lang/zig.html',\n config: {\n packageName: 'ziglang/zig',\n datasource: GithubTagsDatasource.id,\n },\n },\n};\n\nconst miseRegistryTooling: Record<string, ToolingDefinition> = {\n actionlint: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'rhysd/actionlint',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n astro: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'astronomer/astro-cli',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n 'aws-cli': {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n datasource: GithubTagsDatasource.id,\n packageName: 'aws/aws-cli',\n },\n },\n 'aws-vault': {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n datasource: GithubReleasesDatasource.id,\n packageName: '99designs/aws-vault',\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n buf: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'bufbuild/buf',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n ccache: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'ccache/ccache',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n committed: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'crate-ci/committed',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n consul: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'hashicorp/consul',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n hivemind: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'DarthSim/hivemind',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n jq: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'jqlang/jq',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^jq-v(?<version>\\\\S+)',\n },\n },\n hk: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'jdx/hk',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n kafka: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: (version) => {\n const apacheMatches = /^apache-(?<version>\\d\\S+)/.exec(version)?.groups;\n if (apacheMatches) {\n return {\n datasource: GithubTagsDatasource.id,\n packageName: 'apache/kafka',\n currentValue: apacheMatches.version,\n };\n }\n\n return undefined;\n },\n },\n lefthook: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'evilmartians/lefthook',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n localstack: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'localstack/localstack',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n opentofu: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'opentofu/opentofu',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n protoc: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'protocolbuffers/protobuf',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n redis: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'redis/redis',\n datasource: GithubReleasesDatasource.id,\n },\n },\n ruff: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'astral-sh/ruff',\n datasource: GithubReleasesDatasource.id,\n },\n },\n shellcheck: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'koalaman/shellcheck',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n skeema: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'skeema/skeema',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n sops: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'getsops/sops',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n stripe: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'stripe/stripe-cli',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n terragrunt: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'gruntwork-io/terragrunt',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n tilt: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'tilt-dev/tilt',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n tusd: {\n misePluginUrl: 'https://mise.jdx.dev/registry.html#tools',\n config: {\n packageName: 'tus/tusd',\n datasource: GithubReleasesDatasource.id,\n extractVersion: '^v(?<version>\\\\S+)',\n },\n },\n};\n\nexport const miseTooling: Record<string, ToolingDefinition> = {\n ...miseCoreTooling,\n ...miseRegistryTooling,\n};\n"]}
|
@@ -102,6 +102,11 @@ async function updateArtifacts({ packageFileName, updatedDeps, newPackageFileCon
|
|
102
102
|
return acc;
|
103
103
|
}, []);
|
104
104
|
const execOptions = {
|
105
|
+
extraEnv: {
|
106
|
+
// https://hexdocs.pm/mix/1.15.0/Mix.Tasks.Archive.html
|
107
|
+
// TODO: should include a version constraint
|
108
|
+
MIX_ARCHIVES: await (0, fs_1.ensureCacheDir)('mix_archives'),
|
109
|
+
},
|
105
110
|
cwdFile: packageFileName,
|
106
111
|
docker: {},
|
107
112
|
toolConstraints: [
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mix/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { quote } from 'shlex';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions } from '../../../util/exec/types';\nimport {\n deleteLocalFile,\n findLocalSiblingOrParent,\n getSiblingFileName,\n localPathExists,\n readLocalFile,\n writeLocalFile,\n} from '../../../util/fs';\nimport * as hostRules from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\n\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\n\nconst hexRepoUrl = 'https://hex.pm/';\nconst hexRepoOrgUrlRegex = regEx(\n `^https://hex\\\\.pm/api/repos/(?<organization>[a-z0-9_]+)/$`,\n);\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`mix.getArtifacts(${packageFileName})`);\n const { isLockFileMaintenance } = config;\n\n if (is.emptyArray(updatedDeps) && !isLockFileMaintenance) {\n logger.debug('No updated mix deps');\n return null;\n }\n\n let lockFileName = getSiblingFileName(packageFileName, 'mix.lock');\n let isUmbrella = false;\n\n let existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n const lockFileError = await checkLockFileReadError(lockFileName);\n if (lockFileError) {\n return lockFileError;\n }\n\n const parentLockFileName = await findLocalSiblingOrParent(\n packageFileName,\n 'mix.lock',\n );\n existingLockFileContent =\n parentLockFileName && (await readLocalFile(parentLockFileName, 'utf8'));\n\n if (parentLockFileName && existingLockFileContent) {\n lockFileName = parentLockFileName;\n isUmbrella = true;\n } else if (parentLockFileName) {\n const lockFileError = await checkLockFileReadError(parentLockFileName);\n if (lockFileError) {\n return lockFileError;\n }\n }\n }\n\n if (isLockFileMaintenance && isUmbrella) {\n logger.debug(\n 'Cannot use lockFileMaintenance in an umbrella project, see https://docs.renovatebot.com/modules/manager/mix/#lockFileMaintenance',\n );\n return null;\n }\n\n if (isLockFileMaintenance && !existingLockFileContent) {\n logger.debug(\n 'Cannot use lockFileMaintenance when no mix.lock file is present',\n );\n return null;\n }\n\n try {\n await writeLocalFile(packageFileName, newPackageFileContent);\n if (isLockFileMaintenance) {\n await deleteLocalFile(lockFileName);\n }\n } catch (err) {\n logger.warn({ err }, 'mix.exs could not be written');\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n\n if (!existingLockFileContent) {\n logger.debug('No mix.lock found');\n return null;\n }\n\n const organizations = new Set<string>();\n\n const hexHostRulesWithMatchHost = hostRules\n .getAll()\n .filter(\n (hostRule) =>\n !!hostRule.matchHost && hexRepoOrgUrlRegex.test(hostRule.matchHost),\n );\n\n for (const { matchHost } of hexHostRulesWithMatchHost) {\n if (matchHost) {\n const result = hexRepoOrgUrlRegex.exec(matchHost);\n\n if (result?.groups) {\n const { organization } = result.groups;\n organizations.add(organization);\n }\n }\n }\n\n for (const { packageName } of updatedDeps) {\n if (packageName) {\n const [, organization] = packageName.split(':');\n\n if (organization) {\n organizations.add(organization);\n }\n }\n }\n\n const preCommands = Array.from(organizations).reduce((acc, organization) => {\n const url = `${hexRepoUrl}api/repos/${organization}/`;\n const { token } = hostRules.find({ url });\n\n if (token) {\n logger.debug(`Authenticating to hex organization ${organization}`);\n const authCommand = `mix hex.organization auth ${organization} --key ${token}`;\n return [...acc, authCommand];\n }\n\n return acc;\n }, [] as string[]);\n\n const execOptions: ExecOptions = {\n cwdFile: packageFileName,\n docker: {},\n toolConstraints: [\n {\n toolName: 'erlang',\n // https://hexdocs.pm/elixir/1.14.5/compatibility-and-deprecations.html#compatibility-between-elixir-and-erlang-otp\n constraint: config.constraints?.erlang ?? '^26',\n },\n {\n toolName: 'elixir',\n constraint: config.constraints?.elixir,\n },\n ],\n preCommands,\n };\n\n let command: string;\n if (isLockFileMaintenance) {\n command = 'mix deps.get';\n } else {\n command = [\n 'mix',\n 'deps.update',\n ...updatedDeps\n .map((dep) => dep.depName)\n .filter(is.string)\n .map((dep) => quote(dep)),\n ].join(' ');\n }\n\n try {\n await exec(command, execOptions);\n } catch (err) {\n /* v8 ignore next 3 */\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n\n logger.debug(\n { err, message: err.message, command },\n 'Failed to update Mix lock file',\n );\n\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n\n const newMixLockContent = await readLocalFile(lockFileName, 'utf8');\n if (existingLockFileContent === newMixLockContent) {\n logger.debug('mix.lock is unchanged');\n return null;\n }\n logger.debug('Returning updated mix.lock');\n return [\n {\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newMixLockContent,\n },\n },\n ];\n}\n\nasync function checkLockFileReadError(\n lockFileName: string,\n): Promise<UpdateArtifactsResult[] | null> {\n if (await localPathExists(lockFileName)) {\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: `Error reading ${lockFileName}`,\n },\n },\n ];\n }\n return null;\n}\n"]}
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mix/artifacts.ts"],"names":[],"mappings":";;AAyBA,0CAmMC;;AA5ND,kEAAkC;AAClC,iCAA8B;AAC9B,sEAAoE;AACpE,4CAAyC;AACzC,6CAA0C;AAE1C,yCAQ0B;AAC1B,4EAAsD;AACtD,+CAA4C;AAI5C,MAAM,UAAU,GAAG,iBAAiB,CAAC;AACrC,MAAM,kBAAkB,GAAG,IAAA,aAAK,EAC9B,2DAA2D,CAC5D,CAAC;AAEK,KAAK,UAAU,eAAe,CAAC,EACpC,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,MAAM,GACS;IACf,eAAM,CAAC,KAAK,CAAC,oBAAoB,eAAe,GAAG,CAAC,CAAC;IACrD,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAC;IAEzC,IAAI,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACzD,eAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,YAAY,GAAG,IAAA,uBAAkB,EAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACnE,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,IAAI,uBAAuB,GAAG,MAAM,IAAA,kBAAa,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,YAAY,CAAC,CAAC;QACjE,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,IAAA,6BAAwB,EACvD,eAAe,EACf,UAAU,CACX,CAAC;QACF,uBAAuB;YACrB,kBAAkB,IAAI,CAAC,MAAM,IAAA,kBAAa,EAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;QAE1E,IAAI,kBAAkB,IAAI,uBAAuB,EAAE,CAAC;YAClD,YAAY,GAAG,kBAAkB,CAAC;YAClC,UAAU,GAAG,IAAI,CAAC;QACpB,CAAC;aAAM,IAAI,kBAAkB,EAAE,CAAC;YAC9B,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;YACvE,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,aAAa,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;QACxC,eAAM,CAAC,KAAK,CACV,kIAAkI,CACnI,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,qBAAqB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACtD,eAAM,CAAC,KAAK,CACV,iEAAiE,CAClE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAA,mBAAc,EAAC,eAAe,EAAE,qBAAqB,CAAC,CAAC;QAC7D,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,IAAA,oBAAe,EAAC,YAAY,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,eAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,8BAA8B,CAAC,CAAC;QACrD,OAAO;YACL;gBACE,aAAa,EAAE;oBACb,QAAQ,EAAE,YAAY;oBACtB,MAAM,EAAE,GAAG,CAAC,OAAO;iBACpB;aACF;SACF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,eAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC,MAAM,yBAAyB,GAAG,SAAS;SACxC,MAAM,EAAE;SACR,MAAM,CACL,CAAC,QAAQ,EAAE,EAAE,CACX,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CACtE,CAAC;IAEJ,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,yBAAyB,EAAE,CAAC;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAElD,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;gBACnB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;gBACvC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,EAAE,WAAW,EAAE,IAAI,WAAW,EAAE,CAAC;QAC1C,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAEhD,IAAI,YAAY,EAAE,CAAC;gBACjB,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE;QACzE,MAAM,GAAG,GAAG,GAAG,UAAU,aAAa,YAAY,GAAG,CAAC;QACtD,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAE1C,IAAI,KAAK,EAAE,CAAC;YACV,eAAM,CAAC,KAAK,CAAC,sCAAsC,YAAY,EAAE,CAAC,CAAC;YACnE,MAAM,WAAW,GAAG,6BAA6B,YAAY,UAAU,KAAK,EAAE,CAAC;YAC/E,OAAO,CAAC,GAAG,GAAG,EAAE,WAAW,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAc,CAAC,CAAC;IAEnB,MAAM,WAAW,GAAgB;QAC/B,QAAQ,EAAE;YACR,uDAAuD;YACvD,4CAA4C;YAC5C,YAAY,EAAE,MAAM,IAAA,mBAAc,EAAC,cAAc,CAAC;SACnD;QACD,OAAO,EAAE,eAAe;QACxB,MAAM,EAAE,EAAE;QACV,eAAe,EAAE;YACf;gBACE,QAAQ,EAAE,QAAQ;gBAClB,mHAAmH;gBACnH,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,KAAK;aAChD;YACD;gBACE,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM;aACvC;SACF;QACD,WAAW;KACZ,CAAC;IAEF,IAAI,OAAe,CAAC;IACpB,IAAI,qBAAqB,EAAE,CAAC;QAC1B,OAAO,GAAG,cAAc,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,OAAO,GAAG;YACR,KAAK;YACL,aAAa;YACb,GAAG,WAAW;iBACX,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC;iBACzB,MAAM,CAAC,YAAE,CAAC,MAAM,CAAC;iBACjB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,aAAK,EAAC,GAAG,CAAC,CAAC;SAC5B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAA,WAAI,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,sBAAsB;QACtB,IAAI,GAAG,CAAC,OAAO,KAAK,gCAAe,EAAE,CAAC;YACpC,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,eAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,EACtC,gCAAgC,CACjC,CAAC;QAEF,OAAO;YACL;gBACE,aAAa,EAAE;oBACb,QAAQ,EAAE,YAAY;oBACtB,MAAM,EAAE,GAAG,CAAC,OAAO;iBACpB;aACF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,IAAA,kBAAa,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACpE,IAAI,uBAAuB,KAAK,iBAAiB,EAAE,CAAC;QAClD,eAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC3C,OAAO;QACL;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,iBAAiB;aAC5B;SACF;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,YAAoB;IAEpB,IAAI,MAAM,IAAA,oBAAe,EAAC,YAAY,CAAC,EAAE,CAAC;QACxC,OAAO;YACL;gBACE,aAAa,EAAE;oBACb,QAAQ,EAAE,YAAY;oBACtB,MAAM,EAAE,iBAAiB,YAAY,EAAE;iBACxC;aACF;SACF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { quote } from 'shlex';\nimport { TEMPORARY_ERROR } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions } from '../../../util/exec/types';\nimport {\n deleteLocalFile,\n ensureCacheDir,\n findLocalSiblingOrParent,\n getSiblingFileName,\n localPathExists,\n readLocalFile,\n writeLocalFile,\n} from '../../../util/fs';\nimport * as hostRules from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\n\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\n\nconst hexRepoUrl = 'https://hex.pm/';\nconst hexRepoOrgUrlRegex = regEx(\n `^https://hex\\\\.pm/api/repos/(?<organization>[a-z0-9_]+)/$`,\n);\n\nexport async function updateArtifacts({\n packageFileName,\n updatedDeps,\n newPackageFileContent,\n config,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n logger.debug(`mix.getArtifacts(${packageFileName})`);\n const { isLockFileMaintenance } = config;\n\n if (is.emptyArray(updatedDeps) && !isLockFileMaintenance) {\n logger.debug('No updated mix deps');\n return null;\n }\n\n let lockFileName = getSiblingFileName(packageFileName, 'mix.lock');\n let isUmbrella = false;\n\n let existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n const lockFileError = await checkLockFileReadError(lockFileName);\n if (lockFileError) {\n return lockFileError;\n }\n\n const parentLockFileName = await findLocalSiblingOrParent(\n packageFileName,\n 'mix.lock',\n );\n existingLockFileContent =\n parentLockFileName && (await readLocalFile(parentLockFileName, 'utf8'));\n\n if (parentLockFileName && existingLockFileContent) {\n lockFileName = parentLockFileName;\n isUmbrella = true;\n } else if (parentLockFileName) {\n const lockFileError = await checkLockFileReadError(parentLockFileName);\n if (lockFileError) {\n return lockFileError;\n }\n }\n }\n\n if (isLockFileMaintenance && isUmbrella) {\n logger.debug(\n 'Cannot use lockFileMaintenance in an umbrella project, see https://docs.renovatebot.com/modules/manager/mix/#lockFileMaintenance',\n );\n return null;\n }\n\n if (isLockFileMaintenance && !existingLockFileContent) {\n logger.debug(\n 'Cannot use lockFileMaintenance when no mix.lock file is present',\n );\n return null;\n }\n\n try {\n await writeLocalFile(packageFileName, newPackageFileContent);\n if (isLockFileMaintenance) {\n await deleteLocalFile(lockFileName);\n }\n } catch (err) {\n logger.warn({ err }, 'mix.exs could not be written');\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n\n if (!existingLockFileContent) {\n logger.debug('No mix.lock found');\n return null;\n }\n\n const organizations = new Set<string>();\n\n const hexHostRulesWithMatchHost = hostRules\n .getAll()\n .filter(\n (hostRule) =>\n !!hostRule.matchHost && hexRepoOrgUrlRegex.test(hostRule.matchHost),\n );\n\n for (const { matchHost } of hexHostRulesWithMatchHost) {\n if (matchHost) {\n const result = hexRepoOrgUrlRegex.exec(matchHost);\n\n if (result?.groups) {\n const { organization } = result.groups;\n organizations.add(organization);\n }\n }\n }\n\n for (const { packageName } of updatedDeps) {\n if (packageName) {\n const [, organization] = packageName.split(':');\n\n if (organization) {\n organizations.add(organization);\n }\n }\n }\n\n const preCommands = Array.from(organizations).reduce((acc, organization) => {\n const url = `${hexRepoUrl}api/repos/${organization}/`;\n const { token } = hostRules.find({ url });\n\n if (token) {\n logger.debug(`Authenticating to hex organization ${organization}`);\n const authCommand = `mix hex.organization auth ${organization} --key ${token}`;\n return [...acc, authCommand];\n }\n\n return acc;\n }, [] as string[]);\n\n const execOptions: ExecOptions = {\n extraEnv: {\n // https://hexdocs.pm/mix/1.15.0/Mix.Tasks.Archive.html\n // TODO: should include a version constraint\n MIX_ARCHIVES: await ensureCacheDir('mix_archives'),\n },\n cwdFile: packageFileName,\n docker: {},\n toolConstraints: [\n {\n toolName: 'erlang',\n // https://hexdocs.pm/elixir/1.14.5/compatibility-and-deprecations.html#compatibility-between-elixir-and-erlang-otp\n constraint: config.constraints?.erlang ?? '^26',\n },\n {\n toolName: 'elixir',\n constraint: config.constraints?.elixir,\n },\n ],\n preCommands,\n };\n\n let command: string;\n if (isLockFileMaintenance) {\n command = 'mix deps.get';\n } else {\n command = [\n 'mix',\n 'deps.update',\n ...updatedDeps\n .map((dep) => dep.depName)\n .filter(is.string)\n .map((dep) => quote(dep)),\n ].join(' ');\n }\n\n try {\n await exec(command, execOptions);\n } catch (err) {\n /* v8 ignore next 3 */\n if (err.message === TEMPORARY_ERROR) {\n throw err;\n }\n\n logger.debug(\n { err, message: err.message, command },\n 'Failed to update Mix lock file',\n );\n\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n\n const newMixLockContent = await readLocalFile(lockFileName, 'utf8');\n if (existingLockFileContent === newMixLockContent) {\n logger.debug('mix.lock is unchanged');\n return null;\n }\n logger.debug('Returning updated mix.lock');\n return [\n {\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newMixLockContent,\n },\n },\n ];\n}\n\nasync function checkLockFileReadError(\n lockFileName: string,\n): Promise<UpdateArtifactsResult[] | null> {\n if (await localPathExists(lockFileName)) {\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: `Error reading ${lockFileName}`,\n },\n },\n ];\n }\n return null;\n}\n"]}
|
@@ -62,32 +62,34 @@ async function extractPackageFile(content, packageFile, config) {
|
|
62
62
|
logger_1.logger.warn('Updating multiple npm lock files is deprecated and support will be removed in future versions.');
|
63
63
|
}
|
64
64
|
let npmrc;
|
65
|
-
const npmrcFileName = (0, fs_1.
|
66
|
-
|
67
|
-
|
68
|
-
if (is_1.default.string(
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
else {
|
73
|
-
npmrc = config.npmrc ?? '';
|
74
|
-
if (npmrc.length) {
|
75
|
-
if (!npmrc.endsWith('\n')) {
|
76
|
-
npmrc += '\n';
|
77
|
-
}
|
78
|
-
}
|
79
|
-
if (repoNpmrc?.includes('package-lock')) {
|
80
|
-
logger_1.logger.debug('Stripping package-lock setting from .npmrc');
|
81
|
-
repoNpmrc = repoNpmrc.replace((0, regex_1.regEx)(/(^|\n)package-lock.*?(\n|$)/g), '\n');
|
65
|
+
const npmrcFileName = await (0, fs_1.findLocalSiblingOrParent)(packageFile, '.npmrc');
|
66
|
+
if (npmrcFileName) {
|
67
|
+
let repoNpmrc = await (0, fs_1.readLocalFile)(npmrcFileName, 'utf8');
|
68
|
+
if (is_1.default.string(repoNpmrc)) {
|
69
|
+
if (is_1.default.string(config.npmrc) && !config.npmrcMerge) {
|
70
|
+
logger_1.logger.debug({ npmrcFileName }, 'Repo .npmrc file is ignored due to config.npmrc with config.npmrcMerge=false');
|
71
|
+
npmrc = config.npmrc;
|
82
72
|
}
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
.
|
87
|
-
|
88
|
-
|
73
|
+
else {
|
74
|
+
npmrc = config.npmrc ?? '';
|
75
|
+
if (npmrc.length) {
|
76
|
+
if (!npmrc.endsWith('\n')) {
|
77
|
+
npmrc += '\n';
|
78
|
+
}
|
79
|
+
}
|
80
|
+
if (repoNpmrc?.includes('package-lock')) {
|
81
|
+
logger_1.logger.debug('Stripping package-lock setting from .npmrc');
|
82
|
+
repoNpmrc = repoNpmrc.replace((0, regex_1.regEx)(/(^|\n)package-lock.*?(\n|$)/g), '\n');
|
83
|
+
}
|
84
|
+
if (repoNpmrc.includes('=${') && !global_1.GlobalConfig.get('exposeAllEnv')) {
|
85
|
+
logger_1.logger.debug({ npmrcFileName }, 'Stripping .npmrc file of lines with variables');
|
86
|
+
repoNpmrc = repoNpmrc
|
87
|
+
.split(regex_1.newlineRegex)
|
88
|
+
.filter((line) => !line.includes('=${'))
|
89
|
+
.join('\n');
|
90
|
+
}
|
91
|
+
npmrc += repoNpmrc;
|
89
92
|
}
|
90
|
-
npmrc += repoNpmrc;
|
91
93
|
}
|
92
94
|
}
|
93
95
|
else if (is_1.default.string(config.npmrc)) {
|
@@ -158,6 +160,7 @@ async function extractPackageFile(content, packageFile, config) {
|
|
158
160
|
yarnZeroInstall,
|
159
161
|
hasPackageManager: is_1.default.nonEmptyStringAndNotWhitespace(packageJson.packageManager),
|
160
162
|
workspacesPackages,
|
163
|
+
npmrcFileName, // store npmrc file name so we can later tell if it came from the workspace or not
|
161
164
|
},
|
162
165
|
skipInstalls,
|
163
166
|
extractedConstraints,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/npm/extract/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { GlobalConfig } from '../../../../config/global';\nimport { logger } from '../../../../logger';\nimport {\n findLocalSiblingOrParent,\n getSiblingFileName,\n readLocalFile,\n} from '../../../../util/fs';\nimport { newlineRegex, regEx } from '../../../../util/regex';\nimport { NpmDatasource } from '../../../datasource/npm';\n\nimport type {\n ExtractConfig,\n PackageFile,\n PackageFileContent,\n} from '../../types';\nimport type { NpmLockFiles, NpmManagerData } from '../types';\nimport { getExtractedConstraints } from './common/dependency';\nimport { extractPackageJson } from './common/package-file';\nimport { extractPnpmWorkspaceFile, tryParsePnpmWorkspaceYaml } from './pnpm';\nimport { postExtract } from './post';\nimport type { NpmPackage } from './types';\nimport { isZeroInstall } from './yarn';\nimport type { YarnConfig } from './yarnrc';\nimport {\n loadConfigFromLegacyYarnrc,\n loadConfigFromYarnrcYml,\n resolveRegistryUrl,\n} from './yarnrc';\n\nfunction hasMultipleLockFiles(lockFiles: NpmLockFiles): boolean {\n return Object.values(lockFiles).filter(is.string).length > 1;\n}\n\nexport async function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): Promise<PackageFileContent<NpmManagerData> | null> {\n logger.trace(`npm.extractPackageFile(${packageFile})`);\n logger.trace({ content });\n let packageJson: NpmPackage;\n try {\n packageJson = JSON.parse(content);\n } catch {\n logger.debug({ packageFile }, `Invalid JSON`);\n return null;\n }\n\n const res = extractPackageJson(packageJson, packageFile);\n if (!res) {\n return null;\n }\n\n let workspacesPackages: string[] | undefined;\n if (is.array(packageJson.workspaces)) {\n workspacesPackages = packageJson.workspaces;\n } else {\n workspacesPackages = packageJson.workspaces?.packages;\n }\n\n const lockFiles: NpmLockFiles = {\n yarnLock: 'yarn.lock',\n packageLock: 'package-lock.json',\n shrinkwrapJson: 'npm-shrinkwrap.json',\n pnpmShrinkwrap: 'pnpm-lock.yaml',\n };\n\n for (const [key, val] of Object.entries(lockFiles) as [\n 'yarnLock' | 'packageLock' | 'shrinkwrapJson' | 'pnpmShrinkwrap',\n string,\n ][]) {\n const filePath = getSiblingFileName(packageFile, val);\n if (await readLocalFile(filePath, 'utf8')) {\n lockFiles[key] = filePath;\n } else {\n lockFiles[key] = undefined;\n }\n }\n lockFiles.npmLock = lockFiles.packageLock ?? lockFiles.shrinkwrapJson;\n delete lockFiles.packageLock;\n delete lockFiles.shrinkwrapJson;\n\n if (hasMultipleLockFiles(lockFiles)) {\n logger.warn(\n 'Updating multiple npm lock files is deprecated and support will be removed in future versions.',\n );\n }\n\n let npmrc: string | undefined;\n const npmrcFileName = getSiblingFileName(packageFile, '.npmrc');\n let repoNpmrc = await readLocalFile(npmrcFileName, 'utf8');\n if (is.string(repoNpmrc)) {\n if (is.string(config.npmrc) && !config.npmrcMerge) {\n logger.debug(\n { npmrcFileName },\n 'Repo .npmrc file is ignored due to config.npmrc with config.npmrcMerge=false',\n );\n npmrc = config.npmrc;\n } else {\n npmrc = config.npmrc ?? '';\n if (npmrc.length) {\n if (!npmrc.endsWith('\\n')) {\n npmrc += '\\n';\n }\n }\n if (repoNpmrc?.includes('package-lock')) {\n logger.debug('Stripping package-lock setting from .npmrc');\n repoNpmrc = repoNpmrc.replace(\n regEx(/(^|\\n)package-lock.*?(\\n|$)/g),\n '\\n',\n );\n }\n if (repoNpmrc.includes('=${') && !GlobalConfig.get('exposeAllEnv')) {\n logger.debug(\n { npmrcFileName },\n 'Stripping .npmrc file of lines with variables',\n );\n repoNpmrc = repoNpmrc\n .split(newlineRegex)\n .filter((line) => !line.includes('=${'))\n .join('\\n');\n }\n npmrc += repoNpmrc;\n }\n } else if (is.string(config.npmrc)) {\n npmrc = config.npmrc;\n }\n\n const yarnrcYmlFileName = await findLocalSiblingOrParent(\n packageFile,\n '.yarnrc.yml',\n );\n const yarnZeroInstall = yarnrcYmlFileName\n ? await isZeroInstall(yarnrcYmlFileName)\n : false;\n\n let yarnConfig: YarnConfig | null = null;\n const repoYarnrcYml = yarnrcYmlFileName\n ? await readLocalFile(yarnrcYmlFileName, 'utf8')\n : null;\n if (is.string(repoYarnrcYml) && repoYarnrcYml.trim().length > 0) {\n yarnConfig = loadConfigFromYarnrcYml(repoYarnrcYml);\n }\n\n const legacyYarnrcFileName = await findLocalSiblingOrParent(\n packageFile,\n '.yarnrc',\n );\n const repoLegacyYarnrc = legacyYarnrcFileName\n ? await readLocalFile(legacyYarnrcFileName, 'utf8')\n : null;\n if (is.string(repoLegacyYarnrc) && repoLegacyYarnrc.trim().length > 0) {\n yarnConfig = loadConfigFromLegacyYarnrc(repoLegacyYarnrc);\n }\n\n if (res.deps.length === 0) {\n logger.debug('Package file has no deps');\n if (\n !(\n !!res.managerData?.packageJsonName ||\n !!res.packageFileVersion ||\n !!npmrc ||\n workspacesPackages\n )\n ) {\n logger.debug('Skipping file');\n return null;\n }\n }\n let skipInstalls = config.skipInstalls;\n if (skipInstalls === null) {\n const hasFancyRefs = !!res.deps.some(\n (dep) =>\n !!dep.currentValue?.startsWith('file:') ||\n !!dep.currentValue?.startsWith('npm:'),\n );\n if ((hasFancyRefs && !!lockFiles.npmLock) || yarnZeroInstall) {\n // https://github.com/npm/cli/issues/1432\n // Explanation:\n // - npm install --package-lock-only is buggy for transitive deps in file: and npm: references\n // - So we set skipInstalls to false if file: or npm: refs are found *and* the user hasn't explicitly set the value already\n // - Also, do not skip install if Yarn zero-install is used\n logger.debug('Automatically setting skipInstalls to false');\n skipInstalls = false;\n } else {\n skipInstalls = true;\n }\n }\n\n const extractedConstraints = getExtractedConstraints(res.deps);\n\n if (yarnConfig) {\n for (const dep of res.deps) {\n if (dep.depName) {\n const registryUrlFromYarnConfig = resolveRegistryUrl(\n dep.packageName ?? dep.depName,\n yarnConfig,\n );\n if (registryUrlFromYarnConfig && dep.datasource === NpmDatasource.id) {\n dep.registryUrls = [registryUrlFromYarnConfig];\n }\n }\n }\n }\n\n return {\n ...res,\n npmrc,\n managerData: {\n ...res.managerData,\n ...lockFiles,\n yarnZeroInstall,\n hasPackageManager: is.nonEmptyStringAndNotWhitespace(\n packageJson.packageManager,\n ),\n workspacesPackages,\n },\n skipInstalls,\n extractedConstraints,\n };\n}\n\nexport async function extractAllPackageFiles(\n config: ExtractConfig,\n packageFiles: string[],\n): Promise<PackageFile<NpmManagerData>[]> {\n const npmFiles: PackageFile<NpmManagerData>[] = [];\n for (const packageFile of packageFiles) {\n const content = await readLocalFile(packageFile, 'utf8');\n // istanbul ignore else\n if (content) {\n // pnpm workspace files are their own package file, defined via managerFilePatterns.\n // We duck-type the content here, to allow users to rename the file itself.\n const parsedPnpmWorkspaceYaml = tryParsePnpmWorkspaceYaml(content);\n if (parsedPnpmWorkspaceYaml.success) {\n logger.trace(\n { packageFile },\n `Extracting file as a pnpm workspace YAML file`,\n );\n const deps = await extractPnpmWorkspaceFile(\n parsedPnpmWorkspaceYaml.data,\n packageFile,\n );\n if (deps) {\n npmFiles.push({\n ...deps,\n packageFile,\n });\n }\n } else {\n logger.trace({ packageFile }, `Extracting as a package.json file`);\n const deps = await extractPackageFile(content, packageFile, config);\n if (deps) {\n npmFiles.push({\n ...deps,\n packageFile,\n });\n }\n }\n } else {\n logger.debug({ packageFile }, `No content found`);\n }\n }\n\n await postExtract(npmFiles);\n return npmFiles;\n}\n"]}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/npm/extract/index.ts"],"names":[],"mappings":";;AAkCA,gDA8LC;AAED,wDA4CC;;AA9QD,kEAAkC;AAClC,sDAAyD;AACzD,+CAA4C;AAC5C,4CAI6B;AAC7B,kDAA6D;AAC7D,iDAAwD;AAQxD,oDAA8D;AAC9D,wDAA2D;AAC3D,iCAA6E;AAC7E,iCAAqC;AAErC,iCAAuC;AAEvC,qCAIkB;AAElB,SAAS,oBAAoB,CAAC,SAAuB;IACnD,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,YAAE,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC/D,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,WAAmB,EACnB,MAAqB;IAErB,eAAM,CAAC,KAAK,CAAC,0BAA0B,WAAW,GAAG,CAAC,CAAC;IACvD,eAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1B,IAAI,WAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,EAAE,cAAc,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,iCAAkB,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,kBAAwC,CAAC;IAC7C,IAAI,YAAE,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,kBAAkB,GAAG,WAAW,CAAC,UAAU,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,kBAAkB,GAAG,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC;IACxD,CAAC;IAED,MAAM,SAAS,GAAiB;QAC9B,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,mBAAmB;QAChC,cAAc,EAAE,qBAAqB;QACrC,cAAc,EAAE,gBAAgB;KACjC,CAAC;IAEF,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAG9C,EAAE,CAAC;QACJ,MAAM,QAAQ,GAAG,IAAA,uBAAkB,EAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACtD,IAAI,MAAM,IAAA,kBAAa,EAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;YAC1C,SAAS,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,cAAc,CAAC;IACtE,OAAO,SAAS,CAAC,WAAW,CAAC;IAC7B,OAAO,SAAS,CAAC,cAAc,CAAC;IAEhC,IAAI,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,eAAM,CAAC,IAAI,CACT,gGAAgG,CACjG,CAAC;IACJ,CAAC;IAED,IAAI,KAAyB,CAAC;IAC9B,MAAM,aAAa,GAAG,MAAM,IAAA,6BAAwB,EAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC5E,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,SAAS,GAAG,MAAM,IAAA,kBAAa,EAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,YAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,IAAI,YAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAClD,eAAM,CAAC,KAAK,CACV,EAAE,aAAa,EAAE,EACjB,8EAA8E,CAC/E,CAAC;gBACF,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC3B,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC1B,KAAK,IAAI,IAAI,CAAC;oBAChB,CAAC;gBACH,CAAC;gBACD,IAAI,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBACxC,eAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;oBAC3D,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,IAAA,aAAK,EAAC,8BAA8B,CAAC,EACrC,IAAI,CACL,CAAC;gBACJ,CAAC;gBACD,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAY,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;oBACnE,eAAM,CAAC,KAAK,CACV,EAAE,aAAa,EAAE,EACjB,+CAA+C,CAChD,CAAC;oBACF,SAAS,GAAG,SAAS;yBAClB,KAAK,CAAC,oBAAY,CAAC;yBACnB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;yBACvC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;gBACD,KAAK,IAAI,SAAS,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,YAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,IAAA,6BAAwB,EACtD,WAAW,EACX,aAAa,CACd,CAAC;IACF,MAAM,eAAe,GAAG,iBAAiB;QACvC,CAAC,CAAC,MAAM,IAAA,oBAAa,EAAC,iBAAiB,CAAC;QACxC,CAAC,CAAC,KAAK,CAAC;IAEV,IAAI,UAAU,GAAsB,IAAI,CAAC;IACzC,MAAM,aAAa,GAAG,iBAAiB;QACrC,CAAC,CAAC,MAAM,IAAA,kBAAa,EAAC,iBAAiB,EAAE,MAAM,CAAC;QAChD,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,YAAE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,UAAU,GAAG,IAAA,gCAAuB,EAAC,aAAa,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,oBAAoB,GAAG,MAAM,IAAA,6BAAwB,EACzD,WAAW,EACX,SAAS,CACV,CAAC;IACF,MAAM,gBAAgB,GAAG,oBAAoB;QAC3C,CAAC,CAAC,MAAM,IAAA,kBAAa,EAAC,oBAAoB,EAAE,MAAM,CAAC;QACnD,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,YAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtE,UAAU,GAAG,IAAA,mCAA0B,EAAC,gBAAgB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,eAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACzC,IACE,CAAC,CACC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,eAAe;YAClC,CAAC,CAAC,GAAG,CAAC,kBAAkB;YACxB,CAAC,CAAC,KAAK;YACP,kBAAkB,CACnB,EACD,CAAC;YACD,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,IAAI,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IACvC,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAClC,CAAC,GAAG,EAAE,EAAE,CACN,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC;YACvC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;YAC7D,yCAAyC;YACzC,eAAe;YACf,+FAA+F;YAC/F,4HAA4H;YAC5H,4DAA4D;YAC5D,eAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC5D,YAAY,GAAG,KAAK,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED,MAAM,oBAAoB,GAAG,IAAA,oCAAuB,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE/D,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBAChB,MAAM,yBAAyB,GAAG,IAAA,2BAAkB,EAClD,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,EAC9B,UAAU,CACX,CAAC;gBACF,IAAI,yBAAyB,IAAI,GAAG,CAAC,UAAU,KAAK,mBAAa,CAAC,EAAE,EAAE,CAAC;oBACrE,GAAG,CAAC,YAAY,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,GAAG;QACN,KAAK;QACL,WAAW,EAAE;YACX,GAAG,GAAG,CAAC,WAAW;YAClB,GAAG,SAAS;YACZ,eAAe;YACf,iBAAiB,EAAE,YAAE,CAAC,8BAA8B,CAClD,WAAW,CAAC,cAAc,CAC3B;YACD,kBAAkB;YAClB,aAAa,EAAE,kFAAkF;SAClG;QACD,YAAY;QACZ,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,MAAqB,EACrB,YAAsB;IAEtB,MAAM,QAAQ,GAAkC,EAAE,CAAC;IACnD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAa,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACzD,uBAAuB;QACvB,IAAI,OAAO,EAAE,CAAC;YACZ,oFAAoF;YACpF,2EAA2E;YAC3E,MAAM,uBAAuB,GAAG,IAAA,gCAAyB,EAAC,OAAO,CAAC,CAAC;YACnE,IAAI,uBAAuB,CAAC,OAAO,EAAE,CAAC;gBACpC,eAAM,CAAC,KAAK,CACV,EAAE,WAAW,EAAE,EACf,+CAA+C,CAChD,CAAC;gBACF,MAAM,IAAI,GAAG,MAAM,IAAA,+BAAwB,EACzC,uBAAuB,CAAC,IAAI,EAC5B,WAAW,CACZ,CAAC;gBACF,IAAI,IAAI,EAAE,CAAC;oBACT,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG,IAAI;wBACP,WAAW;qBACZ,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBACnE,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;gBACpE,IAAI,IAAI,EAAE,CAAC;oBACT,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG,IAAI;wBACP,WAAW;qBACZ,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,EAAE,kBAAkB,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,MAAM,IAAA,kBAAW,EAAC,QAAQ,CAAC,CAAC;IAC5B,OAAO,QAAQ,CAAC;AAClB,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { GlobalConfig } from '../../../../config/global';\nimport { logger } from '../../../../logger';\nimport {\n findLocalSiblingOrParent,\n getSiblingFileName,\n readLocalFile,\n} from '../../../../util/fs';\nimport { newlineRegex, regEx } from '../../../../util/regex';\nimport { NpmDatasource } from '../../../datasource/npm';\n\nimport type {\n ExtractConfig,\n PackageFile,\n PackageFileContent,\n} from '../../types';\nimport type { NpmLockFiles, NpmManagerData } from '../types';\nimport { getExtractedConstraints } from './common/dependency';\nimport { extractPackageJson } from './common/package-file';\nimport { extractPnpmWorkspaceFile, tryParsePnpmWorkspaceYaml } from './pnpm';\nimport { postExtract } from './post';\nimport type { NpmPackage } from './types';\nimport { isZeroInstall } from './yarn';\nimport type { YarnConfig } from './yarnrc';\nimport {\n loadConfigFromLegacyYarnrc,\n loadConfigFromYarnrcYml,\n resolveRegistryUrl,\n} from './yarnrc';\n\nfunction hasMultipleLockFiles(lockFiles: NpmLockFiles): boolean {\n return Object.values(lockFiles).filter(is.string).length > 1;\n}\n\nexport async function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): Promise<PackageFileContent<NpmManagerData> | null> {\n logger.trace(`npm.extractPackageFile(${packageFile})`);\n logger.trace({ content });\n let packageJson: NpmPackage;\n try {\n packageJson = JSON.parse(content);\n } catch {\n logger.debug({ packageFile }, `Invalid JSON`);\n return null;\n }\n\n const res = extractPackageJson(packageJson, packageFile);\n if (!res) {\n return null;\n }\n\n let workspacesPackages: string[] | undefined;\n if (is.array(packageJson.workspaces)) {\n workspacesPackages = packageJson.workspaces;\n } else {\n workspacesPackages = packageJson.workspaces?.packages;\n }\n\n const lockFiles: NpmLockFiles = {\n yarnLock: 'yarn.lock',\n packageLock: 'package-lock.json',\n shrinkwrapJson: 'npm-shrinkwrap.json',\n pnpmShrinkwrap: 'pnpm-lock.yaml',\n };\n\n for (const [key, val] of Object.entries(lockFiles) as [\n 'yarnLock' | 'packageLock' | 'shrinkwrapJson' | 'pnpmShrinkwrap',\n string,\n ][]) {\n const filePath = getSiblingFileName(packageFile, val);\n if (await readLocalFile(filePath, 'utf8')) {\n lockFiles[key] = filePath;\n } else {\n lockFiles[key] = undefined;\n }\n }\n lockFiles.npmLock = lockFiles.packageLock ?? lockFiles.shrinkwrapJson;\n delete lockFiles.packageLock;\n delete lockFiles.shrinkwrapJson;\n\n if (hasMultipleLockFiles(lockFiles)) {\n logger.warn(\n 'Updating multiple npm lock files is deprecated and support will be removed in future versions.',\n );\n }\n\n let npmrc: string | undefined;\n const npmrcFileName = await findLocalSiblingOrParent(packageFile, '.npmrc');\n if (npmrcFileName) {\n let repoNpmrc = await readLocalFile(npmrcFileName, 'utf8');\n if (is.string(repoNpmrc)) {\n if (is.string(config.npmrc) && !config.npmrcMerge) {\n logger.debug(\n { npmrcFileName },\n 'Repo .npmrc file is ignored due to config.npmrc with config.npmrcMerge=false',\n );\n npmrc = config.npmrc;\n } else {\n npmrc = config.npmrc ?? '';\n if (npmrc.length) {\n if (!npmrc.endsWith('\\n')) {\n npmrc += '\\n';\n }\n }\n if (repoNpmrc?.includes('package-lock')) {\n logger.debug('Stripping package-lock setting from .npmrc');\n repoNpmrc = repoNpmrc.replace(\n regEx(/(^|\\n)package-lock.*?(\\n|$)/g),\n '\\n',\n );\n }\n if (repoNpmrc.includes('=${') && !GlobalConfig.get('exposeAllEnv')) {\n logger.debug(\n { npmrcFileName },\n 'Stripping .npmrc file of lines with variables',\n );\n repoNpmrc = repoNpmrc\n .split(newlineRegex)\n .filter((line) => !line.includes('=${'))\n .join('\\n');\n }\n npmrc += repoNpmrc;\n }\n }\n } else if (is.string(config.npmrc)) {\n npmrc = config.npmrc;\n }\n\n const yarnrcYmlFileName = await findLocalSiblingOrParent(\n packageFile,\n '.yarnrc.yml',\n );\n const yarnZeroInstall = yarnrcYmlFileName\n ? await isZeroInstall(yarnrcYmlFileName)\n : false;\n\n let yarnConfig: YarnConfig | null = null;\n const repoYarnrcYml = yarnrcYmlFileName\n ? await readLocalFile(yarnrcYmlFileName, 'utf8')\n : null;\n if (is.string(repoYarnrcYml) && repoYarnrcYml.trim().length > 0) {\n yarnConfig = loadConfigFromYarnrcYml(repoYarnrcYml);\n }\n\n const legacyYarnrcFileName = await findLocalSiblingOrParent(\n packageFile,\n '.yarnrc',\n );\n const repoLegacyYarnrc = legacyYarnrcFileName\n ? await readLocalFile(legacyYarnrcFileName, 'utf8')\n : null;\n if (is.string(repoLegacyYarnrc) && repoLegacyYarnrc.trim().length > 0) {\n yarnConfig = loadConfigFromLegacyYarnrc(repoLegacyYarnrc);\n }\n\n if (res.deps.length === 0) {\n logger.debug('Package file has no deps');\n if (\n !(\n !!res.managerData?.packageJsonName ||\n !!res.packageFileVersion ||\n !!npmrc ||\n workspacesPackages\n )\n ) {\n logger.debug('Skipping file');\n return null;\n }\n }\n let skipInstalls = config.skipInstalls;\n if (skipInstalls === null) {\n const hasFancyRefs = !!res.deps.some(\n (dep) =>\n !!dep.currentValue?.startsWith('file:') ||\n !!dep.currentValue?.startsWith('npm:'),\n );\n if ((hasFancyRefs && !!lockFiles.npmLock) || yarnZeroInstall) {\n // https://github.com/npm/cli/issues/1432\n // Explanation:\n // - npm install --package-lock-only is buggy for transitive deps in file: and npm: references\n // - So we set skipInstalls to false if file: or npm: refs are found *and* the user hasn't explicitly set the value already\n // - Also, do not skip install if Yarn zero-install is used\n logger.debug('Automatically setting skipInstalls to false');\n skipInstalls = false;\n } else {\n skipInstalls = true;\n }\n }\n\n const extractedConstraints = getExtractedConstraints(res.deps);\n\n if (yarnConfig) {\n for (const dep of res.deps) {\n if (dep.depName) {\n const registryUrlFromYarnConfig = resolveRegistryUrl(\n dep.packageName ?? dep.depName,\n yarnConfig,\n );\n if (registryUrlFromYarnConfig && dep.datasource === NpmDatasource.id) {\n dep.registryUrls = [registryUrlFromYarnConfig];\n }\n }\n }\n }\n\n return {\n ...res,\n npmrc,\n managerData: {\n ...res.managerData,\n ...lockFiles,\n yarnZeroInstall,\n hasPackageManager: is.nonEmptyStringAndNotWhitespace(\n packageJson.packageManager,\n ),\n workspacesPackages,\n npmrcFileName, // store npmrc file name so we can later tell if it came from the workspace or not\n },\n skipInstalls,\n extractedConstraints,\n };\n}\n\nexport async function extractAllPackageFiles(\n config: ExtractConfig,\n packageFiles: string[],\n): Promise<PackageFile<NpmManagerData>[]> {\n const npmFiles: PackageFile<NpmManagerData>[] = [];\n for (const packageFile of packageFiles) {\n const content = await readLocalFile(packageFile, 'utf8');\n // istanbul ignore else\n if (content) {\n // pnpm workspace files are their own package file, defined via managerFilePatterns.\n // We duck-type the content here, to allow users to rename the file itself.\n const parsedPnpmWorkspaceYaml = tryParsePnpmWorkspaceYaml(content);\n if (parsedPnpmWorkspaceYaml.success) {\n logger.trace(\n { packageFile },\n `Extracting file as a pnpm workspace YAML file`,\n );\n const deps = await extractPnpmWorkspaceFile(\n parsedPnpmWorkspaceYaml.data,\n packageFile,\n );\n if (deps) {\n npmFiles.push({\n ...deps,\n packageFile,\n });\n }\n } else {\n logger.trace({ packageFile }, `Extracting as a package.json file`);\n const deps = await extractPackageFile(content, packageFile, config);\n if (deps) {\n npmFiles.push({\n ...deps,\n packageFile,\n });\n }\n }\n } else {\n logger.debug({ packageFile }, `No content found`);\n }\n }\n\n await postExtract(npmFiles);\n return npmFiles;\n}\n"]}
|
@@ -12,7 +12,7 @@ const deepmerge_1 = tslib_1.__importDefault(require("deepmerge"));
|
|
12
12
|
const upath_1 = tslib_1.__importDefault(require("upath"));
|
13
13
|
const logger_1 = require("../../../../logger");
|
14
14
|
const external_host_error_1 = require("../../../../types/errors/external-host-error");
|
15
|
-
const env_1 = require("../../../../util/
|
15
|
+
const env_1 = require("../../../../util/env");
|
16
16
|
const fs_1 = require("../../../../util/fs");
|
17
17
|
const git_1 = require("../../../../util/git");
|
18
18
|
const hostRules = tslib_1.__importStar(require("../../../../util/host-rules"));
|
@@ -95,7 +95,11 @@ async function writeExistingFiles(config, packageFiles) {
|
|
95
95
|
const basedir = upath_1.default.dirname(packageFile.packageFile);
|
96
96
|
const npmrc = packageFile.npmrc;
|
97
97
|
const npmrcFilename = upath_1.default.join(basedir, '.npmrc');
|
98
|
-
|
98
|
+
// Write out the file unless the npmrc came from the workspace
|
99
|
+
// npmrcFilename will be set whenever the file was read from disk during extract
|
100
|
+
if (is_1.default.string(npmrc) &&
|
101
|
+
(npmrcFilename === packageFile.managerData.npmrcFileName ||
|
102
|
+
!packageFile.managerData.npmrcFileName)) {
|
99
103
|
try {
|
100
104
|
await (0, fs_1.writeLocalFile)(npmrcFilename, npmrc.replace(/\n?$/, '\n'));
|
101
105
|
}
|
@@ -305,8 +309,10 @@ async function getAdditionalFiles(config, packageFiles) {
|
|
305
309
|
await writeExistingFiles(config, packageFiles);
|
306
310
|
await writeUpdatedPackageFiles(config);
|
307
311
|
const { additionalNpmrcContent, additionalYarnRcYml } = (0, rules_1.processHostRules)();
|
312
|
+
// This isn't passed directly to the child process, so no need to filter.
|
313
|
+
// But pass custom env and user vars.
|
308
314
|
const env = {
|
309
|
-
...(0, env_1.
|
315
|
+
...(0, env_1.getEnv)(),
|
310
316
|
NPM_CONFIG_CACHE: await (0, fs_1.ensureCacheDir)('npm'),
|
311
317
|
YARN_CACHE_FOLDER: await (0, fs_1.ensureCacheDir)('yarn'),
|
312
318
|
YARN_GLOBAL_FOLDER: await (0, fs_1.ensureCacheDir)('berry'),
|