From 5ce5ef39c190153e56cdac3915604d6cfa8595af Mon Sep 17 00:00:00 2001
From: Jamie Magee <JamieMagee@users.noreply.github.com>
Date: Tue, 17 Mar 2020 12:15:22 +0100
Subject: [PATCH] chore(internal): disallow implicit braces (#5730)

---
 .eslintrc.js                                  |  1 +
 lib/config/cli.ts                             |  8 +-
 lib/config/migration.ts                       | 16 +++-
 lib/config/validation-helpers/managers.ts     |  3 +-
 lib/datasource/cdnjs/index.ts                 | 16 +++-
 lib/datasource/git-tags/index.ts              |  4 +-
 lib/datasource/index.ts                       |  8 +-
 lib/datasource/maven/index.ts                 | 12 ++-
 lib/datasource/nuget/v2.ts                    |  4 +-
 lib/datasource/pod/index.ts                   |  4 +-
 lib/datasource/pypi/index.ts                  |  4 +-
 lib/datasource/sbt-package/index.ts           | 16 +++-
 lib/datasource/sbt-plugin/index.ts            |  4 +-
 lib/logger/cmd-serializer.ts                  |  3 +-
 lib/logger/utils.ts                           |  7 +-
 lib/manager/ansible-galaxy/extract.ts         |  8 +-
 lib/manager/bazel/extract.ts                  |  3 +-
 lib/manager/bazel/update.ts                   |  4 +-
 lib/manager/cocoapods/extract.ts              |  8 +-
 lib/manager/cocoapods/update.ts               |  4 +-
 lib/manager/dockerfile/extract.ts             |  4 +-
 .../gradle/gradle-updates-report.spec.ts      | 14 ++-
 lib/manager/gradle/index.ts                   |  8 +-
 lib/manager/html/extract.ts                   |  4 +-
 lib/manager/leiningen/extract.ts              | 12 ++-
 lib/manager/maven/extract.ts                  | 20 +++-
 lib/manager/maven/update.ts                   |  8 +-
 lib/manager/mix/extract.ts                    |  6 +-
 lib/manager/mix/update.ts                     |  4 +-
 lib/manager/npm/extract/index.ts              |  4 +-
 lib/manager/pipenv/extract.ts                 |  8 +-
 lib/manager/pub/extract.ts                    | 16 +++-
 lib/manager/pub/update.ts                     | 12 ++-
 lib/manager/regex/index.ts                    |  4 +-
 lib/manager/sbt/extract.ts                    | 58 ++++++++---
 lib/manager/swift/extract.ts                  |  8 +-
 lib/manager/travis/package.ts                 |  8 +-
 lib/platform/bitbucket-server/index.ts        | 15 ++-
 lib/platform/bitbucket-server/utils.ts        |  4 +-
 lib/platform/git/storage.ts                   |  4 +-
 lib/platform/gitea/index.ts                   |  8 +-
 lib/platform/github/gh-graphql-wrapper.ts     |  4 +-
 lib/platform/index.ts                         |  7 +-
 lib/platform/utils/pr-body.ts                 |  4 +-
 lib/util/exec/docker/index.ts                 | 12 ++-
 lib/util/exec/exec.spec.ts                    |  8 +-
 lib/util/exec/index.ts                        | 16 +++-
 lib/util/host-rules.ts                        | 12 ++-
 lib/util/modules.ts                           | 11 ++-
 lib/util/sanitize.ts                          |  4 +-
 lib/versioning/hex/index.ts                   |  7 +-
 lib/versioning/index.spec.ts                  |  4 +-
 lib/versioning/ivy/index.ts                   | 16 +++-
 lib/versioning/ivy/parse.ts                   |  4 +-
 lib/versioning/maven/compare.ts               | 96 ++++++++++++++-----
 lib/versioning/maven/index.ts                 | 24 +++--
 lib/versioning/regex/index.ts                 |  3 +-
 lib/versioning/ruby/index.ts                  |  4 +-
 lib/versioning/ruby/strategies/replace.ts     |  4 +-
 lib/workers/branch/automerge.ts               |  6 +-
 lib/workers/pr/index.ts                       |  4 +-
 lib/workers/repository/error-config.ts        |  4 +-
 lib/workers/repository/finalise/prune.ts      |  8 +-
 .../onboarding/pr/errors-warnings.ts          |  3 +-
 .../repository/process/lookup/index.ts        |  4 +-
 lib/workers/repository/updates/generate.ts    |  8 +-
 tools/patch-jest.mjs                          | 12 ++-
 tools/release.mjs                             |  4 +-
 68 files changed, 490 insertions(+), 169 deletions(-)

diff --git a/.eslintrc.js b/.eslintrc.js
index 8aefe0a29a..b8cecc2854 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -59,6 +59,7 @@ module.exports = {
         ignoreRestSiblings: false,
       },
     ], // disable until proper interfaced api
+    curly: [2, 'all'],
   },
   settings: {
     // https://github.com/benmosher/eslint-plugin-import/issues/1618
diff --git a/lib/config/cli.ts b/lib/config/cli.ts
index bd5153ce3d..2ee615ed7c 100644
--- a/lib/config/cli.ts
+++ b/lib/config/cli.ts
@@ -34,8 +34,12 @@ export function getConfig(input: string[]): RenovateCliConfig {
 
   const coersions = {
     boolean: (val: string): boolean => {
-      if (val === 'true' || val === '') return true;
-      if (val === 'false') return false;
+      if (val === 'true' || val === '') {
+        return true;
+      }
+      if (val === 'false') {
+        return false;
+      }
       throw new Error(
         "Invalid boolean value: expected 'true' or 'false', but got '" +
           val +
diff --git a/lib/config/migration.ts b/lib/config/migration.ts
index 74b01bf40b..da3bbf7532 100644
--- a/lib/config/migration.ts
+++ b/lib/config/migration.ts
@@ -149,14 +149,22 @@ export function migrateConfig(
         isMigrated = true;
         delete migratedConfig.rebaseStalePrs;
         if (!migratedConfig.rebaseWhen) {
-          if (val === null) migratedConfig.rebaseWhen = 'auto';
-          if (val === true) migratedConfig.rebaseWhen = 'behind-base-branch';
-          if (val === false) migratedConfig.rebaseWhen = 'conflicted';
+          if (val === null) {
+            migratedConfig.rebaseWhen = 'auto';
+          }
+          if (val === true) {
+            migratedConfig.rebaseWhen = 'behind-base-branch';
+          }
+          if (val === false) {
+            migratedConfig.rebaseWhen = 'conflicted';
+          }
         }
       } else if (key === 'rebaseConflictedPrs') {
         isMigrated = true;
         delete migratedConfig.rebaseConflictedPrs;
-        if (val === false) migratedConfig.rebaseWhen = 'never';
+        if (val === false) {
+          migratedConfig.rebaseWhen = 'never';
+        }
       } else if (key === 'exposeEnv') {
         isMigrated = true;
         delete migratedConfig.exposeEnv;
diff --git a/lib/config/validation-helpers/managers.ts b/lib/config/validation-helpers/managers.ts
index 6709db9dc9..dfa6ef9dc9 100644
--- a/lib/config/validation-helpers/managers.ts
+++ b/lib/config/validation-helpers/managers.ts
@@ -26,8 +26,9 @@ export function check({
         }.
         Supported managers are: (${getManagerList().join(', ')}).`;
     }
-  } else if (typeof resolvedRule.managers !== 'undefined')
+  } else if (typeof resolvedRule.managers !== 'undefined') {
     managersErrMessage = `${currentPath}: Managers should be type of List. You have included ${typeof resolvedRule.managers}.`;
+  }
 
   return managersErrMessage
     ? [
diff --git a/lib/datasource/cdnjs/index.ts b/lib/datasource/cdnjs/index.ts
index 68ed19489d..fea307efd2 100644
--- a/lib/datasource/cdnjs/index.ts
+++ b/lib/datasource/cdnjs/index.ts
@@ -43,7 +43,9 @@ export async function getDigest(
   const assets: CdnjsAsset[] = res.body && res.body.assets;
   const asset = assets && assets.find(({ version }) => version === newValue);
   const hash = asset && asset.sri && asset.sri[assetName];
-  if (hash) result = hash;
+  if (hash) {
+    result = hash;
+  }
   return result;
 }
 
@@ -59,7 +61,9 @@ export async function getPkgReleases({
     cacheKey
   );
   // istanbul ignore if
-  if (cachedResult) return cachedResult;
+  if (cachedResult) {
+    return cachedResult;
+  }
 
   const url = depUrl(library);
 
@@ -81,8 +85,12 @@ export async function getPkgReleases({
 
     const result: ReleaseResult = { releases };
 
-    if (homepage) result.homepage = homepage;
-    if (repository && repository.url) result.sourceUrl = repository.url;
+    if (homepage) {
+      result.homepage = homepage;
+    }
+    if (repository && repository.url) {
+      result.sourceUrl = repository.url;
+    }
 
     await renovateCache.set(cacheNamespace, cacheKey, result, cacheMinutes);
 
diff --git a/lib/datasource/git-tags/index.ts b/lib/datasource/git-tags/index.ts
index e2ccd34120..2809a16ee2 100644
--- a/lib/datasource/git-tags/index.ts
+++ b/lib/datasource/git-tags/index.ts
@@ -21,7 +21,9 @@ export async function getPkgReleases({
       lookupName
     );
     /* istanbul ignore next line */
-    if (cachedResult) return cachedResult;
+    if (cachedResult) {
+      return cachedResult;
+    }
 
     // fetch remote tags
     const lsRemote = await git.listRemote([
diff --git a/lib/datasource/index.ts b/lib/datasource/index.ts
index 12ad574501..62f675fc21 100644
--- a/lib/datasource/index.ts
+++ b/lib/datasource/index.ts
@@ -17,8 +17,12 @@ export * from './common';
 
 // istanbul ignore next
 function validateDatasource(module, name): boolean {
-  if (!module.getPkgReleases) return false;
-  if (module.id !== name) return false;
+  if (!module.getPkgReleases) {
+    return false;
+  }
+  if (module.id !== name) {
+    return false;
+  }
   return true;
 }
 
diff --git a/lib/datasource/maven/index.ts b/lib/datasource/maven/index.ts
index b3f45a251b..c21dd3f503 100644
--- a/lib/datasource/maven/index.ts
+++ b/lib/datasource/maven/index.ts
@@ -42,7 +42,9 @@ function getMavenUrl(
 async function downloadMavenXml(
   pkgUrl: url.URL | null
 ): Promise<XmlDocument | null> {
-  if (!pkgUrl) return null;
+  if (!pkgUrl) {
+    return null;
+  }
   let rawContent: string;
   switch (pkgUrl.protocol) {
     case 'file:':
@@ -85,7 +87,9 @@ async function getDependencyInfo(
 
   const pomUrl = getMavenUrl(dependency, repoUrl, path);
   const pomContent = await downloadMavenXml(pomUrl);
-  if (!pomContent) return result;
+  if (!pomContent) {
+    return result;
+  }
 
   const homepage = pomContent.valueWithPath('url');
   if (homepage && !containsPlaceholder(homepage)) {
@@ -132,7 +136,9 @@ function getDependencyParts(lookupName: string): MavenDependency {
 function extractVersions(metadata: XmlDocument): string[] {
   const versions = metadata.descendantWithPath('versioning.versions');
   const elements = versions && versions.childrenNamed('version');
-  if (!elements) return [];
+  if (!elements) {
+    return [];
+  }
   return elements.map(el => el.val);
 }
 
diff --git a/lib/datasource/nuget/v2.ts b/lib/datasource/nuget/v2.ts
index 2d7c36be8d..89c8afbf39 100644
--- a/lib/datasource/nuget/v2.ts
+++ b/lib/datasource/nuget/v2.ts
@@ -64,7 +64,9 @@ export async function getPkgReleases(
     } while (pkgUrlList !== null);
 
     // dep not found if no release, so we can try next registry
-    if (dep.releases.length === 0) return null;
+    if (dep.releases.length === 0) {
+      return null;
+    }
 
     return dep;
   } catch (err) {
diff --git a/lib/datasource/pod/index.ts b/lib/datasource/pod/index.ts
index fd7b1ade1f..e39c0a9e0f 100644
--- a/lib/datasource/pod/index.ts
+++ b/lib/datasource/pod/index.ts
@@ -148,7 +148,9 @@ export async function getPkgReleases(
     let registryUrl = registryUrls[idx].replace(/\/+$/, '');
 
     // In order to not abuse github API limits, query CDN instead
-    if (isDefaultRepo(registryUrl)) registryUrl = defaultCDN;
+    if (isDefaultRepo(registryUrl)) {
+      registryUrl = defaultCDN;
+    }
 
     if (githubRegex.exec(registryUrl)) {
       result = await getReleasesFromGithub(podName, registryUrl);
diff --git a/lib/datasource/pypi/index.ts b/lib/datasource/pypi/index.ts
index dd9c37335a..ba210f0536 100644
--- a/lib/datasource/pypi/index.ts
+++ b/lib/datasource/pypi/index.ts
@@ -189,7 +189,9 @@ export async function getPkgReleases({
       logger.trace({ lookupName, hostUrl }, 'Found pypi result');
     }
   }
-  if (dep) return dep;
+  if (dep) {
+    return dep;
+  }
   logger.debug({ lookupName, registryUrls }, 'No pypi result - returning null');
   return null;
 }
diff --git a/lib/datasource/sbt-package/index.ts b/lib/datasource/sbt-package/index.ts
index 6fcd00c10b..caf293892f 100644
--- a/lib/datasource/sbt-package/index.ts
+++ b/lib/datasource/sbt-package/index.ts
@@ -21,9 +21,15 @@ export async function resolvePackageReleases(
     const releases: string[] = [];
     const parseSubdirs = (content: string): string[] =>
       parseIndexDir(content, x => {
-        if (x === artifact) return true;
-        if (x.startsWith(`${artifact}_native`)) return false;
-        if (x.startsWith(`${artifact}_sjs`)) return false;
+        if (x === artifact) {
+          return true;
+        }
+        if (x.startsWith(`${artifact}_native`)) {
+          return false;
+        }
+        if (x.startsWith(`${artifact}_sjs`)) {
+          return false;
+        }
         return x.startsWith(`${artifact}_`);
       });
     const artifactSubdirs = parseSubdirs(indexContent);
@@ -46,7 +52,9 @@ export async function resolvePackageReleases(
         subdirReleases.forEach(x => releases.push(x));
       }
     }
-    if (releases.length) return [...new Set(releases)].sort(compare);
+    if (releases.length) {
+      return [...new Set(releases)].sort(compare);
+    }
   }
 
   return null;
diff --git a/lib/datasource/sbt-plugin/index.ts b/lib/datasource/sbt-plugin/index.ts
index 7b3a717653..7835a0271b 100644
--- a/lib/datasource/sbt-plugin/index.ts
+++ b/lib/datasource/sbt-plugin/index.ts
@@ -49,7 +49,9 @@ async function resolvePluginReleases(
         }
       }
     }
-    if (releases.length) return [...new Set(releases)].sort(compare);
+    if (releases.length) {
+      return [...new Set(releases)].sort(compare);
+    }
   }
   return resolvePackageReleases(rootUrl, artifact, scalaVersion);
 }
diff --git a/lib/logger/cmd-serializer.ts b/lib/logger/cmd-serializer.ts
index f4007331df..3a8d2599ca 100644
--- a/lib/logger/cmd-serializer.ts
+++ b/lib/logger/cmd-serializer.ts
@@ -1,6 +1,7 @@
 // istanbul ignore next
 export default function(cmd: string | string[]): string | string[] {
-  if (typeof cmd === 'string')
+  if (typeof cmd === 'string') {
     return cmd.replace(/https:\/\/[^@]*@/g, 'https://**redacted**@');
+  }
   return cmd;
 }
diff --git a/lib/logger/utils.ts b/lib/logger/utils.ts
index abc8dc0211..d776ee8f5f 100644
--- a/lib/logger/utils.ts
+++ b/lib/logger/utils.ts
@@ -26,7 +26,9 @@ export class ErrorStream extends Stream {
 
   write(data: BunyanRecord): boolean {
     const err = { ...data };
-    for (const prop of excludeProps) delete err[prop];
+    for (const prop of excludeProps) {
+      delete err[prop];
+    }
     this._errors.push(err);
     return true;
   }
@@ -71,8 +73,9 @@ function sanitizeValue(value: any, seen = new WeakMap()): any {
 }
 
 export function withSanitizer(streamConfig): bunyan.Stream {
-  if (streamConfig.type === 'rotating-file')
+  if (streamConfig.type === 'rotating-file') {
     throw new Error("Rotating files aren't supported");
+  }
 
   const stream = streamConfig.stream;
   if (stream && stream.writable) {
diff --git a/lib/manager/ansible-galaxy/extract.ts b/lib/manager/ansible-galaxy/extract.ts
index 3fb5ccc06d..91391b78c6 100644
--- a/lib/manager/ansible-galaxy/extract.ts
+++ b/lib/manager/ansible-galaxy/extract.ts
@@ -96,9 +96,13 @@ export default function extractPackageFile(
           }
           const line = lines[lineNumber + 1];
 
-          if (!line) break;
+          if (!line) {
+            break;
+          }
           lineMatch = blockLineRegEx.exec(line);
-          if (lineMatch) lineNumber += 1;
+          if (lineMatch) {
+            lineNumber += 1;
+          }
         } while (lineMatch);
         if (finalize(dep)) {
           delete dep.managerData;
diff --git a/lib/manager/bazel/extract.ts b/lib/manager/bazel/extract.ts
index e496bf0649..9480d4bc19 100644
--- a/lib/manager/bazel/extract.ts
+++ b/lib/manager/bazel/extract.ts
@@ -63,8 +63,9 @@ function findBalancedParenIndex(longString: string): number {
         parenNestingDepth--;
         break;
       case '"':
-        if (i > 1 && arr.slice(i - 2, i).every(prev => char === prev))
+        if (i > 1 && arr.slice(i - 2, i).every(prev => char === prev)) {
           intShouldNotBeOdd++;
+        }
         break;
       default:
         break;
diff --git a/lib/manager/bazel/update.ts b/lib/manager/bazel/update.ts
index b0656d6c1c..2c0670b256 100644
--- a/lib/manager/bazel/update.ts
+++ b/lib/manager/bazel/update.ts
@@ -48,7 +48,9 @@ async function getHashFromUrl(url: string): Promise<string | null> {
     url
   );
   /* istanbul ignore next line */
-  if (cachedResult) return cachedResult;
+  if (cachedResult) {
+    return cachedResult;
+  }
   try {
     const hash = await fromStream(got.stream(url), {
       algorithm: 'sha256',
diff --git a/lib/manager/cocoapods/extract.ts b/lib/manager/cocoapods/extract.ts
index 93ae76caee..7362adfa33 100644
--- a/lib/manager/cocoapods/extract.ts
+++ b/lib/manager/cocoapods/extract.ts
@@ -39,8 +39,12 @@ export function parseLine(line: string): ParsedLine {
       ? `${result.spec}/${result.subspec}`
       : result.spec;
     const groupName = result.spec;
-    if (depName) result.depName = depName;
-    if (groupName) result.groupName = groupName;
+    if (depName) {
+      result.depName = depName;
+    }
+    if (groupName) {
+      result.groupName = groupName;
+    }
     delete result.spec;
     delete result.subspec;
   }
diff --git a/lib/manager/cocoapods/update.ts b/lib/manager/cocoapods/update.ts
index afb0b31da5..c3c7a48779 100644
--- a/lib/manager/cocoapods/update.ts
+++ b/lib/manager/cocoapods/update.ts
@@ -24,7 +24,9 @@ export function updateDependency({
   const lines = fileContent.split('\n');
   const lineToChange = lines[managerData.lineNumber];
 
-  if (!lineContainsDep(lineToChange, depName)) return null;
+  if (!lineContainsDep(lineToChange, depName)) {
+    return null;
+  }
 
   const regex = new RegExp(`(['"])${currentValue.replace('.', '\\.')}\\1`);
   const newLine = lineToChange.replace(regex, `$1${newValue}$1`);
diff --git a/lib/manager/dockerfile/extract.ts b/lib/manager/dockerfile/extract.ts
index fae5f194f4..d89460e2e3 100644
--- a/lib/manager/dockerfile/extract.ts
+++ b/lib/manager/dockerfile/extract.ts
@@ -111,7 +111,9 @@ export function extractPackageFile(content: string): PackageFile | null {
   if (!deps.length) {
     return null;
   }
-  for (const d of deps) d.depType = 'stage';
+  for (const d of deps) {
+    d.depType = 'stage';
+  }
   deps[deps.length - 1].depType = 'final';
   return { deps };
 }
diff --git a/lib/manager/gradle/gradle-updates-report.spec.ts b/lib/manager/gradle/gradle-updates-report.spec.ts
index 3821be8268..cb2ae6471e 100644
--- a/lib/manager/gradle/gradle-updates-report.spec.ts
+++ b/lib/manager/gradle/gradle-updates-report.spec.ts
@@ -27,10 +27,11 @@ function parseJavaVersion(javaVersionOutput: string) {
   if (versionMatch !== null && versionMatch.length === 2) {
     return parseInt(versionMatch[1], 10);
   }
-  if (enforceJava)
+  if (enforceJava) {
     throw Error(`This test suite needs Java and ${failIfNoJavaEnv} is set. However, we cannot parse the Java version.
 The output of java -version was:
 ${javaVersionOutput}`);
+  }
   return 0;
 }
 
@@ -45,9 +46,13 @@ function determineJavaVersion(): number {
   } catch (e) {
     error = e;
   }
-  if (javaVersionCommand.error) error = javaVersionCommand.error;
+  if (javaVersionCommand.error) {
+    error = javaVersionCommand.error;
+  }
   if (error) {
-    if (!enforceJava) return 0;
+    if (!enforceJava) {
+      return 0;
+    }
     throw Error(
       `This test suite needs Java and ${failIfNoJavaEnv} is set.
 Result of java -version:
@@ -71,10 +76,11 @@ describe('lib/manager/gradle/gradle-updates-report', () => {
       const gradleSupportsThisJavaVersion =
         javaVersion >= supportedJavaVersions.min &&
         javaVersion <= supportedJavaVersions.max;
-      if (!gradleSupportsThisJavaVersion && enforceJava)
+      if (!gradleSupportsThisJavaVersion && enforceJava) {
         throw Error(
           `This test needs a Java version between ${supportedJavaVersions.min} and ${supportedJavaVersions.max}. The current Java version is ${javaVersion} and ${failIfNoJavaEnv} is set!`
         );
+      }
       (!gradleSupportsThisJavaVersion || skipJava ? it.skip : it)(
         `generates a report for Gradle version ${gradleVersion}`,
         // the function creation is correct and intended
diff --git a/lib/manager/gradle/index.ts b/lib/manager/gradle/index.ts
index a5c71116ab..393d717449 100644
--- a/lib/manager/gradle/index.ts
+++ b/lib/manager/gradle/index.ts
@@ -48,8 +48,12 @@ async function getGradleCommandLine(
   const gradlewPath = upath.join(cwd, 'gradlew');
   const gradlewExists = await exists(gradlewPath);
   const gradlewExecutable = gradlewExists && (await canExecute(gradlewPath));
-  if (gradlewExecutable) return `./gradlew ${args}`;
-  if (gradlewExists) return `sh gradlew ${args}`;
+  if (gradlewExecutable) {
+    return `./gradlew ${args}`;
+  }
+  if (gradlewExists) {
+    return `sh gradlew ${args}`;
+  }
 
   return `gradle ${args}`;
 }
diff --git a/lib/manager/html/extract.ts b/lib/manager/html/extract.ts
index 7de5d13d0a..d9ec262dd2 100644
--- a/lib/manager/html/extract.ts
+++ b/lib/manager/html/extract.ts
@@ -45,6 +45,8 @@ export function extractPackageFile(content: string): PackageFile {
       });
     }
   }
-  if (!deps.length) return null;
+  if (!deps.length) {
+    return null;
+  }
   return { deps };
 }
diff --git a/lib/manager/leiningen/extract.ts b/lib/manager/leiningen/extract.ts
index 7d12226422..ef930a2d1c 100644
--- a/lib/manager/leiningen/extract.ts
+++ b/lib/manager/leiningen/extract.ts
@@ -5,10 +5,14 @@ import * as datasourceMaven from '../../datasource/maven';
 export function trimAtKey(str: string, kwName: string): string | null {
   const regex = new RegExp(`:${kwName}(?=\\s)`);
   const keyOffset = str.search(regex);
-  if (keyOffset < 0) return null;
+  if (keyOffset < 0) {
+    return null;
+  }
   const withSpaces = str.slice(keyOffset + kwName.length + 1);
   const valueOffset = withSpaces.search(/[^\s]/);
-  if (valueOffset < 0) return null;
+  if (valueOffset < 0) {
+    return null;
+  }
   return withSpaces.slice(valueOffset);
 }
 
@@ -26,7 +30,9 @@ export function extractFromVectors(
   offset = 0,
   ctx: ExtractContext = {}
 ): PackageDependency[] {
-  if (!str.startsWith('[')) return [];
+  if (!str.startsWith('[')) {
+    return [];
+  }
   let balance = 0;
   const result: PackageDependency[] = [];
   let idx = 0;
diff --git a/lib/manager/maven/extract.ts b/lib/manager/maven/extract.ts
index 43893ba206..0f15e9db65 100644
--- a/lib/manager/maven/extract.ts
+++ b/lib/manager/maven/extract.ts
@@ -16,8 +16,12 @@ export function parsePom(raw: string): XmlDocument | null {
     return null;
   }
   const { name, attr, children } = project;
-  if (name !== 'project') return null;
-  if (attr.xmlns === 'http://maven.apache.org/POM/4.0.0') return project;
+  if (name !== 'project') {
+    return null;
+  }
+  if (attr.xmlns === 'http://maven.apache.org/POM/4.0.0') {
+    return project;
+  }
   if (
     is.nonEmptyArray(children) &&
     children.some((c: any) => c.name === 'modelVersion' && c.val === '4.0.0')
@@ -38,7 +42,9 @@ interface MavenProp {
 }
 
 function depFromNode(node: XmlElement): PackageDependency | null {
-  if (!('valueWithPath' in node)) return null;
+  if (!('valueWithPath' in node)) {
+    return null;
+  }
   let groupId = node.valueWithPath('groupId');
   const artifactId = node.valueWithPath('artifactId');
   const currentValue = node.valueWithPath('version');
@@ -150,10 +156,14 @@ export function extractPackage(
   rawContent: string,
   packageFile: string | null = null
 ): PackageFile<Record<string, any>> | null {
-  if (!rawContent) return null;
+  if (!rawContent) {
+    return null;
+  }
 
   const project = parsePom(rawContent);
-  if (!project) return null;
+  if (!project) {
+    return null;
+  }
 
   const result: PackageFile = {
     datasource: datasourceMaven.id,
diff --git a/lib/manager/maven/update.ts b/lib/manager/maven/update.ts
index 18526fd0b6..050ca22bb6 100644
--- a/lib/manager/maven/update.ts
+++ b/lib/manager/maven/update.ts
@@ -32,7 +32,11 @@ export function updateDependency({
   const spaces = fileContent.slice(0, offset);
   const restContent = fileContent.slice(offset);
   const updatedContent = updateAtPosition(restContent, upgrade, '</');
-  if (!updatedContent) return null;
-  if (updatedContent === restContent) return fileContent;
+  if (!updatedContent) {
+    return null;
+  }
+  if (updatedContent === restContent) {
+    return fileContent;
+  }
   return `${spaces}${updatedContent}`;
 }
diff --git a/lib/manager/mix/extract.ts b/lib/manager/mix/extract.ts
index 0cb543e4fb..b51c6f4e11 100644
--- a/lib/manager/mix/extract.ts
+++ b/lib/manager/mix/extract.ts
@@ -50,9 +50,11 @@ export function extractPackageFile(content: string): PackageFile {
           }
 
           // Find dep's line number
-          for (let i = 0; i < contentArr.length; i += 1)
-            if (contentArr[i].includes(`:${depName},`))
+          for (let i = 0; i < contentArr.length; i += 1) {
+            if (contentArr[i].includes(`:${depName},`)) {
               dep.managerData.lineNumber = i;
+            }
+          }
 
           deps.push(dep);
         }
diff --git a/lib/manager/mix/update.ts b/lib/manager/mix/update.ts
index bb5a6530ba..6a46b11149 100644
--- a/lib/manager/mix/update.ts
+++ b/lib/manager/mix/update.ts
@@ -10,7 +10,9 @@ export function updateDependency({
   const lines = fileContent.split('\n');
   const lineToChange = lines[upgrade.managerData.lineNumber];
 
-  if (!lineToChange.includes(upgrade.depName)) return null;
+  if (!lineToChange.includes(upgrade.depName)) {
+    return null;
+  }
 
   const newLine = lineToChange.replace(/"(.*?)"/, `"${upgrade.newValue}"`);
 
diff --git a/lib/manager/npm/extract/index.ts b/lib/manager/npm/extract/index.ts
index 5d6d315c38..9b701e2ee8 100644
--- a/lib/manager/npm/extract/index.ts
+++ b/lib/manager/npm/extract/index.ts
@@ -23,7 +23,9 @@ import * as datasourceNpm from '../../../datasource/npm';
 import * as datasourceGithubTags from '../../../datasource/github-tags';
 
 function parseDepName(depType: string, key: string): string {
-  if (depType !== 'resolutions') return key;
+  if (depType !== 'resolutions') {
+    return key;
+  }
 
   const [, depName] = /((?:@[^/]+\/)?[^/@]+)$/.exec(key);
   return depName;
diff --git a/lib/manager/pipenv/extract.ts b/lib/manager/pipenv/extract.ts
index 5f53f8b72c..70ed932b75 100644
--- a/lib/manager/pipenv/extract.ts
+++ b/lib/manager/pipenv/extract.ts
@@ -89,13 +89,17 @@ function extractFromSection(
         depName,
         managerData: {},
       };
-      if (currentValue) dep.currentValue = currentValue;
+      if (currentValue) {
+        dep.currentValue = currentValue;
+      }
       if (skipReason) {
         dep.skipReason = skipReason;
       } else {
         dep.datasource = datasourcePypi.id;
       }
-      if (nestedVersion) dep.managerData.nestedVersion = nestedVersion;
+      if (nestedVersion) {
+        dep.managerData.nestedVersion = nestedVersion;
+      }
       if (requirements.index) {
         if (is.array(pipfile.source)) {
           const source = pipfile.source.find(
diff --git a/lib/manager/pub/extract.ts b/lib/manager/pub/extract.ts
index 2f9332667c..03717047bb 100644
--- a/lib/manager/pub/extract.ts
+++ b/lib/manager/pub/extract.ts
@@ -8,9 +8,13 @@ function getDeps(
   depsObj: { [x: string]: any },
   preset: { depType: string }
 ): PackageDependency[] {
-  if (!depsObj) return [];
+  if (!depsObj) {
+    return [];
+  }
   return Object.keys(depsObj).reduce((acc, depName) => {
-    if (depName === 'meta') return acc;
+    if (depName === 'meta') {
+      return acc;
+    }
 
     const section = depsObj[depName];
 
@@ -18,8 +22,12 @@ function getDeps(
     if (section && section.version) {
       currentValue = section.version.toString();
     } else if (section) {
-      if (typeof section === 'string') currentValue = section;
-      if (typeof section === 'number') currentValue = section.toString();
+      if (typeof section === 'string') {
+        currentValue = section;
+      }
+      if (typeof section === 'number') {
+        currentValue = section.toString();
+      }
     }
 
     const dep: PackageDependency = { ...preset, depName, currentValue };
diff --git a/lib/manager/pub/update.ts b/lib/manager/pub/update.ts
index 1e0929bc37..8732f2fa0a 100644
--- a/lib/manager/pub/update.ts
+++ b/lib/manager/pub/update.ts
@@ -7,7 +7,9 @@ export function updateDependency({
 }: UpdateDependencyConfig): string {
   const { depName, depType, currentValue, newValue } = upgrade;
 
-  if (currentValue === newValue) return fileContent;
+  if (currentValue === newValue) {
+    return fileContent;
+  }
 
   const sectionBeginRegExp = new RegExp(`^${depType}:`);
   const isSectionBegin = (line: string): boolean =>
@@ -43,7 +45,9 @@ export function updateDependency({
       isSection = false;
     } else if (isSection) {
       if (isOneLineDep(line)) {
-        if (!isValidVersion(line)) return null;
+        if (!isValidVersion(line)) {
+          return null;
+        }
         lines[idx] = line.replace(currentValue, newValue);
         break;
       } else if (isMultilineDepRegExp(line)) {
@@ -53,7 +57,9 @@ export function updateDependency({
         if (currentIndent <= indent) {
           indent = null;
         } else if (isVersionLine(line)) {
-          if (!isValidVersion(line)) return null;
+          if (!isValidVersion(line)) {
+            return null;
+          }
           lines[idx] = line.replace(currentValue, newValue);
           break;
         }
diff --git a/lib/manager/regex/index.ts b/lib/manager/regex/index.ts
index 3907e4a566..df4fd51c51 100644
--- a/lib/manager/regex/index.ts
+++ b/lib/manager/regex/index.ts
@@ -53,6 +53,8 @@ export function extractPackageFile(
     }
     depIndex += 1;
   } while (matchResult);
-  if (deps.length) return { deps, matchStrings: config.matchStrings };
+  if (deps.length) {
+    return { deps, matchStrings: config.matchStrings };
+  }
   return null;
 }
diff --git a/lib/manager/sbt/extract.ts b/lib/manager/sbt/extract.ts
index 1c602018a9..af6763b47a 100644
--- a/lib/manager/sbt/extract.ts
+++ b/lib/manager/sbt/extract.ts
@@ -29,16 +29,23 @@ const getScalaVersion = (str: string): string =>
  */
 const normalizeScalaVersion = (str: string): string => {
   // istanbul ignore if
-  if (!str) return str;
+  if (!str) {
+    return str;
+  }
   const versioning = get(mavenVersioning.id);
   if (versioning.isVersion(str)) {
     // Do not normalize unstable versions
-    if (!versioning.isStable(str)) return str;
+    if (!versioning.isStable(str)) {
+      return str;
+    }
     // Do not normalize versions prior to 2.10
-    if (!versioning.isGreaterThan(str, '2.10.0')) return str;
+    if (!versioning.isGreaterThan(str, '2.10.0')) {
+      return str;
+    }
   }
-  if (/^\d+\.\d+\.\d+$/.test(str))
+  if (/^\d+\.\d+\.\d+$/.test(str)) {
     return str.replace(/^(\d+)\.(\d+)\.\d+$/, '$1.$2');
+  }
   // istanbul ignore next
   return str;
 };
@@ -117,17 +124,33 @@ function parseDepExpr(
     rawScope,
   ] = tokens;
 
-  if (!rawGroupId) return null;
-  if (!isValidToken(rawGroupId)) return null;
+  if (!rawGroupId) {
+    return null;
+  }
+  if (!isValidToken(rawGroupId)) {
+    return null;
+  }
 
-  if (!rawArtifactId) return null;
-  if (!isValidToken(rawArtifactId)) return null;
-  if (artifactOp !== '%') return null;
+  if (!rawArtifactId) {
+    return null;
+  }
+  if (!isValidToken(rawArtifactId)) {
+    return null;
+  }
+  if (artifactOp !== '%') {
+    return null;
+  }
 
-  if (!rawVersion) return null;
-  if (!isValidToken(rawVersion)) return null;
+  if (!rawVersion) {
+    return null;
+  }
+  if (!isValidToken(rawVersion)) {
+    return null;
+  }
 
-  if (scopeOp && scopeOp !== '%') return null;
+  if (scopeOp && scopeOp !== '%') {
+    return null;
+  }
 
   const groupId = resolveToken(rawGroupId);
   const artifactId =
@@ -263,7 +286,7 @@ function parseSbtLine(
     });
   }
 
-  if (lineIndex + 1 < lines.length)
+  if (lineIndex + 1 < lines.length) {
     return {
       ...acc,
       fileOffset: fileOffset + line.length + 1, // inc. newline
@@ -274,12 +297,17 @@ function parseSbtLine(
           variables[scalaVersionVariable] &&
           normalizeScalaVersion(variables[scalaVersionVariable].val)),
     };
-  if (deps.length) return { deps };
+  }
+  if (deps.length) {
+    return { deps };
+  }
   return null;
 }
 
 export function extractPackageFile(content: string): PackageFile {
-  if (!content) return null;
+  if (!content) {
+    return null;
+  }
   const lines = content.split(/\n/);
   return lines.reduce(parseSbtLine, {
     fileOffset: 0,
diff --git a/lib/manager/swift/extract.ts b/lib/manager/swift/extract.ts
index 3984c74f0b..525cad71fc 100644
--- a/lib/manager/swift/extract.ts
+++ b/lib/manager/swift/extract.ts
@@ -136,7 +136,9 @@ export function extractPackageFile(
   content: string,
   packageFile: string = null
 ): PackageFile | null {
-  if (!content) return null;
+  if (!content) {
+    return null;
+  }
 
   const result: PackageFile = {
     packageFile,
@@ -177,7 +179,9 @@ export function extractPackageFile(
     // eslint-disable-next-line default-case
     switch (state) {
       case null:
-        if (deps.length) break;
+        if (deps.length) {
+          break;
+        }
         if (label === DEPS) {
           state = 'dependencies';
         }
diff --git a/lib/manager/travis/package.ts b/lib/manager/travis/package.ts
index c698428240..0f6c85bac1 100644
--- a/lib/manager/travis/package.ts
+++ b/lib/manager/travis/package.ts
@@ -45,11 +45,15 @@ function generatePolicies(): void {
       policies.all.push(release);
       const isMaintenance =
         data.maintenance && new Date(data.maintenance) < now;
-      if (!isMaintenance) policies.active.push(release);
+      if (!isMaintenance) {
+        policies.active.push(release);
+      }
       const isLts = data.lts && new Date(data.lts) < now;
       if (isLts) {
         policies.lts.push(release);
-        if (!isMaintenance) policies.lts_active.push(release);
+        if (!isMaintenance) {
+          policies.lts_active.push(release);
+        }
       }
     }
   }
diff --git a/lib/platform/bitbucket-server/index.ts b/lib/platform/bitbucket-server/index.ts
index 8f34146d8b..eac03fb1ca 100644
--- a/lib/platform/bitbucket-server/index.ts
+++ b/lib/platform/bitbucket-server/index.ts
@@ -159,8 +159,11 @@ export async function initRepo({
       const { body } = await api.get<FileData>(
         `./rest/api/1.0/projects/${projectKey}/repos/${repositorySlug}/browse/renovate.json?limit=20000`
       );
-      if (!body.isLastPage) logger.warn('Renovate config to big: ' + body.size);
-      else renovateConfig = JSON.parse(body.lines.join());
+      if (!body.isLastPage) {
+        logger.warn('Renovate config to big: ' + body.size);
+      } else {
+        renovateConfig = JSON.parse(body.lines.join());
+      }
     } catch {
       // Do nothing
     }
@@ -542,8 +545,12 @@ export async function getBranchStatus(
 
     logger.debug({ commitStatus }, 'branch status check result');
 
-    if (commitStatus.failed > 0) return BranchStatus.red;
-    if (commitStatus.inProgress > 0) return BranchStatus.yellow;
+    if (commitStatus.failed > 0) {
+      return BranchStatus.red;
+    }
+    if (commitStatus.inProgress > 0) {
+      return BranchStatus.yellow;
+    }
     return commitStatus.successful > 0
       ? BranchStatus.green
       : BranchStatus.yellow;
diff --git a/lib/platform/bitbucket-server/utils.ts b/lib/platform/bitbucket-server/utils.ts
index 9fe9be128c..797ca37fcd 100644
--- a/lib/platform/bitbucket-server/utils.ts
+++ b/lib/platform/bitbucket-server/utils.ts
@@ -52,7 +52,9 @@ export async function accumulateValues<T = any>(
     // TODO: fix typing
     const { body } = await (api as any)[lowerCaseMethod](nextUrl, options);
     accumulator = [...accumulator, ...body.values];
-    if (body.isLastPage !== false) break;
+    if (body.isLastPage !== false) {
+      break;
+    }
 
     const { search, ...parsedUrl } = url.parse(nextUrl, true); // eslint-disable-line @typescript-eslint/no-unused-vars
     nextUrl = url.format({
diff --git a/lib/platform/git/storage.ts b/lib/platform/git/storage.ts
index 1fdf7ac26f..5da5d66f70 100644
--- a/lib/platform/git/storage.ts
+++ b/lib/platform/git/storage.ts
@@ -518,7 +518,9 @@ export class Storage {
       if (fileNames.length === 1 && fileNames[0] === 'renovate.json') {
         fileNames.unshift('-f');
       }
-      if (fileNames.length) await this._git.add(fileNames);
+      if (fileNames.length) {
+        await this._git.add(fileNames);
+      }
       if (deleted.length) {
         for (const f of deleted) {
           try {
diff --git a/lib/platform/gitea/index.ts b/lib/platform/gitea/index.ts
index 170812fe93..8c919228cf 100644
--- a/lib/platform/gitea/index.ts
+++ b/lib/platform/gitea/index.ts
@@ -414,9 +414,13 @@ const platform: Platform = {
       branchName
     );
     const cs = ccs.statuses.find(s => s.context === context);
-    if (!cs) return null; // no status check exists
+    if (!cs) {
+      return null;
+    } // no status check exists
     const status = helper.giteaToRenovateStatusMapping[cs.status];
-    if (status) return status;
+    if (status) {
+      return status;
+    }
     logger.warn(
       { check: cs },
       'Could not map Gitea status value to Renovate status'
diff --git a/lib/platform/github/gh-graphql-wrapper.ts b/lib/platform/github/gh-graphql-wrapper.ts
index 1aab2f187c..076745c945 100644
--- a/lib/platform/github/gh-graphql-wrapper.ts
+++ b/lib/platform/github/gh-graphql-wrapper.ts
@@ -67,7 +67,9 @@ export async function getGraphqlNodes<T = Record<string, unknown>>(
 
   while (canIterate) {
     let replacement = `$1${fieldName}$2(first: ${count}`;
-    if (cursor) replacement += `, after: "${cursor}", `;
+    if (cursor) {
+      replacement += `, after: "${cursor}", `;
+    }
     const query = queryOrig.replace(regex, replacement);
     const gqlRes = await get<T>(query);
     if (
diff --git a/lib/platform/index.ts b/lib/platform/index.ts
index 38896f7b18..f419fce967 100644
--- a/lib/platform/index.ts
+++ b/lib/platform/index.ts
@@ -20,7 +20,9 @@ let _platform: Platform;
 
 const handler: ProxyHandler<Platform> = {
   get(_target: Platform, prop: keyof Platform) {
-    if (!_platform) throw new Error(PLATFORM_NOT_FOUND);
+    if (!_platform) {
+      throw new Error(PLATFORM_NOT_FOUND);
+    }
 
     // TODO: add more validation
 
@@ -31,12 +33,13 @@ const handler: ProxyHandler<Platform> = {
 export const platform = new Proxy<Platform>({} as any, handler);
 
 export async function setPlatformApi(name: string): Promise<void> {
-  if (!platformList.includes(name))
+  if (!platformList.includes(name)) {
     throw new Error(
       `Init: Platform "${name}" not found. Must be one of: ${platformList.join(
         ', '
       )}`
     );
+  }
   _platform = await import('./' + name);
 }
 
diff --git a/lib/platform/utils/pr-body.ts b/lib/platform/utils/pr-body.ts
index d0fcf824d1..d92fc4e541 100644
--- a/lib/platform/utils/pr-body.ts
+++ b/lib/platform/utils/pr-body.ts
@@ -11,7 +11,9 @@ export function smartTruncate(input: string, len: number): string {
     const nonReleaseNotesLength =
       input.length - releaseNotes.length - divider.length;
     const availableLength = len - nonReleaseNotesLength;
-    if (availableLength <= 0) return input.substring(0, len);
+    if (availableLength <= 0) {
+      return input.substring(0, len);
+    }
     return input.replace(
       releaseNotes,
       releaseNotes.slice(0, availableLength) + divider
diff --git a/lib/util/exec/docker/index.ts b/lib/util/exec/docker/index.ts
index ddbca758b7..7f1b735f85 100644
--- a/lib/util/exec/docker/index.ts
+++ b/lib/util/exec/docker/index.ts
@@ -26,7 +26,9 @@ export function resetPrefetchedImages(): void {
 }
 
 function expandVolumeOption(x: VolumeOption): VolumesPair | null {
-  if (typeof x === 'string') return [x, x];
+  if (typeof x === 'string') {
+    return [x, x];
+  }
   if (Array.isArray(x) && x.length === 2) {
     const [from, to] = x;
     if (typeof from === 'string' && typeof to === 'string') {
@@ -169,7 +171,9 @@ export async function generateDockerCommand(
   const containerName = getContainerName(image);
   result.push(`--name=${containerName}`);
   result.push(`--label=renovate_child`);
-  if (dockerUser) result.push(`--user=${dockerUser}`);
+  if (dockerUser) {
+    result.push(`--user=${dockerUser}`);
+  }
 
   result.push(...prepareVolumes([localDir, cacheDir, ...volumes]));
 
@@ -181,7 +185,9 @@ export async function generateDockerCommand(
     );
   }
 
-  if (cwd) result.push(`-w "${cwd}"`);
+  if (cwd) {
+    result.push(`-w "${cwd}"`);
+  }
 
   let tag;
   if (options.tag) {
diff --git a/lib/util/exec/exec.spec.ts b/lib/util/exec/exec.spec.ts
index f7c35b69ab..88a71666d9 100644
--- a/lib/util/exec/exec.spec.ts
+++ b/lib/util/exec/exec.spec.ts
@@ -400,8 +400,12 @@ describe(`Child process execution wrapper`, () => {
     } = testOpts;
 
     process.env = procEnv;
-    if (trustLevel) global.trustLevel = trustLevel;
-    if (config) setExecConfig(config);
+    if (trustLevel) {
+      global.trustLevel = trustLevel;
+    }
+    if (config) {
+      setExecConfig(config);
+    }
 
     const actualCmd: string[] = [];
     const actualOpts: ChildProcessExecOptions[] = [];
diff --git a/lib/util/exec/index.ts b/lib/util/exec/index.ts
index 0ed33a1df9..38872f617a 100644
--- a/lib/util/exec/index.ts
+++ b/lib/util/exec/index.ts
@@ -51,8 +51,12 @@ function createChildEnv(
   extraEnv: ExtraEnv
 ): ExtraEnv<string> {
   const extraEnvEntries = Object.entries({ ...extraEnv }).filter(([_, val]) => {
-    if (val === null) return false;
-    if (val === undefined) return false;
+    if (val === null) {
+      return false;
+    }
+    if (val === undefined) {
+      return false;
+    }
     return true;
   });
   const extraEnvKeys = Object.keys(extraEnvEntries);
@@ -68,8 +72,12 @@ function createChildEnv(
 
   const result: ExtraEnv<string> = {};
   Object.entries(childEnv).forEach(([key, val]) => {
-    if (val === null) return;
-    if (val === undefined) return;
+    if (val === null) {
+      return;
+    }
+    if (val === undefined) {
+      return;
+    }
     result[key] = val.toString();
   });
   return result;
diff --git a/lib/util/host-rules.ts b/lib/util/host-rules.ts
index fb5490dd6b..dc9c4a2dfb 100644
--- a/lib/util/host-rules.ts
+++ b/lib/util/host-rules.ts
@@ -20,7 +20,9 @@ export function add(params: HostRule): void {
   const confidentialFields = ['password', 'token'];
   confidentialFields.forEach(field => {
     const secret = params[field];
-    if (secret && secret.length > 3) sanitize.add(secret);
+    if (secret && secret.length > 3) {
+      sanitize.add(secret);
+    }
   });
   if (params.username && params.password) {
     const secret = Buffer.from(
@@ -145,8 +147,12 @@ export function hosts({ hostType }: { hostType: string }): string[] {
   return hostRules
     .filter(rule => rule.hostType === hostType)
     .map(rule => {
-      if (rule.hostName) return rule.hostName;
-      if (rule.baseUrl) return URL.parse(rule.baseUrl).hostname;
+      if (rule.hostName) {
+        return rule.hostName;
+      }
+      if (rule.baseUrl) {
+        return URL.parse(rule.baseUrl).hostname;
+      }
       return null;
     })
     .filter(Boolean);
diff --git a/lib/util/modules.ts b/lib/util/modules.ts
index 3b3d0b6445..5d532da9a5 100644
--- a/lib/util/modules.ts
+++ b/lib/util/modules.ts
@@ -15,8 +15,12 @@ function relatePath(here: string, there: string): string {
   }
 
   const result = [];
-  for (let x = 0; x < hereParts.length - idx; x += 1) result.push('..');
-  for (let y = idx; y < thereParts.length; y += 1) result.push(thereParts[idx]);
+  for (let x = 0; x < hereParts.length - idx; x += 1) {
+    result.push('..');
+  }
+  for (let y = idx; y < thereParts.length; y += 1) {
+    result.push(thereParts[idx]);
+  }
   return result.join('/');
 }
 
@@ -37,8 +41,9 @@ export function loadModules<T>(
     const modulePath = join(relatePath(__dirname, dirname), moduleName);
     const module = require(modulePath); // eslint-disable-line
     // istanbul ignore if
-    if (!module || (validate && !validate(module, moduleName)))
+    if (!module || (validate && !validate(module, moduleName))) {
       throw new Error(`Invalid module: ${modulePath}`);
+    }
     result[moduleName] = module as T;
   }
 
diff --git a/lib/util/sanitize.ts b/lib/util/sanitize.ts
index c132400979..a6e104b7ab 100644
--- a/lib/util/sanitize.ts
+++ b/lib/util/sanitize.ts
@@ -1,7 +1,9 @@
 const secrets = new Set<string>();
 
 export function sanitize(input: string): string {
-  if (!input) return input;
+  if (!input) {
+    return input;
+  }
   let output: string = input;
   secrets.forEach(secret => {
     while (output.includes(secret)) {
diff --git a/lib/versioning/hex/index.ts b/lib/versioning/hex/index.ts
index c47f2d37ef..711b3c7601 100644
--- a/lib/versioning/hex/index.ts
+++ b/lib/versioning/hex/index.ts
@@ -31,8 +31,11 @@ function npm2hex(input: string): string {
     if (i < res.length - 1 && res[i + 1].includes('||')) {
       output += res[i] + ' or ';
       i += 1;
-    } else if (!operators.includes(res[i])) output += res[i] + ' and ';
-    else output += res[i] + ' ';
+    } else if (!operators.includes(res[i])) {
+      output += res[i] + ' and ';
+    } else {
+      output += res[i] + ' ';
+    }
   }
   return output;
 }
diff --git a/lib/versioning/index.spec.ts b/lib/versioning/index.spec.ts
index cacf2f03c9..8cb9aba954 100644
--- a/lib/versioning/index.spec.ts
+++ b/lib/versioning/index.spec.ts
@@ -71,7 +71,9 @@ describe('allVersioning.get(versioning)', () => {
         expect(schemeKeys).toEqual(npmApi);
 
         const apiOrCtor = require('./' + supportedScheme).api;
-        if (allVersioning.isVersioningApiConstructor(apiOrCtor)) return;
+        if (allVersioning.isVersioningApiConstructor(apiOrCtor)) {
+          return;
+        }
 
         expect(Object.keys(apiOrCtor).sort()).toEqual(
           Object.keys(allVersioning.get(supportedScheme)).sort()
diff --git a/lib/versioning/ivy/index.ts b/lib/versioning/ivy/index.ts
index 336315c22d..7a67e31ea6 100644
--- a/lib/versioning/ivy/index.ts
+++ b/lib/versioning/ivy/index.ts
@@ -36,14 +36,22 @@ function isVersion(str: string): string | boolean {
 }
 
 function matches(a: string, b: string): boolean {
-  if (!a) return false;
-  if (!b) return false;
+  if (!a) {
+    return false;
+  }
+  if (!b) {
+    return false;
+  }
   const dynamicRevision = parseDynamicRevision(b);
-  if (!dynamicRevision) return equals(a, b);
+  if (!dynamicRevision) {
+    return equals(a, b);
+  }
   const { type, value } = dynamicRevision;
 
   if (type === REV_TYPE_LATEST) {
-    if (!value) return true;
+    if (!value) {
+      return true;
+    }
     const tokens = tokenize(a);
     if (tokens.length) {
       const token = tokens[tokens.length - 1];
diff --git a/lib/versioning/ivy/parse.ts b/lib/versioning/ivy/parse.ts
index b26b847133..74e1a6f0ac 100644
--- a/lib/versioning/ivy/parse.ts
+++ b/lib/versioning/ivy/parse.ts
@@ -11,7 +11,9 @@ export interface Revision {
 }
 
 function parseDynamicRevision(str: string): Revision {
-  if (!str) return null;
+  if (!str) {
+    return null;
+  }
 
   const LATEST_REGEX = /^latest\.|^latest$/i;
   if (LATEST_REGEX.test(str)) {
diff --git a/lib/versioning/maven/compare.ts b/lib/versioning/maven/compare.ts
index ef89b9a2d8..b1d7ba5547 100644
--- a/lib/versioning/maven/compare.ts
+++ b/lib/versioning/maven/compare.ts
@@ -208,16 +208,28 @@ function qualifierCmp(left: Token, right: Token): number {
   const leftOrder = qualifierType(left);
   const rightOrder = qualifierType(right);
   if (leftOrder && rightOrder) {
-    if (leftOrder < rightOrder) return -1;
-    if (leftOrder > rightOrder) return 1;
+    if (leftOrder < rightOrder) {
+      return -1;
+    }
+    if (leftOrder > rightOrder) {
+      return 1;
+    }
     return 0;
   }
 
-  if (leftOrder && leftOrder < QualifierTypes.Release) return -1;
-  if (rightOrder && rightOrder < QualifierTypes.Release) return 1;
+  if (leftOrder && leftOrder < QualifierTypes.Release) {
+    return -1;
+  }
+  if (rightOrder && rightOrder < QualifierTypes.Release) {
+    return 1;
+  }
 
-  if (left.val < right.val) return -1;
-  if (left.val > right.val) return 1;
+  if (left.val < right.val) {
+    return -1;
+  }
+  if (left.val > right.val) {
+    return 1;
+  }
   return 0;
 }
 
@@ -225,12 +237,20 @@ function tokenCmp(left: Token, right: Token): number {
   const leftOrder = commonOrder(left);
   const rightOrder = commonOrder(right);
 
-  if (leftOrder < rightOrder) return -1;
-  if (leftOrder > rightOrder) return 1;
+  if (leftOrder < rightOrder) {
+    return -1;
+  }
+  if (leftOrder > rightOrder) {
+    return 1;
+  }
 
   if (left.type === TYPE_NUMBER && right.type === TYPE_NUMBER) {
-    if (left.val < right.val) return -1;
-    if (left.val > right.val) return 1;
+    if (left.val < right.val) {
+      return -1;
+    }
+    if (left.val > right.val) {
+      return 1;
+    }
     return 0;
   }
 
@@ -245,16 +265,26 @@ function compare(left: string, right: string): number {
     const leftToken = leftTokens[idx] || nullFor(rightTokens[idx]);
     const rightToken = rightTokens[idx] || nullFor(leftTokens[idx]);
     const cmpResult = tokenCmp(leftToken, rightToken);
-    if (cmpResult !== 0) return cmpResult;
+    if (cmpResult !== 0) {
+      return cmpResult;
+    }
   }
   return 0;
 }
 
 function isVersion(version: string): boolean {
-  if (!version) return false;
-  if (!/^[a-z0-9.-]+$/i.test(version)) return false;
-  if (/^[.-]/.test(version)) return false;
-  if (/[.-]$/.test(version)) return false;
+  if (!version) {
+    return false;
+  }
+  if (!/^[a-z0-9.-]+$/i.test(version)) {
+    return false;
+  }
+  if (/^[.-]/.test(version)) {
+    return false;
+  }
+  if (/[.-]$/.test(version)) {
+    return false;
+  }
   const tokens = tokenize(version);
   return !!tokens.length;
 }
@@ -279,7 +309,9 @@ function parseRange(rangeStr: string): any {
   let interval = emptyInterval();
 
   commaSplit.forEach(subStr => {
-    if (!result) return;
+    if (!result) {
+      return;
+    }
     if (interval.leftType === null) {
       if (/^\[.*]$/.test(subStr)) {
         const ver = subStr.slice(1, -1);
@@ -324,8 +356,12 @@ function parseRange(rangeStr: string): any {
     }
   });
 
-  if (interval.leftType) return null; // something like '[1,2],[3'
-  if (!result || !result.length) return null;
+  if (interval.leftType) {
+    return null;
+  } // something like '[1,2],[3'
+  if (!result || !result.length) {
+    return null;
+  }
 
   const lastIdx = result.length - 1;
   let prevValue: string = null;
@@ -341,14 +377,20 @@ function parseRange(rangeStr: string): any {
     }
     if (idx === lastIdx && rightValue === '') {
       if (rightType === EXCLUDING_POINT && isVersion(leftValue)) {
-        if (prevValue && compare(prevValue, leftValue) === 1) return null;
+        if (prevValue && compare(prevValue, leftValue) === 1) {
+          return null;
+        }
         return [...acc, { ...range, rightValue: null }];
       }
       return null;
     }
     if (isVersion(leftValue) && isVersion(rightValue)) {
-      if (compare(leftValue, rightValue) === 1) return null;
-      if (prevValue && compare(prevValue, leftValue) === 1) return null;
+      if (compare(leftValue, rightValue) === 1) {
+        return null;
+      }
+      if (prevValue && compare(prevValue, leftValue) === 1) {
+        return null;
+      }
       prevValue = rightValue;
       return [...acc, range];
     }
@@ -373,7 +415,9 @@ export interface Range {
 }
 
 function rangeToStr(fullRange: Range[]): string | null {
-  if (fullRange === null) return null;
+  if (fullRange === null) {
+    return null;
+  }
 
   const valToStr = (val: string): string => (val === null ? '' : val);
 
@@ -405,9 +449,13 @@ function autoExtendMavenRange(
   newValue: string
 ): string | null {
   const range = parseRange(currentRepresentation);
-  if (!range) return currentRepresentation;
+  if (!range) {
+    return currentRepresentation;
+  }
   const isPoint = (vals: Range[]): boolean => {
-    if (vals.length !== 1) return false;
+    if (vals.length !== 1) {
+      return false;
+    }
     const { leftType, leftValue, rightType, rightValue } = vals[0];
     return (
       leftType === 'INCLUDING_POINT' &&
diff --git a/lib/versioning/maven/index.ts b/lib/versioning/maven/index.ts
index 6be9fceefa..32d964cd05 100644
--- a/lib/versioning/maven/index.ts
+++ b/lib/versioning/maven/index.ts
@@ -27,12 +27,20 @@ export const supportedRangeStrategies = ['bump', 'extend', 'pin', 'replace'];
 const equals = (a: string, b: string): boolean => compare(a, b) === 0;
 
 function matches(a: string, b: string): boolean {
-  if (!b) return false;
-  if (isVersion(b)) return equals(a, b);
+  if (!b) {
+    return false;
+  }
+  if (isVersion(b)) {
+    return equals(a, b);
+  }
   const ranges = parseRange(b);
-  if (!ranges) return false;
+  if (!ranges) {
+    return false;
+  }
   return ranges.reduce((result, range): any => {
-    if (result) return result;
+    if (result) {
+      return result;
+    }
 
     const { leftType, leftValue, rightType, rightValue } = range;
 
@@ -117,8 +125,12 @@ const maxSatisfyingVersion = (versions: string[], range: string): string => {
   // istanbul ignore next
   return versions.reduce((result, version) => {
     if (matches(version, range)) {
-      if (!result) return version;
-      if (isGreaterThan(version, result)) return version;
+      if (!result) {
+        return version;
+      }
+      if (isGreaterThan(version, result)) {
+        return version;
+      }
     }
     return result;
   }, null);
diff --git a/lib/versioning/regex/index.ts b/lib/versioning/regex/index.ts
index 67462d0ab5..a2ed1f49b7 100644
--- a/lib/versioning/regex/index.ts
+++ b/lib/versioning/regex/index.ts
@@ -42,9 +42,10 @@ export class RegExpVersioningApi extends GenericVersioningApi<RegExpVersion> {
 
   constructor(new_config: string) {
     super();
-    if (!new_config)
+    if (!new_config) {
       // eslint-disable-next-line no-param-reassign
       new_config = '^(?<major>\\d+)?$';
+    }
 
     // without at least one of {major, minor, patch} specified in the regex,
     // this versioner will not work properly
diff --git a/lib/versioning/ruby/index.ts b/lib/versioning/ruby/index.ts
index 06e9e0b7d4..bcf49c1a4c 100644
--- a/lib/versioning/ruby/index.ts
+++ b/lib/versioning/ruby/index.ts
@@ -24,7 +24,9 @@ export const supportsRanges = true;
 export const supportedRangeStrategies = ['bump', 'extend', 'pin', 'replace'];
 
 function vtrim<T = unknown>(version: T): string | T {
-  if (typeof version === 'string') return version.replace(/^v/, '');
+  if (typeof version === 'string') {
+    return version.replace(/^v/, '');
+  }
   return version;
 }
 
diff --git a/lib/versioning/ruby/strategies/replace.ts b/lib/versioning/ruby/strategies/replace.ts
index 8db76c9671..8ac3650296 100644
--- a/lib/versioning/ruby/strategies/replace.ts
+++ b/lib/versioning/ruby/strategies/replace.ts
@@ -38,7 +38,9 @@ function isCommonRubyMinorRange(range: string): boolean {
 function reduceOnePrecision(version: string): string {
   const versionParts = version.split('.');
   // istanbul ignore if
-  if (versionParts.length === 1) return version;
+  if (versionParts.length === 1) {
+    return version;
+  }
   versionParts.pop();
   return versionParts.join('.');
 }
diff --git a/lib/workers/branch/automerge.ts b/lib/workers/branch/automerge.ts
index dc3ccbf80b..0e7ee18f66 100644
--- a/lib/workers/branch/automerge.ts
+++ b/lib/workers/branch/automerge.ts
@@ -29,9 +29,11 @@ export async function tryBranchAutomerge(
   if (branchStatus === BranchStatus.green) {
     logger.debug(`Automerging branch`);
     try {
-      if (config.dryRun)
+      if (config.dryRun) {
         logger.info('DRY-RUN: Would automerge branch' + config.branchName);
-      else await platform.mergeBranch(config.branchName);
+      } else {
+        await platform.mergeBranch(config.branchName);
+      }
       logger.info({ branch: config.branchName }, 'Branch automerged');
       return 'automerged'; // Branch no longer exists
     } catch (err) {
diff --git a/lib/workers/pr/index.ts b/lib/workers/pr/index.ts
index 33084f9391..2fb8d91462 100644
--- a/lib/workers/pr/index.ts
+++ b/lib/workers/pr/index.ts
@@ -198,7 +198,9 @@ export async function ensurePr(
 
     if (logJSON) {
       if (typeof logJSON.error === 'undefined') {
-        if (logJSON.project) upgrade.githubName = logJSON.project.github;
+        if (logJSON.project) {
+          upgrade.githubName = logJSON.project.github;
+        }
         upgrade.hasReleaseNotes = logJSON.hasReleaseNotes;
         upgrade.releases = [];
         if (
diff --git a/lib/workers/repository/error-config.ts b/lib/workers/repository/error-config.ts
index c4d04e37de..712b914f8b 100644
--- a/lib/workers/repository/error-config.ts
+++ b/lib/workers/repository/error-config.ts
@@ -23,7 +23,9 @@ export async function raiseConfigWarningIssue(
     body += `\n\nOnce you have resolved this problem (in this onboarding branch), Renovate will return to providing you with a preview of your repository's configuration.`;
     if (config.dryRun) {
       logger.info('DRY-RUN: Would update PR #' + pr.number);
-    } else await platform.updatePr(pr.number, config.onboardingPrTitle, body);
+    } else {
+      await platform.updatePr(pr.number, config.onboardingPrTitle, body);
+    }
   } else if (config.dryRun) {
     logger.info('DRY-RUN: Would ensure config error issue');
   } else {
diff --git a/lib/workers/repository/finalise/prune.ts b/lib/workers/repository/finalise/prune.ts
index b4b0e34768..1d8885c931 100644
--- a/lib/workers/repository/finalise/prune.ts
+++ b/lib/workers/repository/finalise/prune.ts
@@ -26,7 +26,9 @@ async function cleanUpBranches(
             logger.info(
               `PRUNING-DISABLED: Would update pr ${pr.number} to ${pr.title} - autoclosed`
             );
-          } else await platform.updatePr(pr.number, `${pr.title} - autoclosed`);
+          } else {
+            await platform.updatePr(pr.number, `${pr.title} - autoclosed`);
+          }
         }
       }
       const closePr = true;
@@ -54,7 +56,9 @@ async function cleanUpBranches(
         logger.info(
           `PRUNING-DISABLED: Would deleting orphan branch ${branchName}`
         );
-      } else await platform.deleteBranch(branchName, closePr);
+      } else {
+        await platform.deleteBranch(branchName, closePr);
+      }
       if (pr && !skipAutoclose) {
         logger.info({ prNo: pr.number, prTitle: pr.title }, 'PR autoclosed');
       }
diff --git a/lib/workers/repository/onboarding/pr/errors-warnings.ts b/lib/workers/repository/onboarding/pr/errors-warnings.ts
index cc029f32a7..0da1730ab1 100644
--- a/lib/workers/repository/onboarding/pr/errors-warnings.ts
+++ b/lib/workers/repository/onboarding/pr/errors-warnings.ts
@@ -38,7 +38,7 @@ export function getDepWarnings(
     const warnings = [];
     const warningFiles = [];
     for (const files of Object.values(packageFiles || {})) {
-      for (const file of files || [])
+      for (const file of files || []) {
         if (file.deps) {
           for (const dep of file.deps || []) {
             if (dep.warnings && dep.warnings.length) {
@@ -52,6 +52,7 @@ export function getDepWarnings(
             }
           }
         }
+      }
     }
     if (!warnings.length) {
       return '';
diff --git a/lib/workers/repository/process/lookup/index.ts b/lib/workers/repository/process/lookup/index.ts
index fdc6c5652c..5b24ec1233 100644
--- a/lib/workers/repository/process/lookup/index.ts
+++ b/lib/workers/repository/process/lookup/index.ts
@@ -139,7 +139,9 @@ export async function lookupUpdates(
   const res: UpdateResult = { updates: [], warnings: [] } as any;
 
   const isValid = currentValue && version.isValid(currentValue);
-  if (!isValid) res.skipReason = SkipReason.InvalidValue;
+  if (!isValid) {
+    res.skipReason = SkipReason.InvalidValue;
+  }
 
   if (isValid) {
     const dependency = clone(await getPkgReleases(config));
diff --git a/lib/workers/repository/updates/generate.ts b/lib/workers/repository/updates/generate.ts
index 147d26f3c3..d8848f9b09 100644
--- a/lib/workers/repository/updates/generate.ts
+++ b/lib/workers/repository/updates/generate.ts
@@ -297,8 +297,12 @@ export function generateBranchConfig(
         // This is because we need to replace from the bottom of the file up
         return a.fileReplacePosition > b.fileReplacePosition ? -1 : 1;
       }
-      if (a.depName < b.depName) return -1;
-      if (a.depName > b.depName) return 1;
+      if (a.depName < b.depName) {
+        return -1;
+      }
+      if (a.depName > b.depName) {
+        return 1;
+      }
       return 0;
     });
   }
diff --git a/tools/patch-jest.mjs b/tools/patch-jest.mjs
index 8c68932219..bd8e6e73ba 100644
--- a/tools/patch-jest.mjs
+++ b/tools/patch-jest.mjs
@@ -15,7 +15,9 @@ function patchJest() {
     shell.echo('Found backup, restore jest-runtime.');
     shell.cp(`${file}.bak`, file);
   }
-  if (restore) return;
+  if (restore) {
+    return;
+  }
 
   shell.echo('-n', 'Patching jest-runtime ... ');
 
@@ -23,12 +25,16 @@ function patchJest() {
 
   let idx = code.indexOf('_requireCoreModule(moduleName)');
 
-  if (idx < 0) return;
+  if (idx < 0) {
+    return;
+  }
 
   const orig = 'return require(moduleName);';
   idx = code.indexOf(orig);
 
-  if (idx < 0) return;
+  if (idx < 0) {
+    return;
+  }
 
   const patched = `if (!this._coreModulesProxyCache) {
       this._coreModulesProxyCache = Object.create(null);
diff --git a/tools/release.mjs b/tools/release.mjs
index 7e1782bdc2..3e73455d65 100644
--- a/tools/release.mjs
+++ b/tools/release.mjs
@@ -20,4 +20,6 @@ if (!exec(`./.github/workflows/release-docker.sh ${version} ${sha}`)) {
   err = true;
 }
 
-if (err) shell.exit(1);
+if (err) {
+  shell.exit(1);
+}
-- 
GitLab