From 3a5ad66d5e255d7741a3b4b7dd74722ff6afa2de Mon Sep 17 00:00:00 2001 From: Oleg Krivtsov Date: Wed, 8 Dec 2021 17:38:15 +0700 Subject: [PATCH 01/11] fix(manager/nuget): support package sources with whitespaces in keys (#12882) --- .../with-whitespaces/NuGet.config | 8 ++++++++ .../with-whitespaces/with-whitespaces.csproj | 12 +++++++++++ lib/manager/nuget/artifacts.ts | 3 ++- lib/manager/nuget/extract.spec.ts | 20 +++++++++++++++++++ 4 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 lib/manager/nuget/__fixtures__/with-whitespaces/NuGet.config create mode 100644 lib/manager/nuget/__fixtures__/with-whitespaces/with-whitespaces.csproj diff --git a/lib/manager/nuget/__fixtures__/with-whitespaces/NuGet.config b/lib/manager/nuget/__fixtures__/with-whitespaces/NuGet.config new file mode 100644 index 00000000000000..cc8abe128eb32c --- /dev/null +++ b/lib/manager/nuget/__fixtures__/with-whitespaces/NuGet.config @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/lib/manager/nuget/__fixtures__/with-whitespaces/with-whitespaces.csproj b/lib/manager/nuget/__fixtures__/with-whitespaces/with-whitespaces.csproj new file mode 100644 index 00000000000000..872e2011797349 --- /dev/null +++ b/lib/manager/nuget/__fixtures__/with-whitespaces/with-whitespaces.csproj @@ -0,0 +1,12 @@ + + + + netcoreapp3.1 + true + + + + + + + diff --git a/lib/manager/nuget/artifacts.ts b/lib/manager/nuget/artifacts.ts index a3b6fdeaab8d33..3ff382af536705 100644 --- a/lib/manager/nuget/artifacts.ts +++ b/lib/manager/nuget/artifacts.ts @@ -1,4 +1,5 @@ import { join } from 'path'; +import { quote } from 'shlex'; import { GlobalConfig } from '../../config/global'; import { TEMPORARY_ERROR } from '../../constants/error-messages'; import { id, parseRegistryUrl } from '../../datasource/nuget'; @@ -45,7 +46,7 @@ async function addSourceCmds( let addSourceCmd = `dotnet nuget add source ${registryInfo.feedUrl} --configfile ${nugetConfigFile}`; if (registry.name) { // Add name for registry, if known. - addSourceCmd += ` --name ${registry.name}`; + addSourceCmd += ` --name ${quote(registry.name)}`; } if (username && password) { // Add registry credentials from host rules, if configured. diff --git a/lib/manager/nuget/extract.spec.ts b/lib/manager/nuget/extract.spec.ts index e12e01825c8af8..d12fc9b4e69adb 100644 --- a/lib/manager/nuget/extract.spec.ts +++ b/lib/manager/nuget/extract.spec.ts @@ -132,6 +132,26 @@ describe('manager/nuget/extract', () => { ], }); }); + + it('handles NuGet.config with whitespaces in package source keys', async () => { + const packageFile = 'with-whitespaces/with-whitespaces.csproj'; + const contents = loadFixture(packageFile); + expect(await extractPackageFile(contents, packageFile, config)).toEqual({ + deps: [ + { + currentValue: '12.0.3', + datasource: 'nuget', + depName: 'Newtonsoft.Json', + depType: 'nuget', + registryUrls: [ + 'https://api.nuget.org/v3/index.json#protocolVersion=3', + 'https://my.myget.org/F/my/auth/guid/api/v3/index.json', + ], + }, + ], + }); + }); + it('ignores local feed in NuGet.config', async () => { const packageFile = 'with-local-feed-in-config-file/with-local-feed-in-config-file.csproj'; From 3fa21fbf8341893852a3e086631f21e667274246 Mon Sep 17 00:00:00 2001 From: Oleg Krivtsov Date: Wed, 8 Dec 2021 19:11:43 +0700 Subject: [PATCH 02/11] feat(workers/global): check git at startup (#12935) --- lib/util/git/index.spec.ts | 7 ++++++ lib/util/git/index.ts | 36 +++++++++++++++++++++++++++ lib/workers/global/initialize.spec.ts | 21 ++++++++++++++++ lib/workers/global/initialize.ts | 9 +++++++ 4 files changed, 73 insertions(+) create mode 100644 lib/workers/global/initialize.spec.ts diff --git a/lib/util/git/index.spec.ts b/lib/util/git/index.spec.ts index 23dfe76acf5a0f..1b4e1282193ee7 100644 --- a/lib/util/git/index.spec.ts +++ b/lib/util/git/index.spec.ts @@ -94,6 +94,13 @@ describe('util/git/index', () => { await base.cleanup(); }); + describe('validateGitVersion()', () => { + it('has a git version greater or equal to the minimum required', async () => { + const res = await git.validateGitVersion(); + expect(res).toBeTrue(); + }); + }); + describe('checkoutBranch(branchName)', () => { it('sets the base branch as master', async () => { await expect(git.checkoutBranch(defaultBranch)).resolves.not.toThrow(); diff --git a/lib/util/git/index.ts b/lib/util/git/index.ts index 58f5450373eef1..c9130d17189973 100644 --- a/lib/util/git/index.ts +++ b/lib/util/git/index.ts @@ -16,6 +16,7 @@ import { import { logger } from '../../logger'; import { ExternalHostError } from '../../types/errors/external-host-error'; import type { GitProtocol } from '../../types/git'; +import { api as semverCoerced } from '../../versioning/semver-coerced'; import { Limit, incLimitedValue } from '../../workers/global/limits'; import { regEx } from '../regex'; import { parseGitAuthor } from './author'; @@ -143,6 +144,41 @@ let gitInitialized: boolean; let privateKeySet = false; +export const GIT_MINIMUM_VERSION = '2.33.0'; // git show-current + +export async function validateGitVersion(): Promise { + let version: string; + const globalGit = Git(); + try { + const raw = await globalGit.raw(['--version']); + for (const section of raw.split(/\s+/)) { + if (semverCoerced.isVersion(section)) { + version = section; + break; + } + } + } catch (err) /* istanbul ignore next */ { + logger.error({ err }, 'Error fetching git version'); + return false; + } + // istanbul ignore if + if ( + !( + version && + (version === GIT_MINIMUM_VERSION || + semverCoerced.isGreaterThan(version, GIT_MINIMUM_VERSION)) + ) + ) { + logger.error( + { detectedVersion: version, minimumVersion: GIT_MINIMUM_VERSION }, + 'Git version needs upgrading' + ); + return false; + } + logger.debug(`Found valid git version: ${version}`); + return true; +} + async function fetchBranchCommits(): Promise { config.branchCommits = {}; const opts = ['ls-remote', '--heads', config.url]; diff --git a/lib/workers/global/initialize.spec.ts b/lib/workers/global/initialize.spec.ts new file mode 100644 index 00000000000000..27df1dca77973a --- /dev/null +++ b/lib/workers/global/initialize.spec.ts @@ -0,0 +1,21 @@ +import { git } from '../../../test/util'; +import type { RenovateConfig } from '../../config/types'; +import { globalInitialize } from './initialize'; + +jest.mock('../../util/git'); + +describe('workers/global/initialize', () => { + describe('checkVersions()', () => { + it('throws if invalid version', async () => { + const config: RenovateConfig = {}; + git.validateGitVersion.mockResolvedValueOnce(false); + await expect(globalInitialize(config)).rejects.toThrow(); + }); + + it('returns if valid git version', async () => { + const config: RenovateConfig = {}; + git.validateGitVersion.mockResolvedValueOnce(true); + await expect(globalInitialize(config)).toResolve(); + }); + }); +}); diff --git a/lib/workers/global/initialize.ts b/lib/workers/global/initialize.ts index c82fc237bbd24c..fa374d1a5ac0bf 100644 --- a/lib/workers/global/initialize.ts +++ b/lib/workers/global/initialize.ts @@ -6,6 +6,7 @@ import { logger } from '../../logger'; import { initPlatform } from '../../platform'; import * as packageCache from '../../util/cache/package'; import { setEmojiConfig } from '../../util/emoji'; +import { validateGitVersion } from '../../util/git'; import { Limit, setMaxLimit } from './limits'; async function setDirectories(input: AllConfig): Promise { @@ -34,10 +35,18 @@ function limitCommitsPerRun(config: RenovateConfig): void { setMaxLimit(Limit.Commits, limit); } +async function checkVersions(): Promise { + const validGitVersion = await validateGitVersion(); + if (!validGitVersion) { + throw new Error('Init: git version needs upgrading'); + } +} + export async function globalInitialize( config_: RenovateConfig ): Promise { let config = config_; + await checkVersions(); config = await initPlatform(config); config = await setDirectories(config); packageCache.init(config); From b7b0d0441fe77b8f29f625c5be4a1dc132ec8f9a Mon Sep 17 00:00:00 2001 From: Sebastian Poxhofer Date: Wed, 8 Dec 2021 13:21:37 +0100 Subject: [PATCH 03/11] feat(presets): add opentelemetry-go monorepo (#13008) Co-authored-by: Rhys Arkins --- lib/config/presets/internal/monorepo.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/config/presets/internal/monorepo.ts b/lib/config/presets/internal/monorepo.ts index bc6f0b5c10d528..191f501cf4f83b 100644 --- a/lib/config/presets/internal/monorepo.ts +++ b/lib/config/presets/internal/monorepo.ts @@ -149,6 +149,7 @@ const repoGroups = { 'opentelemetry-js': 'https://github.com/open-telemetry/opentelemetry-js', 'opentelemetry-dotnet': 'https://github.com/open-telemetry/opentelemetry-dotnet', + 'opentelemetry-go': 'https://github.com/open-telemetry/opentelemetry-go', picassojs: 'https://github.com/qlik-oss/picasso.js', pnpjs: 'https://github.com/pnp/pnpjs', playwright: 'https://github.com/Microsoft/playwright', From 59026c262eb19e07b01230cdf82ef803133ebd55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ana=20Krivokapi=C4=87?= Date: Wed, 8 Dec 2021 14:11:20 +0100 Subject: [PATCH 04/11] feat(config): Make ignore comments configurable (#12917) --- docs/usage/configuration-options.md | 25 +++++++++++++++++++++++++ lib/config/options/index.ts | 15 +++++++++++++++ lib/manager/types.ts | 1 + lib/workers/branch/handle-existing.ts | 10 +++++----- 4 files changed, 46 insertions(+), 5 deletions(-) diff --git a/docs/usage/configuration-options.md b/docs/usage/configuration-options.md index 971d7e46895a3c..0e2b6d8d7add80 100644 --- a/docs/usage/configuration-options.md +++ b/docs/usage/configuration-options.md @@ -2545,6 +2545,31 @@ If you wish to disable all updates outside of scheduled hours then configure thi By default, Renovate will attempt to update all detected dependencies, regardless of whether they are defined using pinned single versions (e.g. `1.2.3`) or constraints/ranges (e.g. (`^1.2.3`). You can set this option to `false` if you wish to disable updating for pinned (single version) dependencies specifically. +## userStrings + +User-facing strings pertaining to the PR comment that gets posted when a PR is closed. +When a PR is closed, Renovate posts a comment to let users know that future updates will be ignored. + +The following strings can currently be customized: + +- `ignoreDigest`: Text of the PR comment for digest upgrades. +- `ignoreMajor`: Text of the PR comment for major upgrades. +- `ignoreOther`: Text of the PR comment for other (neither digest nor major) upgrades. +- `ignoreTopic`: Topic of the PR comment. + +Example: + +```json +{ + "userStrings": { + "ignoreTopic": "Custom topic for PR comment", + "ignoreMajor": "Custom text for major upgrades.", + "ignoreDigest": "Custom text for digest upgrades.", + "ignoreOther": "Custom text for other upgrades." + } +} +``` + ## versioning Usually, each language or package manager has a specific type of "versioning": diff --git a/lib/config/options/index.ts b/lib/config/options/index.ts index 230978b66338b2..3f12e873009b0d 100644 --- a/lib/config/options/index.ts +++ b/lib/config/options/index.ts @@ -2191,6 +2191,21 @@ const options: RenovateOptions[] = [ type: 'boolean', default: false, }, + { + name: 'userStrings', + description: + 'User-facing strings pertaining to the PR comment that gets posted when a PR is closed.', + type: 'object', + default: { + ignoreTopic: 'Renovate Ignore Notification', + ignoreMajor: + 'As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for *any* future {{{newMajor}}}.x releases. However, if you upgrade to {{{newMajor}}}.x manually then Renovate will reenable minor and patch updates automatically.', + ignoreDigest: + 'As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for *any* future {{{depName}}}:{{{currentValue}}} digest updates. Digest updates will resume if you update the specified tag at any time.', + ignoreOther: + 'As this PR has been closed unmerged, Renovate will now ignore this update ({{{newValue}}}). You will still receive a PR once a newer version is released, so if you wish to permanently ignore this dependency, please add it to the `ignoreDeps` array of your renovate config.', + }, + }, ]; export function getOptions(): RenovateOptions[] { diff --git a/lib/manager/types.ts b/lib/manager/types.ts index 77f848f3569445..72acef11ce2d4b 100644 --- a/lib/manager/types.ts +++ b/lib/manager/types.ts @@ -142,6 +142,7 @@ export interface LookupUpdate { pendingVersions?: string[]; newVersion?: string; updateType?: UpdateType; + userStrings?: Record; } export interface PackageDependency> extends Package { diff --git a/lib/workers/branch/handle-existing.ts b/lib/workers/branch/handle-existing.ts index e0d00108fe97bb..ee4bd97b83f12c 100644 --- a/lib/workers/branch/handle-existing.ts +++ b/lib/workers/branch/handle-existing.ts @@ -3,22 +3,22 @@ import { logger } from '../../logger'; import { Pr, platform } from '../../platform'; import { PrState } from '../../types'; import { branchExists, deleteBranch } from '../../util/git'; +import * as template from '../../util/template'; import { BranchConfig } from '../types'; export async function handlepr(config: BranchConfig, pr: Pr): Promise { if (pr.state === PrState.Closed) { let content; if (config.updateType === 'major') { - content = `As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for *any* future ${config.newMajor}.x releases. However, if you upgrade to ${config.newMajor}.x manually then Renovate will then reenable updates for minor and patch updates automatically.`; + content = template.compile(config.userStrings.ignoreMajor, config); } else if (config.updateType === 'digest') { - content = `As this PR has been closed unmerged, Renovate will ignore this upgrade updateType and you will not receive PRs for *any* future ${config.depName}:${config.currentValue} digest updates. Digest updates will resume if you update the specified tag at any time.`; + content = template.compile(config.userStrings.ignoreDigest, config); } else { - content = `As this PR has been closed unmerged, Renovate will now ignore this update (${config.newValue}). You will still receive a PR once a newer version is released, so if you wish to permanently ignore this dependency, please add it to the \`ignoreDeps\` array of your renovate config.`; + content = template.compile(config.userStrings.ignoreOther, config); } content += '\n\nIf this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.'; if (!config.suppressNotifications.includes('prIgnoreNotification')) { - const ignoreTopic = `Renovate Ignore Notification`; if (GlobalConfig.get('dryRun')) { logger.info( `DRY-RUN: Would ensure closed PR comment in PR #${pr.number}` @@ -26,7 +26,7 @@ export async function handlepr(config: BranchConfig, pr: Pr): Promise { } else { await platform.ensureComment({ number: pr.number, - topic: ignoreTopic, + topic: config.userStrings.ignoreTopic, content, }); } From 65ed85a652db4e7e5de6f6d0b806afa362b1751c Mon Sep 17 00:00:00 2001 From: Sebastian Poxhofer Date: Wed, 8 Dec 2021 14:21:04 +0100 Subject: [PATCH 05/11] feat(presets): group kubernetes dependencies (#13007) --- lib/config/presets/internal/group.ts | 40 ++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/lib/config/presets/internal/group.ts b/lib/config/presets/internal/group.ts index 5a93ae7ff9da40..05225325dd4bff 100644 --- a/lib/config/presets/internal/group.ts +++ b/lib/config/presets/internal/group.ts @@ -63,6 +63,7 @@ const staticGroups = { 'group:jekyllEcosystem', 'group:jestPlusTSJest', 'group:jestPlusTypes', + 'group:kubernetes', 'group:polymer', 'group:resilience4j', 'group:rubyOmniauth', @@ -493,6 +494,45 @@ const staticGroups = { }, ], }, + kubernetes: { + description: 'Group kubernetes packages together', + packageRules: [ + { + matchDatasources: ['go'], + groupName: 'kubernetes packages', + groupSlug: 'kubernetes-go', + matchPackagePrefixes: [ + 'k8s.io/api', + 'k8s.io/apiextensions-apiserver', + 'k8s.io/apimachinery', + 'k8s.io/apiserver', + 'k8s.io/cli-runtime', + 'k8s.io/client-go', + 'k8s.io/cloud-provider', + 'k8s.io/cluster-bootstrap', + 'k8s.io/code-generator', + 'k8s.io/component-base', + 'k8s.io/controller-manager', + 'k8s.io/cri-api', + // 'k8s.io/csi-api', has not go.mod set up and does not follow the versioning of other repos + 'k8s.io/csi-translation-lib', + 'k8s.io/kube-aggregator', + 'k8s.io/kube-controller-manager', + 'k8s.io/kube-proxy', + 'k8s.io/kube-scheduler', + 'k8s.io/kubectl', + 'k8s.io/kubelet', + 'k8s.io/legacy-cloud-providers', + 'k8s.io/metrics', + 'k8s.io/mount-utils', + 'k8s.io/pod-security-admission', + 'k8s.io/sample-apiserver', + 'k8s.io/sample-cli-plugin', + 'k8s.io/sample-controller', + ], + }, + ], + }, googleapis: { description: 'Group googleapis packages together', packageRules: [ From 052e92ea340109d25acef91a8366576c9d2d83d6 Mon Sep 17 00:00:00 2001 From: Rhys Arkins Date: Wed, 8 Dec 2021 15:12:55 +0100 Subject: [PATCH 06/11] fix(terraform): externalhosterror for 503 (#12760) Co-authored-by: Michael Kriese --- lib/datasource/terraform-module/base.ts | 14 ++++++++++++++ lib/datasource/terraform-module/index.ts | 10 ---------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/lib/datasource/terraform-module/base.ts b/lib/datasource/terraform-module/base.ts index 688a9a429170af..45d23d6d282034 100644 --- a/lib/datasource/terraform-module/base.ts +++ b/lib/datasource/terraform-module/base.ts @@ -1,4 +1,6 @@ +import { ExternalHostError } from '../../types/errors/external-host-error'; import { cache } from '../../util/cache/package/decorator'; +import type { HttpError } from '../../util/http/types'; import { ensureTrailingSlash } from '../../util/url'; import { Datasource } from '../datasource'; import type { ServiceDiscoveryResult } from './types'; @@ -26,4 +28,16 @@ export abstract class TerraformDatasource extends Datasource { private static getDiscoveryUrl(registryUrl: string): string { return `${ensureTrailingSlash(registryUrl)}.well-known/terraform.json`; } + + override handleSpecificErrors(err: HttpError): void { + const failureCodes = ['EAI_AGAIN']; + // istanbul ignore if + if (failureCodes.includes(err.code)) { + throw new ExternalHostError(err); + } + // istanbul ignore if + if (err.response?.statusCode === 503) { + throw new ExternalHostError(err); + } + } } diff --git a/lib/datasource/terraform-module/index.ts b/lib/datasource/terraform-module/index.ts index 0c6d4a44da6496..f9bbbe2f174e32 100644 --- a/lib/datasource/terraform-module/index.ts +++ b/lib/datasource/terraform-module/index.ts @@ -1,7 +1,5 @@ import { logger } from '../../logger'; -import { ExternalHostError } from '../../types/errors/external-host-error'; import { cache } from '../../util/cache/package/decorator'; -import type { HttpError } from '../../util/http/types'; import { regEx } from '../../util/regex'; import * as hashicorpVersioning from '../../versioning/hashicorp'; import type { GetReleasesConfig, ReleaseResult } from '../types'; @@ -83,14 +81,6 @@ export class TerraformModuleDatasource extends TerraformDatasource { return dep; } - override handleSpecificErrors(err: HttpError): void { - const failureCodes = ['EAI_AGAIN']; - // istanbul ignore if - if (failureCodes.includes(err.code)) { - throw new ExternalHostError(err); - } - } - private static getRegistryRepository( lookupName: string, registryUrl: string From 12f467af922789b6312c666bfc40349d5fe1399d Mon Sep 17 00:00:00 2001 From: Oleg Sigida <6461608+osigida@users.noreply.github.com> Date: Wed, 8 Dec 2021 15:36:09 +0100 Subject: [PATCH 07/11] chore: improve logging for stale branch rebase (#13009) Co-authored-by: Rhys Arkins --- lib/util/git/index.ts | 1 + lib/workers/branch/reuse.ts | 1 + 2 files changed, 2 insertions(+) diff --git a/lib/util/git/index.ts b/lib/util/git/index.ts index c9130d17189973..f714ff9149d50a 100644 --- a/lib/util/git/index.ts +++ b/lib/util/git/index.ts @@ -556,6 +556,7 @@ export async function isBranchModified(branchName: string): Promise { config.ignoredAuthors.some((ignoredAuthor) => lastAuthor === ignoredAuthor) ) { // author matches - branch has not been modified + logger.debug({ branchName }, 'Branch has not been modified'); config.branchIsModified[branchName] = false; return false; } diff --git a/lib/workers/branch/reuse.ts b/lib/workers/branch/reuse.ts index a114fd864fa7d7..00a9a062be7ca2 100644 --- a/lib/workers/branch/reuse.ts +++ b/lib/workers/branch/reuse.ts @@ -60,6 +60,7 @@ export async function shouldReuseExistingBranch( logger.debug('Cannot rebase branch as it has been modified'); return { reuseExistingBranch: true, isModified: true }; } + logger.debug('Branch is unmodified, so can be rebased'); return { reuseExistingBranch: false }; } logger.debug('Branch is up-to-date'); From 0d1019275c050b4946c3df159f7af0d1852dd2d1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 8 Dec 2021 18:33:55 +0000 Subject: [PATCH 08/11] chore(deps): update dependency jest to v27.4.3 (#13010) Co-authored-by: Renovate Bot --- package.json | 2 +- yarn.lock | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index b04c4ea8b2690f..d54d853f7eae78 100644 --- a/package.json +++ b/package.json @@ -264,7 +264,7 @@ "glob": "7.2.0", "graphql": "15.7.2", "husky": "7.0.4", - "jest": "27.4.2", + "jest": "27.4.3", "jest-extended": "1.2.0", "jest-github-actions-reporter": "1.0.3", "jest-junit": "13.0.0", diff --git a/yarn.lock b/yarn.lock index c1f3a3d2a880fc..5d77a3ca4574e8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2254,7 +2254,7 @@ jest-util "^27.4.2" slash "^3.0.0" -"@jest/core@^27.4.2", "@jest/core@^27.4.3": +"@jest/core@^27.4.3": version "27.4.3" resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.3.tgz#9b9b34f4e6429a633085f476402aa2e3ce707877" integrity sha512-V9ms3zSxUHxh1E/ZLAiXF7SLejsdFnjWTFizWotMOWvjho0lW5kSjZymhQSodNW0T0ZMQRiha7f8+NcFVm3hJQ== @@ -6564,7 +6564,7 @@ jest-circus@^27.4.2: stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.4.2: +jest-cli@^27.4.3: version "27.4.3" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.3.tgz#89acba683b9f91c7a5e342e2ea13aa5414836a0d" integrity sha512-zZSJBXNC/i8UnJPwcKWsqnhGgIF3uoTYP7th32Zej7KNQJdxzOMj+wCfy2Ox3kU7nXErJ36DtYyXDhfiqaiDRw== @@ -7041,14 +7041,14 @@ jest-worker@^27.4.2: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.2.tgz#4fb1211ad0b9955ef09a11b96684180a90638985" - integrity sha512-TAReynFYCfHNcrL+8Z74WPGafLFLF++bGkrpcsk6cO5G9S2VuJGhu2c44YFForMgF0GlYmtbpmeznkvZpNgTxg== +jest@27.4.3: + version "27.4.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.3.tgz#cf7d1876a84c70efece2e01e4f9dfc2e464d9cbb" + integrity sha512-jwsfVABBzuN3Atm+6h6vIEpTs9+VApODLt4dk2qv1WMOpb1weI1IIZfuwpMiWZ62qvWj78MvdvMHIYdUfqrFaA== dependencies: - "@jest/core" "^27.4.2" + "@jest/core" "^27.4.3" import-local "^3.0.2" - jest-cli "^27.4.2" + jest-cli "^27.4.3" js-tokens@^4.0.0: version "4.0.0" From 82ec1d59be2ce307f6abf9e57394c1640214509a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 8 Dec 2021 20:44:20 +0100 Subject: [PATCH 09/11] chore(deps): update dependency type-fest to v2.8.0 (#13017) Co-authored-by: Renovate Bot --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d54d853f7eae78..df62a4580ab1d9 100644 --- a/package.json +++ b/package.json @@ -284,7 +284,7 @@ "tmp-promise": "3.0.3", "ts-jest": "27.0.7", "ts-node": "10.4.0", - "type-fest": "2.7.0", + "type-fest": "2.8.0", "typescript": "4.5.2", "unified": "9.2.2" }, diff --git a/yarn.lock b/yarn.lock index 5d77a3ca4574e8..18bacac0052a35 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10242,10 +10242,10 @@ type-detect@4.0.8, type-detect@^4.0.8: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.7.0.tgz#6d58aa78d48f0968110a4ab1f75f563ae6cde572" - integrity sha512-gmfzrsfDuoQUpqteXPE1X8D2GdtEAhP+X9pdXj3xBbg86OO8ZtSTtJ9BVopDyWtdNuwbOXAYdluX4o/O65qebA== +type-fest@2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.8.0.tgz#39d7c9f9c508df8d6ce1cf5a966b0e6568dcc50d" + integrity sha512-O+V9pAshf9C6loGaH0idwsmugI2LxVNR7DtS40gVo2EXZVYFgz9OuNtOhgHLdHdapOEWNdvz9Ob/eeuaWwwlxA== type-fest@^0.13.1: version "0.13.1" From c8250610e2f840b1f64941cafd4380a5a48fe9d0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 8 Dec 2021 19:57:05 +0000 Subject: [PATCH 10/11] chore(deps): update dependency eslint-plugin-promise to v5.2.0 (#13002) Co-authored-by: Renovate Bot --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index df62a4580ab1d9..a2b5944353630e 100644 --- a/package.json +++ b/package.json @@ -259,7 +259,7 @@ "eslint-formatter-gha": "1.3.0", "eslint-plugin-import": "2.25.3", "eslint-plugin-jest": "25.3.0", - "eslint-plugin-promise": "5.1.1", + "eslint-plugin-promise": "5.2.0", "expect-more-jest": "5.4.0", "glob": "7.2.0", "graphql": "15.7.2", diff --git a/yarn.lock b/yarn.lock index 18bacac0052a35..1adb1f90ef9357 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5180,10 +5180,10 @@ eslint-plugin-jest@25.3.0: dependencies: "@typescript-eslint/experimental-utils" "^5.0.0" -eslint-plugin-promise@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.1.tgz#9674d11c056d1bafac38e4a3a9060be740988d90" - integrity sha512-XgdcdyNzHfmlQyweOPTxmc7pIsS6dE4MvwhXWMQ2Dxs1XAL2GJDilUsjWen6TWik0aSI+zD/PqocZBblcm9rdA== +eslint-plugin-promise@5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.2.0.tgz#a596acc32981627eb36d9d75f9666ac1a4564971" + integrity sha512-SftLb1pUG01QYq2A/hGAWfDRXqYD82zE7j7TopDOyNdU+7SvvoXREls/+PRTY17vUXzXnZA/zfnyKgRH6x4JJw== eslint-scope@^5.1.1: version "5.1.1" From aa6f12a46eead7c2773bcf0dab9b4a2e049fb723 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 8 Dec 2021 21:41:10 +0000 Subject: [PATCH 11/11] build(deps): update dependency simple-git to v2.48.0 (#13021) Co-authored-by: Renovate Bot --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a2b5944353630e..0866d7f354d220 100644 --- a/package.json +++ b/package.json @@ -194,7 +194,7 @@ "semver-stable": "3.0.0", "semver-utils": "1.1.4", "shlex": "2.1.0", - "simple-git": "2.47.1", + "simple-git": "2.48.0", "slugify": "1.6.3", "traverse": "0.6.6", "tslib": "2.3.1", diff --git a/yarn.lock b/yarn.lock index 1adb1f90ef9357..ee374de20a11c2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9588,10 +9588,10 @@ signale@^1.2.1: figures "^2.0.0" pkg-conf "^2.1.0" -simple-git@2.47.1: - version "2.47.1" - resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-2.47.1.tgz#59a5c1af598b30b6234b98c9e22f8c01e5b7e06c" - integrity sha512-DF4rnBr4uzMQsreqxHg8t1wN4Pi3kj/shBVT1OO+aBkBnscCZ02tynKHc9cx3StNPnItHWAaoN31qkRNDhh5Ow== +simple-git@2.48.0: + version "2.48.0" + resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-2.48.0.tgz#87c262dba8f84d7b96bb3a713e9e34701c1f6e3b" + integrity sha512-z4qtrRuaAFJS4PUd0g+xy7aN4y+RvEt/QTJpR184lhJguBA1S/LsVlvE/CM95RsYMOFJG3NGGDjqFCzKU19S/A== dependencies: "@kwsites/file-exists" "^1.1.1" "@kwsites/promise-deferred" "^1.1.1"