diff --git a/CHANGELOG.md b/CHANGELOG.md index 78ffe9a5eb29..10690fe06212 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + + +### Bug Fixes + +* **eslint-plugin:** [non-nullable-type-assertion-style] handle const assertion ([#2881](https://github.com/typescript-eslint/typescript-eslint/issues/2881)) ([53dc34d](https://github.com/typescript-eslint/typescript-eslint/commit/53dc34d3917b90c8ab0324fe8054619ddee98003)) + + +### Features + +* **eslint-plugin:** [prom-func-async] add automatic fix ([#2845](https://github.com/typescript-eslint/typescript-eslint/issues/2845)) ([717e718](https://github.com/typescript-eslint/typescript-eslint/commit/717e718e91df2165422228c02dfa248cf55f65a1)) + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) diff --git a/lerna.json b/lerna.json index 2aeb0572f967..ce382fcea767 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "4.10.0", + "version": "4.11.0", "npmClient": "yarn", "useWorkspaces": true, "stream": true diff --git a/packages/eslint-plugin-internal/CHANGELOG.md b/packages/eslint-plugin-internal/CHANGELOG.md index 6232e8d8f653..44ce41b43fc9 100644 --- a/packages/eslint-plugin-internal/CHANGELOG.md +++ b/packages/eslint-plugin-internal/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/eslint-plugin-internal + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/eslint-plugin-internal diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json index bf2dc43669d2..6772ce133090 100644 --- a/packages/eslint-plugin-internal/package.json +++ b/packages/eslint-plugin-internal/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/eslint-plugin-internal", - "version": "4.10.0", + "version": "4.11.0", "private": true, "main": "dist/index.js", "scripts": { @@ -14,7 +14,7 @@ }, "dependencies": { "@types/prettier": "*", - "@typescript-eslint/experimental-utils": "4.10.0", + "@typescript-eslint/experimental-utils": "4.11.0", "prettier": "*" } } diff --git a/packages/eslint-plugin-tslint/CHANGELOG.md b/packages/eslint-plugin-tslint/CHANGELOG.md index b7087af3d53e..ffd584a169b1 100644 --- a/packages/eslint-plugin-tslint/CHANGELOG.md +++ b/packages/eslint-plugin-tslint/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/eslint-plugin-tslint + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/eslint-plugin-tslint diff --git a/packages/eslint-plugin-tslint/package.json b/packages/eslint-plugin-tslint/package.json index 6538788abb0a..94af278004fe 100644 --- a/packages/eslint-plugin-tslint/package.json +++ b/packages/eslint-plugin-tslint/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/eslint-plugin-tslint", - "version": "4.10.0", + "version": "4.11.0", "main": "dist/index.js", "typings": "src/index.ts", "description": "TSLint wrapper plugin for ESLint", @@ -38,7 +38,7 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/experimental-utils": "4.10.0", + "@typescript-eslint/experimental-utils": "4.11.0", "lodash": "^4.17.15" }, "peerDependencies": { @@ -48,6 +48,6 @@ }, "devDependencies": { "@types/lodash": "*", - "@typescript-eslint/parser": "4.10.0" + "@typescript-eslint/parser": "4.11.0" } } diff --git a/packages/eslint-plugin/CHANGELOG.md b/packages/eslint-plugin/CHANGELOG.md index c2ccb95df94f..32fb4d7cc326 100644 --- a/packages/eslint-plugin/CHANGELOG.md +++ b/packages/eslint-plugin/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + + +### Bug Fixes + +* **eslint-plugin:** [non-nullable-type-assertion-style] handle const assertion ([#2881](https://github.com/typescript-eslint/typescript-eslint/issues/2881)) ([53dc34d](https://github.com/typescript-eslint/typescript-eslint/commit/53dc34d3917b90c8ab0324fe8054619ddee98003)) + + +### Features + +* **eslint-plugin:** [prom-func-async] add automatic fix ([#2845](https://github.com/typescript-eslint/typescript-eslint/issues/2845)) ([717e718](https://github.com/typescript-eslint/typescript-eslint/commit/717e718e91df2165422228c02dfa248cf55f65a1)) + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) diff --git a/packages/eslint-plugin/README.md b/packages/eslint-plugin/README.md index 52776b44c729..eb78f4a0de51 100644 --- a/packages/eslint-plugin/README.md +++ b/packages/eslint-plugin/README.md @@ -164,7 +164,7 @@ Pro Tip: For larger codebases you may want to consider splitting our linting int | [`@typescript-eslint/prefer-regexp-exec`](./docs/rules/prefer-regexp-exec.md) | Enforce that `RegExp#exec` is used instead of `String#match` if no global flag is provided | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/prefer-string-starts-ends-with`](./docs/rules/prefer-string-starts-ends-with.md) | Enforce the use of `String#startsWith` and `String#endsWith` instead of other equivalent methods of checking substrings | | :wrench: | :thought_balloon: | | [`@typescript-eslint/prefer-ts-expect-error`](./docs/rules/prefer-ts-expect-error.md) | Recommends using `@ts-expect-error` over `@ts-ignore` | | :wrench: | | -| [`@typescript-eslint/promise-function-async`](./docs/rules/promise-function-async.md) | Requires any function or method that returns a Promise to be marked async | | | :thought_balloon: | +| [`@typescript-eslint/promise-function-async`](./docs/rules/promise-function-async.md) | Requires any function or method that returns a Promise to be marked async | | :wrench: | :thought_balloon: | | [`@typescript-eslint/require-array-sort-compare`](./docs/rules/require-array-sort-compare.md) | Requires `Array#sort` calls to always provide a `compareFunction` | | | :thought_balloon: | | [`@typescript-eslint/restrict-plus-operands`](./docs/rules/restrict-plus-operands.md) | When adding two variables, operands must both be of type number or of type string | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/restrict-template-expressions`](./docs/rules/restrict-template-expressions.md) | Enforce template literal expressions to be of string type | :heavy_check_mark: | | :thought_balloon: | diff --git a/packages/eslint-plugin/docs/rules/no-namespace.md b/packages/eslint-plugin/docs/rules/no-namespace.md index b155c2aeb307..da83ada2bbaa 100644 --- a/packages/eslint-plugin/docs/rules/no-namespace.md +++ b/packages/eslint-plugin/docs/rules/no-namespace.md @@ -18,7 +18,7 @@ or more of the following you may pass an object with the options set as follows: - `allowDefinitionFiles` set to `true` will allow you to `declare` and use custom TypeScript modules and namespaces inside definition files (Default: `true`). -Examples of **incorrect** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": false }` options: +Examples of **incorrect** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": true }` options: ```ts module foo {} @@ -26,14 +26,14 @@ namespace foo {} declare module foo {} declare namespace foo {} - -// anything inside a d.ts file ``` -Examples of **correct** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": false }` options: +Examples of **correct** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": true }` options: ```ts declare module 'foo' {} + +// anything inside a d.ts file ``` ### `allowDeclarations` diff --git a/packages/eslint-plugin/package.json b/packages/eslint-plugin/package.json index 3b4b93641717..64deb4e9be84 100644 --- a/packages/eslint-plugin/package.json +++ b/packages/eslint-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/eslint-plugin", - "version": "4.10.0", + "version": "4.11.0", "description": "TypeScript plugin for ESLint", "keywords": [ "eslint", @@ -42,8 +42,8 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/experimental-utils": "4.10.0", - "@typescript-eslint/scope-manager": "4.10.0", + "@typescript-eslint/experimental-utils": "4.11.0", + "@typescript-eslint/scope-manager": "4.11.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.0.0", diff --git a/packages/eslint-plugin/src/rules/non-nullable-type-assertion-style.ts b/packages/eslint-plugin/src/rules/non-nullable-type-assertion-style.ts index 9bb099ef88cc..eef8c58445f2 100644 --- a/packages/eslint-plugin/src/rules/non-nullable-type-assertion-style.ts +++ b/packages/eslint-plugin/src/rules/non-nullable-type-assertion-style.ts @@ -1,4 +1,7 @@ -import { TSESTree } from '@typescript-eslint/experimental-utils'; +import { + AST_NODE_TYPES, + TSESTree, +} from '@typescript-eslint/experimental-utils'; import * as tsutils from 'tsutils'; import * as ts from 'typescript'; @@ -69,10 +72,24 @@ export default util.createRule({ return true; }; + const isConstAssertion = ( + node: TSESTree.TSTypeAssertion | TSESTree.TSAsExpression, + ): boolean => { + return ( + node.typeAnnotation.type === AST_NODE_TYPES.TSTypeReference && + node.typeAnnotation.typeName.type === AST_NODE_TYPES.Identifier && + node.typeAnnotation.typeName.name === 'const' + ); + }; + return { 'TSAsExpression, TSTypeAssertion'( node: TSESTree.TSTypeAssertion | TSESTree.TSAsExpression, ): void { + if (isConstAssertion(node)) { + return; + } + const originalTypes = getTypesIfNotLoose(node.expression); if (!originalTypes) { return; diff --git a/packages/eslint-plugin/src/rules/promise-function-async.ts b/packages/eslint-plugin/src/rules/promise-function-async.ts index 16134675d571..00888c8f39fa 100644 --- a/packages/eslint-plugin/src/rules/promise-function-async.ts +++ b/packages/eslint-plugin/src/rules/promise-function-async.ts @@ -2,6 +2,7 @@ import { AST_NODE_TYPES, TSESTree, } from '@typescript-eslint/experimental-utils'; +import * as ts from 'typescript'; import * as util from '../util'; type Options = [ @@ -20,6 +21,7 @@ export default util.createRule({ name: 'promise-function-async', meta: { type: 'suggestion', + fixable: 'code', docs: { description: 'Requires any function or method that returns a Promise to be marked async', @@ -94,9 +96,7 @@ export default util.createRule({ node: | TSESTree.ArrowFunctionExpression | TSESTree.FunctionDeclaration - | TSESTree.FunctionExpression - | TSESTree.MethodDefinition - | TSESTree.TSAbstractMethodDefinition, + | TSESTree.FunctionExpression, ): void { const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); const signatures = checker @@ -114,6 +114,12 @@ export default util.createRule({ allAllowedPromiseNames, ) ) { + // Return type is not a promise + return; + } + + if (node.parent?.type === AST_NODE_TYPES.TSAbstractMethodDefinition) { + // Abstract method can't be async return; } @@ -123,12 +129,34 @@ export default util.createRule({ node.parent.type === AST_NODE_TYPES.MethodDefinition) && (node.parent.kind === 'get' || node.parent.kind === 'set') ) { + // Getters and setters can't be async return; } + if ( + util.isTypeFlagSet(returnType, ts.TypeFlags.Any | ts.TypeFlags.Unknown) + ) { + // Report without auto fixer because the return type is unknown + return context.report({ + messageId: 'missingAsync', + node, + }); + } + context.report({ messageId: 'missingAsync', node, + fix: fixer => { + if ( + node.parent && + (node.parent.type === AST_NODE_TYPES.MethodDefinition || + (node.parent.type === AST_NODE_TYPES.Property && + node.parent.method)) + ) { + return fixer.insertTextBefore(node.parent.key, 'async '); + } + return fixer.insertTextBefore(node, 'async '); + }, }); } @@ -152,13 +180,15 @@ export default util.createRule({ ): void { if ( node.parent && - 'kind' in node.parent && + node.parent.type === AST_NODE_TYPES.MethodDefinition && node.parent.kind === 'method' ) { if (checkMethodDeclarations) { - validateNode(node.parent); + validateNode(node); } - } else if (checkFunctionExpressions) { + return; + } + if (checkFunctionExpressions) { validateNode(node); } }, diff --git a/packages/eslint-plugin/tests/rules/non-nullable-type-assertion-style.test.ts b/packages/eslint-plugin/tests/rules/non-nullable-type-assertion-style.test.ts index 45ca1774d301..33c603135f5f 100644 --- a/packages/eslint-plugin/tests/rules/non-nullable-type-assertion-style.test.ts +++ b/packages/eslint-plugin/tests/rules/non-nullable-type-assertion-style.test.ts @@ -51,6 +51,9 @@ declare const x: T | number; const y = x as NonNullable; `, + ` +const foo = [] as const; + `, ], invalid: [ diff --git a/packages/eslint-plugin/tests/rules/promise-function-async.test.ts b/packages/eslint-plugin/tests/rules/promise-function-async.test.ts index 47b5b6221d60..49f6e250b6c8 100644 --- a/packages/eslint-plugin/tests/rules/promise-function-async.test.ts +++ b/packages/eslint-plugin/tests/rules/promise-function-async.test.ts @@ -1,5 +1,5 @@ import rule from '../../src/rules/promise-function-async'; -import { RuleTester, getFixturesRootDir } from '../RuleTester'; +import { getFixturesRootDir, RuleTester } from '../RuleTester'; const rootDir = getFixturesRootDir(); const messageId = 'missingAsync'; @@ -141,6 +141,18 @@ const foo = (options: Options): Return => { code: ` function foo(): Promise | boolean { return Math.random() > 0.5 ? Promise.resolve('value') : false; +} + `, + }, + { + code: ` +abstract class Test { + abstract test1(): Promise; + + // abstract method with body is always an error but it still parses into valid AST + abstract test2(): Promise { + return Promise.resolve(1); + } } `, }, @@ -191,6 +203,11 @@ const nonAsyncPromiseFunctionExpressionA = function (p: Promise) { messageId, }, ], + output: ` +const nonAsyncPromiseFunctionExpressionA = async function (p: Promise) { + return p; +}; + `, }, { code: ` @@ -203,6 +220,11 @@ const nonAsyncPromiseFunctionExpressionB = function () { messageId, }, ], + output: ` +const nonAsyncPromiseFunctionExpressionB = async function () { + return new Promise(); +}; + `, }, { code: ` @@ -215,6 +237,11 @@ function nonAsyncPromiseFunctionDeclarationA(p: Promise) { messageId, }, ], + output: ` +async function nonAsyncPromiseFunctionDeclarationA(p: Promise) { + return p; +} + `, }, { code: ` @@ -227,6 +254,11 @@ function nonAsyncPromiseFunctionDeclarationB() { messageId, }, ], + output: ` +async function nonAsyncPromiseFunctionDeclarationB() { + return new Promise(); +} + `, }, { code: ` @@ -237,6 +269,9 @@ const nonAsyncPromiseArrowFunctionA = (p: Promise) => p; messageId, }, ], + output: ` +const nonAsyncPromiseArrowFunctionA = async (p: Promise) => p; + `, }, { code: ` @@ -247,6 +282,31 @@ const nonAsyncPromiseArrowFunctionB = () => new Promise(); messageId, }, ], + output: ` +const nonAsyncPromiseArrowFunctionB = async () => new Promise(); + `, + }, + { + code: ` +const functions = { + nonAsyncPromiseMethod() { + return Promise.resolve(1); + }, +}; + `, + errors: [ + { + line: 3, + messageId, + }, + ], + output: ` +const functions = { + async nonAsyncPromiseMethod() { + return Promise.resolve(1); + }, +}; + `, }, { code: ` @@ -255,7 +315,7 @@ class Test { return p; } - public nonAsyncPromiseMethodB() { + public static nonAsyncPromiseMethodB() { return new Promise(); } } @@ -270,6 +330,17 @@ class Test { messageId, }, ], + output: ` +class Test { + public async nonAsyncPromiseMethodA(p: Promise) { + return p; + } + + public static async nonAsyncPromiseMethodB() { + return new Promise(); + } +} + `, }, { code: ` @@ -308,6 +379,23 @@ class Test { messageId, }, ], + output: ` +const nonAsyncPromiseFunctionExpression = async function (p: Promise) { + return p; +}; + +async function nonAsyncPromiseFunctionDeclaration(p: Promise) { + return p; +} + +const nonAsyncPromiseArrowFunction = (p: Promise) => p; + +class Test { + public async nonAsyncPromiseMethod(p: Promise) { + return p; + } +} + `, }, { code: ` @@ -346,6 +434,23 @@ class Test { messageId, }, ], + output: ` +const nonAsyncPromiseFunctionExpression = async function (p: Promise) { + return p; +}; + +function nonAsyncPromiseFunctionDeclaration(p: Promise) { + return p; +} + +const nonAsyncPromiseArrowFunction = async (p: Promise) => p; + +class Test { + public async nonAsyncPromiseMethod(p: Promise) { + return p; + } +} + `, }, { code: ` @@ -384,6 +489,23 @@ class Test { messageId, }, ], + output: ` +const nonAsyncPromiseFunctionExpression = function (p: Promise) { + return p; +}; + +async function nonAsyncPromiseFunctionDeclaration(p: Promise) { + return p; +} + +const nonAsyncPromiseArrowFunction = async (p: Promise) => p; + +class Test { + public async nonAsyncPromiseMethod(p: Promise) { + return p; + } +} + `, }, { code: ` @@ -422,6 +544,23 @@ class Test { messageId, }, ], + output: ` +const nonAsyncPromiseFunctionExpression = async function (p: Promise) { + return p; +}; + +async function nonAsyncPromiseFunctionDeclaration(p: Promise) { + return p; +} + +const nonAsyncPromiseArrowFunction = async (p: Promise) => p; + +class Test { + public nonAsyncPromiseMethod(p: Promise) { + return p; + } +} + `, }, { code: ` @@ -440,6 +579,11 @@ const returnAllowedType = () => new PromiseType(); messageId, }, ], + output: ` +class PromiseType {} + +const returnAllowedType = async () => new PromiseType(); + `, }, { code: ` @@ -461,6 +605,14 @@ function foo(): Promise | SPromise { messageId, }, ], + output: ` +interface SPromise extends Promise {} +async function foo(): Promise | SPromise { + return Math.random() > 0.5 + ? Promise.resolve('value') + : Promise.resolve(false); +} + `, }, ], }); diff --git a/packages/experimental-utils/CHANGELOG.md b/packages/experimental-utils/CHANGELOG.md index 54a833f07957..c050fe23955e 100644 --- a/packages/experimental-utils/CHANGELOG.md +++ b/packages/experimental-utils/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/experimental-utils diff --git a/packages/experimental-utils/package.json b/packages/experimental-utils/package.json index 43bdd2891c83..571b736fda3f 100644 --- a/packages/experimental-utils/package.json +++ b/packages/experimental-utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/experimental-utils", - "version": "4.10.0", + "version": "4.11.0", "description": "(Experimental) Utilities for working with TypeScript + ESLint together", "keywords": [ "eslint", @@ -40,9 +40,9 @@ }, "dependencies": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.10.0", - "@typescript-eslint/types": "4.10.0", - "@typescript-eslint/typescript-estree": "4.10.0", + "@typescript-eslint/scope-manager": "4.11.0", + "@typescript-eslint/types": "4.11.0", + "@typescript-eslint/typescript-estree": "4.11.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" }, diff --git a/packages/parser/CHANGELOG.md b/packages/parser/CHANGELOG.md index c5b0afb4b022..59f40dbfbf59 100644 --- a/packages/parser/CHANGELOG.md +++ b/packages/parser/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/parser diff --git a/packages/parser/package.json b/packages/parser/package.json index 220077cd7f4b..2477f9a69dde 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/parser", - "version": "4.10.0", + "version": "4.11.0", "description": "An ESLint custom parser which leverages TypeScript ESTree", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -44,15 +44,15 @@ "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" }, "dependencies": { - "@typescript-eslint/scope-manager": "4.10.0", - "@typescript-eslint/types": "4.10.0", - "@typescript-eslint/typescript-estree": "4.10.0", + "@typescript-eslint/scope-manager": "4.11.0", + "@typescript-eslint/types": "4.11.0", + "@typescript-eslint/typescript-estree": "4.11.0", "debug": "^4.1.1" }, "devDependencies": { "@types/glob": "*", - "@typescript-eslint/experimental-utils": "4.10.0", - "@typescript-eslint/shared-fixtures": "4.10.0", + "@typescript-eslint/experimental-utils": "4.11.0", + "@typescript-eslint/shared-fixtures": "4.11.0", "glob": "*", "typescript": "*" }, diff --git a/packages/scope-manager/CHANGELOG.md b/packages/scope-manager/CHANGELOG.md index 3a4633b947bc..221a04d93b2c 100644 --- a/packages/scope-manager/CHANGELOG.md +++ b/packages/scope-manager/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/scope-manager diff --git a/packages/scope-manager/package.json b/packages/scope-manager/package.json index ca9e2794af8d..e39c77f03cea 100644 --- a/packages/scope-manager/package.json +++ b/packages/scope-manager/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/scope-manager", - "version": "4.10.0", + "version": "4.11.0", "description": "TypeScript scope analyser for ESLint", "keywords": [ "eslint", @@ -39,12 +39,12 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/types": "4.10.0", - "@typescript-eslint/visitor-keys": "4.10.0" + "@typescript-eslint/types": "4.11.0", + "@typescript-eslint/visitor-keys": "4.11.0" }, "devDependencies": { "@types/glob": "*", - "@typescript-eslint/typescript-estree": "4.10.0", + "@typescript-eslint/typescript-estree": "4.11.0", "glob": "*", "jest-specific-snapshot": "*", "make-dir": "*", diff --git a/packages/shared-fixtures/CHANGELOG.md b/packages/shared-fixtures/CHANGELOG.md index 6f6217070e96..b0059b0f4afb 100644 --- a/packages/shared-fixtures/CHANGELOG.md +++ b/packages/shared-fixtures/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/shared-fixtures + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/shared-fixtures diff --git a/packages/shared-fixtures/package.json b/packages/shared-fixtures/package.json index 552520ec9675..75aad143f7b7 100644 --- a/packages/shared-fixtures/package.json +++ b/packages/shared-fixtures/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/shared-fixtures", - "version": "4.10.0", + "version": "4.11.0", "private": true, "scripts": { "build": "tsc -b tsconfig.build.json", diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md index 2bcd287824f9..a09063050839 100644 --- a/packages/types/CHANGELOG.md +++ b/packages/types/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/types diff --git a/packages/types/package.json b/packages/types/package.json index 8018a3f69485..832baed8f634 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/types", - "version": "4.10.0", + "version": "4.11.0", "description": "Types for the TypeScript-ESTree AST spec", "keywords": [ "eslint", diff --git a/packages/typescript-estree/CHANGELOG.md b/packages/typescript-estree/CHANGELOG.md index 342d997dfcf3..9bffc55af0d8 100644 --- a/packages/typescript-estree/CHANGELOG.md +++ b/packages/typescript-estree/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/typescript-estree diff --git a/packages/typescript-estree/package.json b/packages/typescript-estree/package.json index 09b2f8ec919c..6b4849d219b4 100644 --- a/packages/typescript-estree/package.json +++ b/packages/typescript-estree/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/typescript-estree", - "version": "4.10.0", + "version": "4.11.0", "description": "A parser that converts TypeScript source code into an ESTree compatible form", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -41,8 +41,8 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/types": "4.10.0", - "@typescript-eslint/visitor-keys": "4.10.0", + "@typescript-eslint/types": "4.11.0", + "@typescript-eslint/visitor-keys": "4.11.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", @@ -61,7 +61,7 @@ "@types/lodash": "*", "@types/semver": "^7.1.0", "@types/tmp": "^0.2.0", - "@typescript-eslint/shared-fixtures": "4.10.0", + "@typescript-eslint/shared-fixtures": "4.11.0", "glob": "*", "jest-specific-snapshot": "*", "make-dir": "*", diff --git a/packages/visitor-keys/CHANGELOG.md b/packages/visitor-keys/CHANGELOG.md index 71bd890c88ba..f8b4f2a6195d 100644 --- a/packages/visitor-keys/CHANGELOG.md +++ b/packages/visitor-keys/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + # [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) **Note:** Version bump only for package @typescript-eslint/visitor-keys diff --git a/packages/visitor-keys/package.json b/packages/visitor-keys/package.json index e5ca77efedfc..2b6df22e5857 100644 --- a/packages/visitor-keys/package.json +++ b/packages/visitor-keys/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/visitor-keys", - "version": "4.10.0", + "version": "4.11.0", "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", "keywords": [ "eslint", @@ -38,7 +38,7 @@ "typecheck": "tsc -p tsconfig.json --noEmit" }, "dependencies": { - "@typescript-eslint/types": "4.10.0", + "@typescript-eslint/types": "4.11.0", "eslint-visitor-keys": "^2.0.0" }, "devDependencies": { pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy