Skip to content

Releases: typescript-eslint/typescript-eslint

v2.3.3

07 Oct 17:02
Compare
Choose a tag to compare

2.3.3 (2019-10-07)

Bug Fixes

  • eslint-plugin: [class-name-casing] allow unicode letters (#1043) (47895c0)
  • eslint-plugin: [efrt] support constructor arguments (#1021) (60943e6)
  • experimental-utils: remove Rule.meta.extraDescription (#1036) (192e23d)

v2.3.2

30 Sep 17:02
Compare
Choose a tag to compare

2.3.2 (2019-09-30)

Bug Fixes

  • eslint-plugin: [no-unnec-type-arg] undefined symbol crash (#1007) (cdf9294)
  • typescript-estree: correct ClassDeclarationBase type (#1008) (8ce3a81)
  • typescript-estree: handle optional computed prop w/o type (#1026) (95c13fe)

v2.3.1

23 Sep 17:02
Compare
Choose a tag to compare

2.3.1 (2019-09-23)

Bug Fixes

  • eslint-plugin: [cons-type-assns] handle namespaced types (#975) (c3c8b86)
  • eslint-plugin: [pfa] Allow async getter/setter in classes (#980) (e348cb2)
  • typescript-estree: parsing error for await in non-async func (#988) (19abbe0)

v2.3.0

16 Sep 17:02
Compare
Choose a tag to compare

2.3.0 (2019-09-16)

Bug Fixes

  • typescript-estree: ImportDeclaration.specifier to Literal (#974) (2bf8231)

Features

  • eslint-plugin: [explicit-member-accessibility] add support of "ignoredMethodNames" (#895) (46ee4c9)
  • eslint-plugin: [no-floating-promises] Add ignoreVoid option (#796) (6a55921)
  • eslint-plugin: [no-magic-numbers] add ignoreReadonlyClassProperties option (#938) (aeea4cd)
  • eslint-plugin: [strict-boolean-expressions] Add allowNullable option (#794) (c713ca4)
  • eslint-plugin: add no-unnecessary-condition rule (#699) (5715482)

v2.2.0

09 Sep 17:02
Compare
Choose a tag to compare

2.2.0 (2019-09-09)

Bug Fixes

  • eslint-plugin: [efrt] allowExpressions - check functions in class field properties (#952) (f1059d8)
  • eslint-plugin: [expl-member-a11y] fix parameter properties (#912) (ccb98d8)
  • eslint-plugin: [prefer-readonly] add handling for destructuring assignments (e011e90)

Features

  • eslint-plugin: add brace-style [extension] (#810) (e01dc5f)

v2.1.0

02 Sep 17:02
Compare
Choose a tag to compare

2.1.0 (2019-09-02)

Bug Fixes

  • eslint-plugin: [member-naming] should match constructor args (#771) (b006667)
  • eslint-plugin: [no-inferrable-types] ignore optional props (#918) (a4e625f)
  • eslint-plugin: [promise-function-async] Allow async get/set (#820) (cddfdca)
  • eslint-plugin: [require-await] Allow concise arrow function bodies (#826) (29fddfd)
  • eslint-plugin: [typedef] don't flag destructuring when variables is disabled (#819) (5603473)
  • eslint-plugin: [typedef] handle AssignmentPattern inside TSParameterProperty (#923) (6bd7f2d)
  • eslint-plugin: [unbound-method] Allow typeof expressions (Fixes #692) (#904) (344bafe)
  • eslint-plugin: [unbound-method] false positive in equality comparisons (#914) (29a01b8)
  • eslint-plugin: [unified-signatures] type comparison and exported nodes (#839) (580eceb)
  • eslint-plugin: readme typo (#867) (5eb40dc)
  • typescript-estree: improve missing project file error msg (#866) (8f3b0a8), closes #853

Features

  • [no-unnecessary-type-assertion] allow as const arrow functions (#876) (14c6f80)
  • eslint-plugin: [expl-func-ret-type] make error loc smaller (#919) (65eb993)
  • eslint-plugin: [no-type-alias] support tuples (#775) (c68e033)
  • eslint-plugin: add quotes [extension] (#762) (9f82099)
  • typescript-estree: Accept a glob pattern for options.project (#806) (9e5f21e)

v2.0.0

13 Aug 21:31
Compare
Choose a tag to compare

2.0.0 (2019-08-13)

BREAKING CHANGES

  • Node 6 is no longer supported.
  • parser / typescript-estree:
    • When project is specified within parserOptions, we will now hard fail when parsing files that are not included within the provided tsconfig(s).
    • We discovered that this was a common performance pitfall, and could increase lint times by huge amounts.
    • To handle this, there are a few possible solutions:
      1. Improve the includes field within your tsconfig(s) so that all the files you want to lint are included.
      2. Create a new tsconfig.eslint.json which you pass into parserOptions.project, which includes all of the files you want to lint, e.g.:
        {
          // extend your base config so you don't have to redefine your compilerOptions
          "extends": "./tsconfig.json",
          "include": [
            "src/**/*.ts",
            "test/**/*.ts",
            "typings/**/*.ts"
            // etc
          ],
          // IF (and only if) you have a mixed JS/TS codebase - you should also turn on JS support
          "compilerOptions": {
            "allowJs": true,
            "checkJs": true
          }
        }
        If you are using non standard file extensions (i.e. .vue files), you should add the following config to your .eslintrc file:
        {
          "parserOptions": {
            "extraFileExtensions": [".vue"]
          }
        }
  • eslint-plugin:
    • Removed hardcoded checks which prevented some rules from running on non-TypeScript files (i.e. files that are not *.ts/*.tsx).
      • Some users with mixed TS/JS codebases may now see some TypeScript-specific rules being reported against JS files.
      • Please use ESLint's "overrides" config to select which files to apply rules to.
    • Removed deprecated rule prefer-interface. This rule was replaced by consistent-type-definitions.
    • Removed deprecated rule no-triple-slash-reference. This rule was replaced by triple-slash-reference
    • Merged both no-angle-bracket-type-assertion and no-object-literal-type-assertion into one rule - consistent-type-assertions.
    • explicit-function-return-type no longer treats export default () => {} as an expression for the purposes of the allowExpressions option.
    • Changed a number of the default rule configs:
      • explicit-function-return-type - allowTypedFunctionExpressions and allowHigherOrderFunctions are now both true by default.
      • no-inferrable-types - ignoreParameters and ignoreProperties are now both false by default.
      • no-this-alias - allowDestructuring is now true by default.
    • Reworked the recommended configs:
      • plugin:@typescript-eslint/recommended
        • This is our slim, recommended set of rules. This config does not require type information, so it can be easily dropped into an existing config.
      • plugin:@typescript-eslint/recommended-requiring-type-checking
        • This is a slightly expanded set of rules, intended to be used in conjunction with plugin:@typescript-eslint/recommended. These rules specifically require type information. We separated these rules into a separate config to ease adoption and to make the base recommended "fast-by-default".
      • plugin:@typescript-eslint/eslint-recommended
        • This config is a compatibility config that disables rules from eslint:recommended which are already handled by TypeScript.
      • plugin:@typescript-eslint/all
        • This config simply turns on every single rule available in the plugin.
      • The intention is that you can use all the configs together, as they build upon one-another:
        {
          "extends": [
            "eslint:recommended",
            "plugin:@typescript-eslint/eslint-recommended",
            "plugin:@typescript-eslint/recommended",
            "plugin:@typescript-eslint/recommended-requiring-type-checking"
          ]
        }

Bug Fixes

  • eslint-plugin: [efrt] flag default export w/ allowExpressions (#831) (ebbcc01)
  • eslint-plugin: [no-explicit-any] Fix ignoreRestArgs for interfaces (#777) (22e9ae5)
  • eslint-plugin: [no-useless-constructor] handle bodyless constructor (#685) (55e788c)
  • eslint-plugin: [prefer-readonly] TypeError when having computed member expression (#761) (211b1b5)
  • eslint-plugin: [typedef] support for..in, for..of (#787) (39e41b5)
  • eslint-plugin: [typedef] support default value for parameter (#785) (84916e6)
  • eslint-plugin: add Literal to RuleListener types (#824) (3c902a1)
  • typescript-estree: fix is token typed as Keyword (#750) (35dec52)
  • typescript-estree: jsx comment parsing (#703) (0cfc48e)
  • utils: add ES2019 as valid ecmaVersion (#746) (d11fbbe)

Features

  • explicitly support eslint v6 (#645) (34a7cf6)
  • eslint-plugin: [interface-name-prefix, class-name-casing] Add allowUnderscorePrefix option to support private declarations (#790) (0c4f474)
  • eslint-plugin: [no-var-requires] report on foo(require('')) (#725) (b2ca20d), closes #665
  • eslint-plugin: [promise-function-async] make allowAny default true (#733) (590ca50)
  • eslint-plugin: [strict-boolean-expressions] add ignoreRhs option (#691) (fd6be42)
  • eslint-plugin: add support for object props in CallExpressions (#728) (8141f01)
  • eslint-plugin: added new rule typedef (#581) (35cc99b)
  • eslint-plugin: added new rule use-default-type-parameter (#562) ([2b942ba](https://github.com/typescrip...
Read more

v1.13.0

21 Jul 17:03
Compare
Choose a tag to compare

1.13.0 (2019-07-21)

Bug Fixes

  • Correct @types/json-schema dependency (#675) (a5398ce)
  • eslint-plugin: remove imports from typescript-estree (#706) (ceb2d32), closes #705
  • eslint-plugin: undo breaking changes to recommended config (93f72e3)
  • utils: move typescript from peer dep to dev dep (#712) (f949355)
  • utils: RuleTester should not require a parser (#713) (158a417)

Features

  • eslint-plugin: add new rule no-misused-promises (#612) (28a131d)
  • eslint-plugin: add new rule require-await (#674) (807bc2d)

v1.12.0

12 Jul 12:52
Compare
Choose a tag to compare

1.12.0 (2019-07-12)

Bug Fixes

  • eslint-plugin: handle const; (#633) (430d628), closes #441
  • typescript-estree: fix async identifier token typed as Keyword (#681) (6de19d3)

Features

  • eslint-plugin: [ban-types] Support namespaced type (#616) (e325b72)
  • eslint-plugin: [explicit-function-return-type] add handling for usage as arguments (#680) (e0aeb18)
  • eslint-plugin: [no-explicit-any] Add an optional fixer (#609) (606fc70)
  • eslint-plugin: Add rule triple-slash-reference (#625) (af70a59)
  • eslint-plugin: add rule strict-boolean-expressions (#579) (34e7d1e)
  • eslint-plugin: added new rule prefer-readonly (#555) (76b89a5)

v1.11.0

23 Jun 23:00
Compare
Choose a tag to compare

1.11.0 (2019-06-23)

Bug Fixes

  • eslint-plugin: [no-magic-numbers] add support for enums (#543) (5c40d01)
  • eslint-plugin: [promise-function-async] allow any as return value (#553) (9a387b0)
  • eslint-plugin: Remove duplicated code (#611) (c4df4ff)
  • parser: add simpleTraverse, replaces private ESLint util (#628) (aa206c4)
  • typescript-estree: fix more cases with double slash in JSX text (#607) (34cfa53)

Features

  • eslint-plugin: [no-explicit-any] ignoreRestArgs (#548) (753ad75)
  • eslint-plugin: add consistent-type-definitions rule (#463) (ec87d06)
  • eslint-plugin: add new rule no-empty-function (#626) (747bfcb)
  • eslint-plugin: add new rule no-floating-promises (#495) (61e6385)