diff --git a/lib/config-validator.ts b/lib/config-validator.ts index 161da7bed2ae246ae4a9e0f2008bc0e58a66dbfc..78350a90ee7c754cc372243354b2a4663ed0e86d 100644 --- a/lib/config-validator.ts +++ b/lib/config-validator.ts @@ -1,6 +1,6 @@ #!/usr/bin/env node // istanbul ignore file -import equal from 'fast-deep-equal'; +import { dequal } from 'dequal'; import { readFileSync } from 'fs-extra'; import JSON5 from 'json5'; import { configFileNames } from './config/app-strings'; @@ -89,7 +89,7 @@ type PackageJson = { } try { const fileConfig = getFileConfig(process.env); - if (!equal(fileConfig, {})) { + if (!dequal(fileConfig, {})) { const file = process.env.RENOVATE_CONFIG_FILE ?? 'config.js'; logger.info(`Validating ${file}`); try { diff --git a/lib/config/migration.ts b/lib/config/migration.ts index 423b884bebd3ec267b5ba04a376eb8975d926362..5298460c40137a65a7f2fc3da249c4148a634ed8 100644 --- a/lib/config/migration.ts +++ b/lib/config/migration.ts @@ -1,6 +1,6 @@ import later from '@breejs/later'; import is from '@sindresorhus/is'; -import equal from 'fast-deep-equal'; +import { dequal } from 'dequal'; import { logger } from '../logger'; import type { HostRule } from '../types'; import { clone } from '../util/clone'; @@ -547,7 +547,7 @@ export function migrateConfig( } } } - const isMigrated = !equal(config, migratedConfig); + const isMigrated = !dequal(config, migratedConfig); if (isMigrated) { // recursive call in case any migrated configs need further migrating return { diff --git a/lib/datasource/index.ts b/lib/datasource/index.ts index 8375eb5e82b017f0452e5684e8d4a77b299f6e8f..6f865853df7e1f63af14e6b86615f8229eedcd28 100644 --- a/lib/datasource/index.ts +++ b/lib/datasource/index.ts @@ -1,5 +1,5 @@ import is from '@sindresorhus/is'; -import equal from 'fast-deep-equal'; +import { dequal } from 'dequal'; import { HOST_DISABLED } from '../constants/error-messages'; import { logger } from '../logger'; import { ExternalHostError } from '../types/errors/external-host-error'; @@ -230,7 +230,7 @@ async function fetchReleases( } logError(datasource.id, config.lookupName, err); } - if (!dep || equal(dep, { releases: [] })) { + if (!dep || dequal(dep, { releases: [] })) { return null; } addMetaData(dep, datasourceName, config.lookupName); diff --git a/lib/manager/npm/update/dependency/index.ts b/lib/manager/npm/update/dependency/index.ts index 5b510944578f1f7ca1b15813ef0b0ce74dee97ba..ed939783d971a3f6bac9e8810ce437b1a972385d 100644 --- a/lib/manager/npm/update/dependency/index.ts +++ b/lib/manager/npm/update/dependency/index.ts @@ -1,4 +1,4 @@ -import equal from 'fast-deep-equal'; +import { dequal } from 'dequal'; import { logger } from '../../../../logger'; import { matchAt, replaceAt } from '../../../../util/string'; import type { UpdateDependencyConfig } from '../../../types'; @@ -59,7 +59,7 @@ export function updateDependency({ newString ); // Compare the parsed JSON structure of old and new - if (equal(parsedContents, JSON.parse(testContent))) { + if (dequal(parsedContents, JSON.parse(testContent))) { newFileContent = testContent; break; } @@ -114,7 +114,7 @@ export function updateDependency({ newResolution ); // Compare the parsed JSON structure of old and new - if (equal(parsedContents, JSON.parse(testContent))) { + if (dequal(parsedContents, JSON.parse(testContent))) { newFileContent = testContent; break; } diff --git a/lib/manager/travis/package.ts b/lib/manager/travis/package.ts index 6de39654868a35b5370b4af31f7b7dd464dea1dd..20e1f81705f6418aac4d2911810070101d8d4a46 100644 --- a/lib/manager/travis/package.ts +++ b/lib/manager/travis/package.ts @@ -1,5 +1,5 @@ import is from '@sindresorhus/is'; -import equal from 'fast-deep-equal'; +import { dequal } from 'dequal'; import { getPkgReleases } from '../../datasource'; import * as datasourceGithubTags from '../../datasource/github-tags'; import { logger } from '../../logger'; @@ -47,7 +47,7 @@ export async function getPackageUpdates( // TODO: `config.currentValue` is a string! (config.currentValue as any).sort((a, b) => a - b); - if (equal(config.currentValue, newValue)) { + if (dequal(config.currentValue, newValue)) { return []; } return [ diff --git a/package.json b/package.json index b224c43536e149d2194c94713cba50582cf46ea6..bb542799874c1df9938b6d2be9ec833082c5eba4 100644 --- a/package.json +++ b/package.json @@ -138,9 +138,9 @@ "crypto-random-string": "3.3.1", "deepmerge": "4.2.2", "delay": "5.0.0", + "dequal": "2.0.2", "detect-indent": "6.0.0", "email-addresses": "3.1.0", - "fast-deep-equal": "3.1.3", "fast-safe-stringify": "2.0.7", "find-up": "5.0.0", "fs-extra": "9.1.0", diff --git a/yarn.lock b/yarn.lock index 7156f4d2d041fb65daca9bf9c5ad7ad9c809e4c6..7ca62559ac3d57154ff9dfdc22827c5b8bb75b34 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3488,6 +3488,11 @@ deprecation@^2.0.0, deprecation@^2.3.1: resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== +dequal@2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.2.tgz#85ca22025e3a87e65ef75a7a437b35284a7e319d" + integrity sha512-q9K8BlJVxK7hQYqa6XISGmBZbtQQWVXSrRrWreHC94rMt1QL/Impruc+7p2CYSYuVIUr+YCt6hjrs1kkdJRTug== + detect-indent@6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd"