diff --git a/lib/platform/azure/index.ts b/lib/platform/azure/index.ts index 9b75df0ff01ff8422dd462159a03dd6448cc421e..ceb270426349876c24aaee7c47001480aa8a89a4 100644 --- a/lib/platform/azure/index.ts +++ b/lib/platform/azure/index.ts @@ -502,6 +502,7 @@ export /* istanbul ignore next */ function ensureIssue() { logger.warn(`ensureIssue() is not implemented`); } +// eslint-disable-next-line @typescript-eslint/no-empty-function export /* istanbul ignore next */ function ensureIssueClosing() {} export /* istanbul ignore next */ function getIssueList() { diff --git a/lib/platform/bitbucket/index.ts b/lib/platform/bitbucket/index.ts index afb32278a9f700ca593aa532f28ca56efce66b0c..5daac06a82096a7c1bc2844a098eb8f3dff0b7d7 100644 --- a/lib/platform/bitbucket/index.ts +++ b/lib/platform/bitbucket/index.ts @@ -497,7 +497,7 @@ function matchesState(state: string, desiredState: string) { export async function findPr( branchName: string, prTitle?: string | null, - state: string = 'all' + state = 'all' ) { logger.debug(`findPr(${branchName}, ${prTitle}, ${state})`); const prList = await getPrList(); diff --git a/lib/platform/git/storage.ts b/lib/platform/git/storage.ts index 3abd432ef896737e1b9badb29835f87e37dc606c..f4bfc524b292b2b16ec57a49c1d1fc006a565281 100644 --- a/lib/platform/git/storage.ts +++ b/lib/platform/git/storage.ts @@ -436,7 +436,7 @@ export class Storage { } } - // eslint-disable-next-line class-methods-use-this + // eslint-disable-next-line cleanRepo() {} static getUrl({ diff --git a/lib/workers/branch/get-updated.js b/lib/workers/branch/get-updated.js index 7e0cc6240c46557823138d86c4ac6634fd5433ec..7bda9a23ee34edf0dafd28aa7f1251d4b94205d3 100644 --- a/lib/workers/branch/get-updated.js +++ b/lib/workers/branch/get-updated.js @@ -81,8 +81,7 @@ async function getUpdatedPackageFiles(config) { config ); if (is.nonEmptyArray(results)) { - for (const res of results) { - // @ts-ignore + for (/** @type any */ const res of results) { const { file, artifactError } = res; if (file) { updatedArtifacts.push(file); @@ -109,8 +108,7 @@ async function getUpdatedPackageFiles(config) { config ); if (is.nonEmptyArray(results)) { - for (const res of results) { - // @ts-ignore + for (/** @type any */ const res of results) { const { file, artifactError } = res; if (file) { updatedArtifacts.push(file); diff --git a/lib/workers/branch/schedule.js b/lib/workers/branch/schedule.js index 4ce8a67136d20ea78520bc667f90fe1c23f6c5a2..2831dbe6547b5fee5330c54bbeaa28698776a138 100644 --- a/lib/workers/branch/schedule.js +++ b/lib/workers/branch/schedule.js @@ -15,6 +15,9 @@ function fixShortHours(input) { return input.replace(/( \d?\d)((a|p)m)/g, '$1:00$2'); } +/** + * @returns {[boolean] | [boolean, string]} + */ function hasValidTimezone(timezone) { if (!moment.tz.zone(timezone)) { return [false, `Invalid timezone: ${timezone}`]; @@ -22,6 +25,9 @@ function hasValidTimezone(timezone) { return [true]; } +/** + * @returns {[boolean] | [boolean, string]} + */ function hasValidSchedule(schedule) { let message; if ( @@ -85,7 +91,6 @@ function isScheduledNow(config) { } const [validSchedule, errorMessage] = hasValidSchedule(configSchedule); if (!validSchedule) { - // @ts-ignore logger.warn(errorMessage); return true; } @@ -96,7 +101,6 @@ function isScheduledNow(config) { logger.debug({ timezone: config.timezone }, 'Found timezone'); const [validTimezone, error] = hasValidTimezone(config.timezone); if (!validTimezone) { - // @ts-ignore logger.warn(error); return true; } diff --git a/lib/workers/global/index.js b/lib/workers/global/index.js index 281e0e94e73894fc34c74dacd33e5d3b6814948f..31bdba775b7bb47a4f29cbe1c99bae943cf2a434 100644 --- a/lib/workers/global/index.js +++ b/lib/workers/global/index.js @@ -73,7 +73,6 @@ async function start() { // istanbul ignore next function detectRenovateVersion() { try { - // @ts-ignore global.renovateVersion = require('../../../package.json').version; // eslint-disable-line global-require } catch (err) { logger.debug({ err }, 'Error getting renovate version'); diff --git a/lib/workers/pr/changelog/source-github.js b/lib/workers/pr/changelog/source-github.js index 05106fb169295385993f190eb4d15e9cddb24103..e1b49523f1d0e8052b5056345921ae5bcf2b48c8 100644 --- a/lib/workers/pr/changelog/source-github.js +++ b/lib/workers/pr/changelog/source-github.js @@ -70,7 +70,6 @@ async function getChangeLogJSON({ const githubApiBaseURL = sourceUrl.startsWith('https://github.com/') ? 'https://api.github.com/' : endpoint; // TODO FIX - // @ts-ignore const repository = pathname.slice(1).replace(/\/$/, ''); if (repository.split('/').length !== 2) { logger.info({ sourceUrl }, 'Invalid github URL found'); diff --git a/lib/workers/repository/finalise/validate.js b/lib/workers/repository/finalise/validate.js index ade9c898dadc1c9a0762161712fb47b3f690f3f8..dd26a2e31315e07faf9aa247d0fc3f80a2b79714 100644 --- a/lib/workers/repository/finalise/validate.js +++ b/lib/workers/repository/finalise/validate.js @@ -52,10 +52,7 @@ async function validatePrs(config) { if (file.endsWith('.json5')) { parsed = JSON5.parse(content); } else { - parsed = JSON.parse( - // @ts-ignore - content - ); + parsed = JSON.parse(content); } } catch (err) { validations.push({ diff --git a/lib/workers/repository/init/config.js b/lib/workers/repository/init/config.js index 6b8ad59b143a071783618922dfd8be391af73c0e..07ded19677e8dddf430308f74cba8c52af3a22ba 100644 --- a/lib/workers/repository/init/config.js +++ b/lib/workers/repository/init/config.js @@ -20,10 +20,7 @@ async function mergeRenovateConfig(config) { for (const fileName of configFileNames) { if (fileName === 'package.json') { try { - const pJson = JSON.parse( - // @ts-ignore - await platform.getFile('package.json') - ); + const pJson = JSON.parse(await platform.getFile('package.json')); if (pJson.renovate) { logger.info('Using package.json for global renovate config'); return 'package.json'; @@ -46,10 +43,7 @@ async function mergeRenovateConfig(config) { let renovateJson; if (configFile === 'package.json') { // We already know it parses - renovateJson = JSON.parse( - // @ts-ignore - await platform.getFile('package.json') - ).renovate; + renovateJson = JSON.parse(await platform.getFile('package.json')).renovate; logger.info({ config: renovateJson }, 'package.json>renovate config'); } else { let renovateConfig = await platform.getFile(configFile); diff --git a/lib/workers/repository/init/index.js b/lib/workers/repository/init/index.js index 245bcfc9a1943f8239e9973629f9d5b5c0fd39d7..9870527218fd64736dfc8ce368f4a1ca87471e93 100644 --- a/lib/workers/repository/init/index.js +++ b/lib/workers/repository/init/index.js @@ -8,7 +8,6 @@ const { detectSemanticCommits } = require('./semantic'); const { detectVulnerabilityAlerts } = require('./vulnerability'); async function initRepo(input) { - // @ts-ignore global.repoCache = {}; let config = { ...input, diff --git a/lib/workers/repository/onboarding/branch/check.js b/lib/workers/repository/onboarding/branch/check.js index 1b37cacc7c5f9ee5deea272a57e378e416862482..1c7c9e4f976811a9b9261c3dc12078a63abf5750 100644 --- a/lib/workers/repository/onboarding/branch/check.js +++ b/lib/workers/repository/onboarding/branch/check.js @@ -24,10 +24,7 @@ const configFileExists = async () => { const packageJsonConfigExists = async () => { try { - const pJson = JSON.parse( - // @ts-ignore - await platform.getFile('package.json') - ); + const pJson = JSON.parse(await platform.getFile('package.json')); if (pJson[appSlug]) { return true; } diff --git a/lib/workers/repository/onboarding/branch/config.js b/lib/workers/repository/onboarding/branch/config.js index ffde5255ae8f321ebfb295ab622b5dd1306f74d2..de9d0f6ada0da869625d2311b13922dcaa3c82b7 100644 --- a/lib/workers/repository/onboarding/branch/config.js +++ b/lib/workers/repository/onboarding/branch/config.js @@ -13,10 +13,8 @@ async function getOnboardingConfig(config) { try { logger.debug('Checking for greenkeeper config'); - const greenkeeperConfig = JSON.parse( - // @ts-ignore - await platform.getFile('package.json') - ).greenkeeper; + const greenkeeperConfig = JSON.parse(await platform.getFile('package.json')) + .greenkeeper; if (greenkeeperConfig) { onboardingConfig.statusCheckVerify = true; } diff --git a/lib/workers/repository/process/lookup/filter.js b/lib/workers/repository/process/lookup/filter.js index 20c671cebe3b1a50577605ed988b021ab3aa6e4f..6493acbef3b3f8e3ae3b711286494ffbea5ec6c9 100644 --- a/lib/workers/repository/process/lookup/filter.js +++ b/lib/workers/repository/process/lookup/filter.js @@ -56,11 +56,7 @@ function filterVersions( 'Falling back to npm semver syntax for allowedVersions' ); filteredVersions = filteredVersions.filter(v => - semver.satisfies( - // @ts-ignore - semver.coerce(v), - allowedVersions - ) + semver.satisfies(semver.coerce(v), allowedVersions) ); } else { logger.warn( diff --git a/lib/workers/repository/process/write.js b/lib/workers/repository/process/write.js index 97ee733fd43feb2b6e125ef00d109a45c9463c46..4c0daa1aa66b12238c60c8267ea962add9f77229 100644 --- a/lib/workers/repository/process/write.js +++ b/lib/workers/repository/process/write.js @@ -31,7 +31,6 @@ async function writeUpdates(config, packageFiles, allBranches) { packageFiles ); branch.res = res; - // @ts-ignore if (res === 'automerged' && config.automergeType !== 'pr-comment') { // Stop procesing other branches because base branch has been changed return res; diff --git a/test/types/jest.d.ts b/test/types/jest.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..ffc34fccce9380b7299be345a4ca625f5573ded5 --- /dev/null +++ b/test/types/jest.d.ts @@ -0,0 +1,9 @@ +declare namespace jest { + interface Matchers<R> { + /** + * only available in `test/website-docs.spec.js` + * @param arg + */ + toContainOption(arg: R): void; + } +} diff --git a/test/website-docs.spec.js b/test/website-docs.spec.js index 1c95febf0ea10049d97d0f1d3c09e7b15a7ae664..f484442d4f125a396e99b9c649749c887875f492 100644 --- a/test/website-docs.spec.js +++ b/test/website-docs.spec.js @@ -86,7 +86,6 @@ describe('docs', () => { // Lists through each option in the relatedOptions array to be able to locate the exact element which causes error, in case of one it('has valid relateOptions values', () => { relatedOptions.forEach(relOption => { - // @ts-ignore expect(allOptionNames).toContainOption(relOption); }); });