Tooling: dt-header fast follow fixes (#61805)

* Tooling: dt-header fast follow fixes

* Enable JSDoc, jakebailey is right

* Improve type annotations slightly

A little less precision globally, a little more where it's useful.

Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
This commit is contained in:
Josh Goldberg
2022-08-19 18:17:50 -04:00
committed by GitHub
parent 0a4b8f5421
commit c9e4975251
151 changed files with 371 additions and 102 deletions

View File

@@ -1,5 +1,5 @@
{
"exclude": ["close-old-issues.js", "fix-tslint.js", "tslint-rule-to-eslint.js"],
"exclude": ["close-old-issues.js", "fix-tslint.js"],
"compilerOptions": {
"noUnusedLocals": true,
"target": "es6",

View File

@@ -3,8 +3,13 @@ import { promises as fs } from 'fs';
import { format } from 'prettier';
import * as path from 'path';
/** @type {any} */
const emptyObject = {};
/**
* @param {string} filePath
* @returns {Promise<any>}
*/
const parseAndReadFileContents = async filePath => {
try {
return parse((await fs.readFile(filePath)).toString());
@@ -16,6 +21,10 @@ const parseAndReadFileContents = async filePath => {
(async () => {
const prettierConfig = await parseAndReadFileContents('.prettierrc.json');
/**
* @param {string} filePath
* @param {unknown} contents
*/
const writeFileFormatted = async (filePath, contents) => {
await fs.writeFile(
filePath,
@@ -32,7 +41,14 @@ const parseAndReadFileContents = async filePath => {
for (const typeName of typeNames) {
const typeDirectory = path.join('types', typeName);
typeNames.push(
...(await fs.readdir(typeDirectory))
.filter(childDirectory => /^(ts|v)(\d+|\.)+$/.test(childDirectory))
.map(childDirectory => path.join(typeName, childDirectory)),
);
const tslintFilePath = path.join(typeDirectory, 'tslint.json');
/** @type {{ rules?: { [s:string]: boolean }}} */
const tslintData = await parseAndReadFileContents(tslintFilePath);
if (tslintData?.rules?.[tslintRuleName] !== false) {
continue;
@@ -43,7 +59,7 @@ const parseAndReadFileContents = async filePath => {
delete tslintData.rules[tslintRuleName];
if (Object.keys(tslintData.rules).length === 0) {
console.log(`\t${tslintFilePath} has no remaining rules; deleting rules property.`);
delete tslintFilePath.rules;
delete tslintData.rules;
} else {
console.log(`\t${tslintFilePath} has remaining rules.`);
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"no-boolean-literal-compare": false,
"no-consecutive-blank-lines": false,
"no-internal-module": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -5,7 +5,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"jsdoc-format": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -5,7 +5,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"jsdoc-format": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"arrow-return-shorthand": false,
"ban-types": false,
"dt-header": false,
"jsdoc-format": false,
"no-consecutive-blank-lines": false,
"no-padding": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"ban-types": false,
"comment-format": false,
"dt-header": false,
"no-empty-interface": false,
"no-padding": false,
"no-single-declare-module": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"comment-format": false,
"dt-header": false,
"no-duplicate-variable": false,
"no-misused-new": false,
"no-padding": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"array-type": false,
"ban-types": false,
"dt-header": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,
"no-duplicate-variable": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"array-type": false,
"dt-header": false,
"no-duplicate-variable": false,
"no-padding": false,
"no-var-keyword": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,6 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false
}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"array-type": false,
"ban-types": false,
"dt-header": false,
"export-just-namespace": false,
"no-any-union": false,
"no-consecutive-blank-lines": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,
"no-duplicate-variable": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,
"no-duplicate-variable": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"interface-name": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"interface-name": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"interface-name": false,
"max-line-length": false,
"no-consecutive-blank-lines": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"max-line-length": false,
"no-duplicate-variable": false,
"no-empty-interface": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"no-var-keyword": false,
"object-literal-shorthand": false,
"only-arrow-functions": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -4,7 +4,6 @@
"adjacent-overload-signatures": false,
"array-type": false,
"ban-types": false,
"dt-header": false,
"max-line-length": false,
"no-padding": false,
"no-reference-import": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"adjacent-overload-signatures": false,
"ban-types": false,
"dt-header": false,
"jsdoc-format": false,
"no-any-union": false,
"no-consecutive-blank-lines": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"array-type": false,
"dt-header": false,
"export-just-namespace": false,
"no-padding": false,
"no-reference-import": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"no-single-declare-module": false,
"no-unnecessary-type-assertion": false,
"no-var-keyword": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"comment-format": false,
"dt-header": false,
"no-padding": false,
"no-var-keyword": false,
"prefer-const": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"ban-types": false,
"dt-header": false,
"no-duplicate-variable": false,
"no-unnecessary-class": false,
"no-var-keyword": false

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -2,7 +2,6 @@
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"array-type": false,
"dt-header": false,
"no-consecutive-blank-lines": false,
"no-padding": false,
"no-reference-import": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"no-consecutive-blank-lines": false,
"no-padding": false,
"no-var-keyword": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -4,7 +4,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -4,7 +4,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"no-consecutive-blank-lines": false,
"no-var-keyword": false,
"only-arrow-functions": false,

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -4,7 +4,6 @@
"adjacent-overload-signatures": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"no-consecutive-blank-lines": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"jsdoc-format": false,
"no-consecutive-blank-lines": false,
"no-var-keyword": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -4,7 +4,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -1,5 +1,6 @@
{
"rules": {
"no-const-enum": "off"
}
"rules": {
"no-const-enum": "off",
"dt-header": "off"
}
}

View File

@@ -5,7 +5,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"no-any-union": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -3,7 +3,6 @@
"rules": {
"array-type": false,
"ban-types": false,
"dt-header": false,
"interface-name": false,
"no-consecutive-blank-lines": false,
"no-single-declare-module": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -5,7 +5,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"interface-name": false,
"jsdoc-format": false,
"max-line-length": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -4,7 +4,6 @@
"array-type": false,
"ban-types": false,
"comment-format": false,
"dt-header": false,
"jsdoc-format": false,
"no-consecutive-blank-lines": false,
"no-padding": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"interface-name": false,
"no-single-declare-module": false,
"no-unnecessary-generics": false,

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"no-unnecessary-generics": false,
"no-unnecessary-type-assertion": false
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"no-unnecessary-generics": false
}
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"no-unnecessary-generics": false
}
}

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -1,4 +1,3 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {}
"extends": "@definitelytyped/dtslint/dt.json"
}

View File

@@ -0,0 +1,5 @@
{
"rules": {
"dt-header": "off"
}
}

View File

@@ -1,7 +1,6 @@
{
"extends": "@definitelytyped/dtslint/dt.json",
"rules": {
"dt-header": false,
"strict-export-declare-modifiers": false
}
}

Some files were not shown because too many files have changed in this diff Show More