From e9b88777de3d8bfbc55ff1f4a94cf594390dd268 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Sat, 23 Feb 2019 13:03:47 -0800 Subject: [PATCH] Add "format" rule category (#2832) --- docs/rules/index.md | 6 ++++++ src/language/rule/rule.ts | 2 +- src/rules/alignRule.ts | 2 +- src/rules/arrowParensRule.ts | 2 +- src/rules/eoflineRule.ts | 2 +- src/rules/importSpacingRule.ts | 2 +- src/rules/indentRule.ts | 2 +- src/rules/jsdocFormatRule.ts | 2 +- src/rules/linebreakStyleRule.ts | 2 +- src/rules/maxLineLengthRule.ts | 2 +- src/rules/newParensRule.ts | 2 +- src/rules/newlineBeforeReturnRule.ts | 2 +- src/rules/noConsecutiveBlankLinesRule.ts | 2 +- src/rules/noIrregularWhitespaceRule.ts | 2 +- src/rules/noTrailingWhitespaceRule.ts | 2 +- src/rules/numberLiteralFormatRule.ts | 2 +- src/rules/quotemarkRule.ts | 2 +- src/rules/semicolonRule.ts | 2 +- src/rules/trailingCommaRule.ts | 2 +- src/rules/typedefWhitespaceRule.ts | 2 +- src/rules/whitespaceRule.ts | 2 +- 21 files changed, 26 insertions(+), 20 deletions(-) diff --git a/docs/rules/index.md b/docs/rules/index.md index cb4f6501876..a44479ebd93 100644 --- a/docs/rules/index.md +++ b/docs/rules/index.md @@ -31,3 +31,9 @@ _These rules make code maintenance easier_: _These rules enforce consistent style across your codebase_: {% include rule_list.html ruleType="style" %} + +### Format + +_These rules enforce consistent use of whitespace and punctuation_: + +{% include rule_list.html ruleType="format" %} diff --git a/src/language/rule/rule.ts b/src/language/rule/rule.ts index 960bdb774ca..94caec06d2e 100644 --- a/src/language/rule/rule.ts +++ b/src/language/rule/rule.ts @@ -96,7 +96,7 @@ export interface IRuleMetadata { codeExamples?: ICodeExample[]; } -export type RuleType = "functionality" | "maintainability" | "style" | "typescript"; +export type RuleType = "functionality" | "maintainability" | "style" | "typescript" | "format"; export type RuleSeverity = "warning" | "error" | "off"; diff --git a/src/rules/alignRule.ts b/src/rules/alignRule.ts index 0cb3e16224d..65c3fd32462 100644 --- a/src/rules/alignRule.ts +++ b/src/rules/alignRule.ts @@ -70,7 +70,7 @@ export class Rule extends Lint.Rules.AbstractRule { maxLength: 5, }, optionExamples: [[true, "parameters", "statements"]], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/arrowParensRule.ts b/src/rules/arrowParensRule.ts index 25c278efece..55a7469dfbb 100644 --- a/src/rules/arrowParensRule.ts +++ b/src/rules/arrowParensRule.ts @@ -41,7 +41,7 @@ export class Rule extends Lint.Rules.AbstractRule { enum: [BAN_SINGLE_ARG_PARENS], }, optionExamples: [true, [true, BAN_SINGLE_ARG_PARENS]], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/eoflineRule.ts b/src/rules/eoflineRule.ts index a152bb1425b..ab1ecb74e37 100644 --- a/src/rules/eoflineRule.ts +++ b/src/rules/eoflineRule.ts @@ -31,7 +31,7 @@ export class Rule extends Lint.Rules.AbstractRule { options: null, optionExamples: [true], hasFix: true, - type: "maintainability", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/importSpacingRule.ts b/src/rules/importSpacingRule.ts index 80132e6ed7d..d914ac3cfdf 100644 --- a/src/rules/importSpacingRule.ts +++ b/src/rules/importSpacingRule.ts @@ -30,7 +30,7 @@ export class Rule extends Lint.Rules.AbstractRule { optionsDescription: "Not configurable.", options: null, optionExamples: [true], - type: "style", + type: "format", typescriptOnly: false, }; diff --git a/src/rules/indentRule.ts b/src/rules/indentRule.ts index c1e44b29450..a50213ab913 100644 --- a/src/rules/indentRule.ts +++ b/src/rules/indentRule.ts @@ -69,7 +69,7 @@ export class Rule extends Lint.Rules.AbstractRule { [true, OPTION_USE_TABS, OPTION_INDENT_SIZE_2], ], hasFix: true, - type: "maintainability", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/jsdocFormatRule.ts b/src/rules/jsdocFormatRule.ts index 656f17a5595..b235bbc753f 100644 --- a/src/rules/jsdocFormatRule.ts +++ b/src/rules/jsdocFormatRule.ts @@ -51,7 +51,7 @@ export class Rule extends Lint.Rules.AbstractRule { }, }, optionExamples: [true, [true, OPTION_CHECK_MULTILINE_START]], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/linebreakStyleRule.ts b/src/rules/linebreakStyleRule.ts index 84ebe2d88bc..81d77b5ebc1 100644 --- a/src/rules/linebreakStyleRule.ts +++ b/src/rules/linebreakStyleRule.ts @@ -37,7 +37,7 @@ export class Rule extends Lint.Rules.AbstractRule { enum: [OPTION_LINEBREAK_STYLE_LF, OPTION_LINEBREAK_STYLE_CRLF], }, optionExamples: [[true, OPTION_LINEBREAK_STYLE_LF], [true, OPTION_LINEBREAK_STYLE_CRLF]], - type: "maintainability", + type: "format", typescriptOnly: false, hasFix: true, }; diff --git a/src/rules/maxLineLengthRule.ts b/src/rules/maxLineLengthRule.ts index ebb7f44abfe..50c1ccb1dc4 100644 --- a/src/rules/maxLineLengthRule.ts +++ b/src/rules/maxLineLengthRule.ts @@ -77,7 +77,7 @@ export class Rule extends Lint.Rules.AbstractRule { }, ], ], - type: "maintainability", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/newParensRule.ts b/src/rules/newParensRule.ts index 8acc42c9789..fba0e04e919 100644 --- a/src/rules/newParensRule.ts +++ b/src/rules/newParensRule.ts @@ -28,7 +28,7 @@ export class Rule extends Lint.Rules.AbstractRule { optionsDescription: "Not configurable.", options: null, optionExamples: [true], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/newlineBeforeReturnRule.ts b/src/rules/newlineBeforeReturnRule.ts index 24bb1d5c626..75fae1f3aaf 100644 --- a/src/rules/newlineBeforeReturnRule.ts +++ b/src/rules/newlineBeforeReturnRule.ts @@ -31,7 +31,7 @@ export class Rule extends Lint.Rules.AbstractRule { optionsDescription: "Not configurable.", options: {}, optionExamples: [true], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/noConsecutiveBlankLinesRule.ts b/src/rules/noConsecutiveBlankLinesRule.ts index db070a24c47..4a7e72505e5 100644 --- a/src/rules/noConsecutiveBlankLinesRule.ts +++ b/src/rules/noConsecutiveBlankLinesRule.ts @@ -44,7 +44,7 @@ export class Rule extends Lint.Rules.AbstractRule { minimum: "1", }, optionExamples: [true, [true, 2]], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/noIrregularWhitespaceRule.ts b/src/rules/noIrregularWhitespaceRule.ts index 506c679002b..b4f67302b88 100644 --- a/src/rules/noIrregularWhitespaceRule.ts +++ b/src/rules/noIrregularWhitespaceRule.ts @@ -28,7 +28,7 @@ export class Rule extends Lint.Rules.AbstractRule { optionsDescription: "Not configurable.", options: null, optionExamples: [true], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/noTrailingWhitespaceRule.ts b/src/rules/noTrailingWhitespaceRule.ts index d59f29ed7c1..863dc73cc49 100644 --- a/src/rules/noTrailingWhitespaceRule.ts +++ b/src/rules/noTrailingWhitespaceRule.ts @@ -62,7 +62,7 @@ export class Rule extends Lint.Rules.AbstractRule { }, }, optionExamples: [true, [true, OPTION_IGNORE_COMMENTS], [true, OPTION_IGNORE_JSDOC]], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/numberLiteralFormatRule.ts b/src/rules/numberLiteralFormatRule.ts index 052a4c2a231..1666d1e6412 100644 --- a/src/rules/numberLiteralFormatRule.ts +++ b/src/rules/numberLiteralFormatRule.ts @@ -35,7 +35,7 @@ export class Rule extends Lint.Rules.AbstractRule { Helps keep a consistent style with numeric literals. Non-standard literals are more difficult to scan through and can be a symptom of typos. `, - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/quotemarkRule.ts b/src/rules/quotemarkRule.ts index 141e876ef0f..fb22b8dce73 100644 --- a/src/rules/quotemarkRule.ts +++ b/src/rules/quotemarkRule.ts @@ -79,7 +79,7 @@ export class Rule extends Lint.Rules.AbstractRule { [true, OPTION_SINGLE, OPTION_AVOID_ESCAPE, OPTION_AVOID_TEMPLATE], [true, OPTION_SINGLE, OPTION_JSX_DOUBLE], ], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/semicolonRule.ts b/src/rules/semicolonRule.ts index 039dacb91af..8db24dabf58 100644 --- a/src/rules/semicolonRule.ts +++ b/src/rules/semicolonRule.ts @@ -76,7 +76,7 @@ export class Rule extends Lint.Rules.AbstractRule { [true, OPTION_ALWAYS, OPTION_IGNORE_INTERFACES], [true, OPTION_ALWAYS, OPTION_IGNORE_BOUND_CLASS_METHODS], ], - type: "style", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/trailingCommaRule.ts b/src/rules/trailingCommaRule.ts index 941122c1197..7e5d1cb5d34 100644 --- a/src/rules/trailingCommaRule.ts +++ b/src/rules/trailingCommaRule.ts @@ -128,7 +128,7 @@ export class Rule extends Lint.Rules.AbstractRule { }, ], ], - type: "maintainability", + type: "format", typescriptOnly: false, }; /* tslint:enable:object-literal-sort-keys */ diff --git a/src/rules/typedefWhitespaceRule.ts b/src/rules/typedefWhitespaceRule.ts index 2bc74757f85..c1832018a69 100644 --- a/src/rules/typedefWhitespaceRule.ts +++ b/src/rules/typedefWhitespaceRule.ts @@ -90,7 +90,7 @@ export class Rule extends Lint.Rules.AbstractRule { }, ], ], - type: "typescript", + type: "format", typescriptOnly: true, hasFix: true, }; diff --git a/src/rules/whitespaceRule.ts b/src/rules/whitespaceRule.ts index 6f7181ecaf3..00c29f277b0 100644 --- a/src/rules/whitespaceRule.ts +++ b/src/rules/whitespaceRule.ts @@ -75,7 +75,7 @@ export class Rule extends Lint.Rules.AbstractRule { maxLength: 11, }, optionExamples: [[true, "check-branch", "check-operator", "check-typecast"]], - type: "style", + type: "format", typescriptOnly: false, hasFix: true, };