From 103de6eed035e023fc2872407243d458047f5979 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josh=20Goldberg=20=E2=9C=A8?= Date: Sat, 6 Jul 2024 15:43:01 -0400 Subject: [PATCH 01/12] fix(utils): context.parserPath may be undefined (#9486) * fix(utils): context.parserPath may be undefined * Update packages/utils/src/eslint-utils/getParserServices.ts Co-authored-by: Brad Zacher --------- Co-authored-by: Brad Zacher --- .../src/eslint-utils/getParserServices.ts | 20 ++-- .../parserPathSeemsToBeTSESLint.ts | 3 - .../eslint-utils/parserSeemsToBeTSESLint.ts | 3 + packages/utils/src/ts-eslint/Rule.ts | 4 +- .../eslint-utils/getParserServices.test.ts | 91 ++++++++++++++++--- ...est.ts => parserSeemsToBeTSESLint.test.ts} | 8 +- 6 files changed, 99 insertions(+), 30 deletions(-) delete mode 100644 packages/utils/src/eslint-utils/parserPathSeemsToBeTSESLint.ts create mode 100644 packages/utils/src/eslint-utils/parserSeemsToBeTSESLint.ts rename packages/utils/tests/eslint-utils/{parserPathSeemsToBeTSESLint.test.ts => parserSeemsToBeTSESLint.test.ts} (79%) diff --git a/packages/utils/src/eslint-utils/getParserServices.ts b/packages/utils/src/eslint-utils/getParserServices.ts index 0fd908f4a2ec..f105fbf9902a 100644 --- a/packages/utils/src/eslint-utils/getParserServices.ts +++ b/packages/utils/src/eslint-utils/getParserServices.ts @@ -3,7 +3,7 @@ import type { ParserServices, ParserServicesWithTypeInformation, } from '../ts-estree'; -import { parserPathSeemsToBeTSESLint } from './parserPathSeemsToBeTSESLint'; +import { parserSeemsToBeTSESLint } from './parserSeemsToBeTSESLint'; const ERROR_MESSAGE_REQUIRES_PARSER_SERVICES = 'You have used a rule which requires parserServices to be generated. You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser.'; @@ -60,6 +60,9 @@ function getParserServices( context: Readonly>, allowWithoutFullTypeInformation = false, ): ParserServices { + const parser = + context.parserPath || context.languageOptions.parser?.meta?.name; + // This check is unnecessary if the user is using the latest version of our parser. // // However the world isn't perfect: @@ -74,7 +77,7 @@ function getParserServices( context.sourceCode.parserServices?.esTreeNodeToTSNodeMap == null || context.sourceCode.parserServices.tsNodeToESTreeNodeMap == null ) { - throwError(context.parserPath); + throwError(parser); } // if a rule requires full type information, then hard fail if it doesn't exist @@ -83,21 +86,20 @@ function getParserServices( context.sourceCode.parserServices.program == null && !allowWithoutFullTypeInformation ) { - throwError(context.parserPath); + throwError(parser); } return context.sourceCode.parserServices as ParserServices; } /* eslint-enable @typescript-eslint/unified-signatures */ -function throwError(parserPath: string): never { +function throwError(parser: string | undefined): never { const messages = [ ERROR_MESSAGE_REQUIRES_PARSER_SERVICES, - `Parser: ${parserPath}`, - ]; - if (!parserPathSeemsToBeTSESLint(parserPath)) { - messages.push(ERROR_MESSAGE_UNKNOWN_PARSER); - } + `Parser: ${parser || '(unknown)'}`, + !parserSeemsToBeTSESLint(parser) && ERROR_MESSAGE_UNKNOWN_PARSER, + ].filter(Boolean); + throw new Error(messages.join('\n')); } diff --git a/packages/utils/src/eslint-utils/parserPathSeemsToBeTSESLint.ts b/packages/utils/src/eslint-utils/parserPathSeemsToBeTSESLint.ts deleted file mode 100644 index ab68b4367ab7..000000000000 --- a/packages/utils/src/eslint-utils/parserPathSeemsToBeTSESLint.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function parserPathSeemsToBeTSESLint(parserPath: string): boolean { - return /(?:typescript-eslint|\.\.)[\w/\\]*parser/.test(parserPath); -} diff --git a/packages/utils/src/eslint-utils/parserSeemsToBeTSESLint.ts b/packages/utils/src/eslint-utils/parserSeemsToBeTSESLint.ts new file mode 100644 index 000000000000..386384b0d331 --- /dev/null +++ b/packages/utils/src/eslint-utils/parserSeemsToBeTSESLint.ts @@ -0,0 +1,3 @@ +export function parserSeemsToBeTSESLint(parser: string | undefined): boolean { + return !!parser && /(?:typescript-eslint|\.\.)[\w/\\]*parser/.test(parser); +} diff --git a/packages/utils/src/ts-eslint/Rule.ts b/packages/utils/src/ts-eslint/Rule.ts index 8ca4c7de2a72..d7e3562c8181 100644 --- a/packages/utils/src/ts-eslint/Rule.ts +++ b/packages/utils/src/ts-eslint/Rule.ts @@ -203,9 +203,9 @@ export interface RuleContext< */ options: Options; /** - * The name of the parser from configuration. + * The name of the parser from configuration, if in eslintrc (legacy) config. */ - parserPath: string; + parserPath: string | undefined; /** * The language options configured for this run */ diff --git a/packages/utils/tests/eslint-utils/getParserServices.test.ts b/packages/utils/tests/eslint-utils/getParserServices.test.ts index b247727786ae..2fe3c0c04c3c 100644 --- a/packages/utils/tests/eslint-utils/getParserServices.test.ts +++ b/packages/utils/tests/eslint-utils/getParserServices.test.ts @@ -3,6 +3,7 @@ import type * as ts from 'typescript'; import type { ParserServices, TSESLint, TSESTree } from '../../src'; import { ESLintUtils } from '../../src'; +import type { FlatConfig } from '../../src/ts-eslint'; type UnknownRuleContext = Readonly>; @@ -25,18 +26,20 @@ const createMockRuleContext = ( ...overrides, }) as unknown as UnknownRuleContext; -const requiresParserServicesMessageTemplate = +const requiresParserServicesMessageTemplate = (parser = '\\S*'): string => 'You have used a rule which requires parserServices to be generated. You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser.\n' + - 'Parser: \\S*'; -const baseErrorRegex = new RegExp(requiresParserServicesMessageTemplate); -const unknownParserErrorRegex = new RegExp( - requiresParserServicesMessageTemplate + - '\n' + - 'Note: detected a parser other than @typescript-eslint/parser. Make sure the parser is configured to forward "parserOptions.project" to @typescript-eslint/parser.', -); + `Parser: ${parser}`; +const baseErrorRegex = (parser?: string): RegExp => + new RegExp(requiresParserServicesMessageTemplate(parser)); +const unknownParserErrorRegex = (parser?: string): RegExp => + new RegExp( + requiresParserServicesMessageTemplate(parser) + + '\n' + + 'Note: detected a parser other than @typescript-eslint/parser. Make sure the parser is configured to forward "parserOptions.project" to @typescript-eslint/parser.', + ); describe('getParserServices', () => { - it('throws a standard error when parserOptions.esTreeNodeToTSNodeMap is missing and the parser is known', () => { + it('throws a standard error with the parser when parserOptions.esTreeNodeToTSNodeMap is missing and the parser is typescript-eslint', () => { const context = createMockRuleContext({ sourceCode: { ...defaults.sourceCode, @@ -48,7 +51,69 @@ describe('getParserServices', () => { }); expect(() => ESLintUtils.getParserServices(context)).toThrow( - baseErrorRegex, + baseErrorRegex('@typescript-eslint[\\/]parser[\\/]dist[\\/]index\\.js'), + ); + }); + + it('throws a standard error with the parser when parserOptions.esTreeNodeToTSNodeMap is missing and the parser is custom', () => { + const context = createMockRuleContext({ + languageOptions: { + parser: { + meta: { + name: 'custom-parser', + }, + } as FlatConfig.Parser, + }, + parserPath: undefined, + sourceCode: { + ...defaults.sourceCode, + parserServices: { + ...defaults.sourceCode.parserServices, + esTreeNodeToTSNodeMap: undefined as any, + }, + }, + }); + + expect(() => ESLintUtils.getParserServices(context)).toThrow( + baseErrorRegex('custom-parser'), + ); + }); + + it('throws a standard error with an unknown parser when parserOptions.esTreeNodeToTSNodeMap is missing and the parser is missing', () => { + const context = createMockRuleContext({ + languageOptions: {}, + parserPath: undefined, + sourceCode: { + ...defaults.sourceCode, + parserServices: { + ...defaults.sourceCode.parserServices, + esTreeNodeToTSNodeMap: undefined as any, + }, + }, + }); + + expect(() => ESLintUtils.getParserServices(context)).toThrow( + baseErrorRegex('\\(unknown\\)'), + ); + }); + + it('throws a standard error with an unknown parser when parserOptions.esTreeNodeToTSNodeMap is missing and the parser is unknown', () => { + const context = createMockRuleContext({ + languageOptions: { + parser: {} as FlatConfig.Parser, + }, + parserPath: undefined, + sourceCode: { + ...defaults.sourceCode, + parserServices: { + ...defaults.sourceCode.parserServices, + esTreeNodeToTSNodeMap: undefined as any, + }, + }, + }); + + expect(() => ESLintUtils.getParserServices(context)).toThrow( + baseErrorRegex('\\(unknown\\)'), ); }); @@ -64,7 +129,7 @@ describe('getParserServices', () => { }, }); expect(() => ESLintUtils.getParserServices(context)).toThrow( - unknownParserErrorRegex, + unknownParserErrorRegex(), ); }); @@ -80,7 +145,7 @@ describe('getParserServices', () => { }); expect(() => ESLintUtils.getParserServices(context)).toThrow( - baseErrorRegex, + baseErrorRegex(), ); }); @@ -96,7 +161,7 @@ describe('getParserServices', () => { }); expect(() => ESLintUtils.getParserServices(context)).toThrow( - baseErrorRegex, + baseErrorRegex(), ); }); diff --git a/packages/utils/tests/eslint-utils/parserPathSeemsToBeTSESLint.test.ts b/packages/utils/tests/eslint-utils/parserSeemsToBeTSESLint.test.ts similarity index 79% rename from packages/utils/tests/eslint-utils/parserPathSeemsToBeTSESLint.test.ts rename to packages/utils/tests/eslint-utils/parserSeemsToBeTSESLint.test.ts index 0c11c1664005..fb70c5e644e6 100644 --- a/packages/utils/tests/eslint-utils/parserPathSeemsToBeTSESLint.test.ts +++ b/packages/utils/tests/eslint-utils/parserSeemsToBeTSESLint.test.ts @@ -1,7 +1,9 @@ -import { parserPathSeemsToBeTSESLint } from '../../src/eslint-utils/parserPathSeemsToBeTSESLint'; +import { parserSeemsToBeTSESLint } from '../../src/eslint-utils/parserSeemsToBeTSESLint'; -describe('parserPathSeemsToBeTSESLint', () => { +describe('parserSeemsToBeTSESLint', () => { test.each([ + [undefined, false], + ['espree', false], ['local.js', false], ['../other.js', false], ['@babel/eslint-parser/lib/index.cjs', false], @@ -19,6 +21,6 @@ describe('parserPathSeemsToBeTSESLint', () => { ['/path/to/@typescript-eslint/packages/parser/dist/index.js', true], ['/path/to/@typescript-eslint/packages/parser/index.js', true], ])('%s', (parserPath, expected) => { - expect(parserPathSeemsToBeTSESLint(parserPath)).toBe(expected); + expect(parserSeemsToBeTSESLint(parserPath)).toBe(expected); }); }); From 3c6290d021b5c2ec4efbcadd42c66ff4d5bc47ea Mon Sep 17 00:00:00 2001 From: Abraham Guo Date: Mon, 8 Jul 2024 00:50:15 -0500 Subject: [PATCH 02/12] fix(eslint-plugin): [no-floating-promises] add `suggestions` to tests from #9263 `checkThenables` (#9515) add suggestions --- .../tests/rules/no-floating-promises.test.ts | 89 +++++++++++++++++-- 1 file changed, 84 insertions(+), 5 deletions(-) diff --git a/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts b/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts index 67fc2265de86..8bfcd71c18ec 100644 --- a/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts +++ b/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts @@ -3760,7 +3760,21 @@ void myTag\`abc\`; declare const createPromise: () => PromiseLike; createPromise(); `, - errors: [{ line: 3, messageId: 'floatingVoid' }], + errors: [ + { + line: 3, + messageId: 'floatingVoid', + suggestions: [ + { + messageId: 'floatingFixVoid', + output: ` +declare const createPromise: () => PromiseLike; +void createPromise(); + `, + }, + ], + }, + ], options: [{ checkThenables: true }], }, { @@ -3773,7 +3787,26 @@ declare function createMyThenable(): MyThenable; createMyThenable(); `, - errors: [{ line: 8, messageId: 'floatingVoid' }], + errors: [ + { + line: 8, + messageId: 'floatingVoid', + suggestions: [ + { + messageId: 'floatingFixVoid', + output: ` +interface MyThenable { + then(onFulfilled: () => void, onRejected: () => void): MyThenable; +} + +declare function createMyThenable(): MyThenable; + +void createMyThenable(); + `, + }, + ], + }, + ], options: [{ checkThenables: true }], }, { @@ -3781,7 +3814,21 @@ createMyThenable(); declare const createPromise: () => Promise; createPromise(); `, - errors: [{ line: 3, messageId: 'floatingVoid' }], + errors: [ + { + line: 3, + messageId: 'floatingVoid', + suggestions: [ + { + messageId: 'floatingFixVoid', + output: ` +declare const createPromise: () => Promise; +void createPromise(); + `, + }, + ], + }, + ], options: [{ checkThenables: false }], }, { @@ -3790,7 +3837,22 @@ class MyPromise extends Promise {} declare const createMyPromise: () => MyPromise; createMyPromise(); `, - errors: [{ line: 4, messageId: 'floatingVoid' }], + errors: [ + { + line: 4, + messageId: 'floatingVoid', + suggestions: [ + { + messageId: 'floatingFixVoid', + output: ` +class MyPromise extends Promise {} +declare const createMyPromise: () => MyPromise; +void createMyPromise(); + `, + }, + ], + }, + ], options: [{ checkThenables: false }], }, { @@ -3801,7 +3863,24 @@ class MyPromise extends Promise { declare const createMyPromise: () => MyPromise; createMyPromise(); `, - errors: [{ line: 6, messageId: 'floatingVoid' }], + errors: [ + { + line: 6, + messageId: 'floatingVoid', + suggestions: [ + { + messageId: 'floatingFixVoid', + output: ` +class MyPromise extends Promise { + additional: string; +} +declare const createMyPromise: () => MyPromise; +void createMyPromise(); + `, + }, + ], + }, + ], options: [{ checkThenables: false }], }, ], From 03fe3dbf293170045f4b30301b07926730876d1b Mon Sep 17 00:00:00 2001 From: Yukihiro Hasegawa <49516827+y-hsgw@users.noreply.github.com> Date: Mon, 8 Jul 2024 21:19:18 +0900 Subject: [PATCH 03/12] fix(website): react key error on internal pages of website (#9506) fix: React key error --- packages/website/package.json | 2 +- .../website/src/theme/CodeBlock/Content/String.tsx | 10 ++-------- yarn.lock | 13 ++----------- 3 files changed, 5 insertions(+), 20 deletions(-) diff --git a/packages/website/package.json b/packages/website/package.json index de51b327e683..b5773fc35afa 100644 --- a/packages/website/package.json +++ b/packages/website/package.json @@ -32,7 +32,7 @@ "konamimojisplosion": "^0.5.2", "lz-string": "^1.5.0", "prettier": "^3.2.5", - "prism-react-renderer": "^1.3.5", + "prism-react-renderer": "^2.3.1", "react": "^18.2.0", "react-dom": "^18.2.0", "react-resizable-panels": "^0.0.63", diff --git a/packages/website/src/theme/CodeBlock/Content/String.tsx b/packages/website/src/theme/CodeBlock/Content/String.tsx index 16cc0880ba1a..dcd0b526ec52 100644 --- a/packages/website/src/theme/CodeBlock/Content/String.tsx +++ b/packages/website/src/theme/CodeBlock/Content/String.tsx @@ -15,8 +15,7 @@ import Line from '@theme/CodeBlock/Line'; import WordWrapButton from '@theme/CodeBlock/WordWrapButton'; import clsx from 'clsx'; import * as lz from 'lz-string'; -import type { Language } from 'prism-react-renderer'; -import Highlight, { defaultProps } from 'prism-react-renderer'; +import { Highlight } from 'prism-react-renderer'; import React from 'react'; import { TryInPlayground } from '../../MDXComponents/TryInPlayground'; @@ -75,12 +74,7 @@ export default function CodeBlockString({ > {title &&
{title}
}
- + {({ className, tokens, diff --git a/yarn.lock b/yarn.lock index 6b6346e2f6b6..1f3c9775fb32 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16905,16 +16905,7 @@ __metadata: languageName: node linkType: hard -"prism-react-renderer@npm:^1.3.5": - version: 1.3.5 - resolution: "prism-react-renderer@npm:1.3.5" - peerDependencies: - react: ">=0.14.9" - checksum: c18806dcbc4c0b4fd6fd15bd06b4f7c0a6da98d93af235c3e970854994eb9b59e23315abb6cfc29e69da26d36709a47e25da85ab27fed81b6812f0a52caf6dfa - languageName: node - linkType: hard - -"prism-react-renderer@npm:^2.3.0": +"prism-react-renderer@npm:^2.3.0, prism-react-renderer@npm:^2.3.1": version: 2.3.1 resolution: "prism-react-renderer@npm:2.3.1" dependencies: @@ -20467,7 +20458,7 @@ __metadata: mdast-util-mdx: ^3.0.0 monaco-editor: ~0.50.0 prettier: ^3.2.5 - prism-react-renderer: ^1.3.5 + prism-react-renderer: ^2.3.1 raw-loader: ^4.0.2 react: ^18.2.0 react-dom: ^18.2.0 From 7b13dae347075d467ea95d0f986b38c3048906a2 Mon Sep 17 00:00:00 2001 From: auvred <61150013+auvred@users.noreply.github.com> Date: Mon, 8 Jul 2024 12:32:27 +0000 Subject: [PATCH 04/12] fix(eslint-plugin): [restrict-template-expressions] don't report tuples if `allowArray` option is enabled (#9492) --- .../rules/restrict-template-expressions.ts | 2 +- .../restrict-template-expressions.test.ts | 59 ++++++++++++++++++- 2 files changed, 59 insertions(+), 2 deletions(-) diff --git a/packages/eslint-plugin/src/rules/restrict-template-expressions.ts b/packages/eslint-plugin/src/rules/restrict-template-expressions.ts index cc719fe7fb7b..5aa90084ac63 100644 --- a/packages/eslint-plugin/src/rules/restrict-template-expressions.ts +++ b/packages/eslint-plugin/src/rules/restrict-template-expressions.ts @@ -30,7 +30,7 @@ const optionTesters = ( [ 'Array', (type, checker, recursivelyCheckType): boolean => - checker.isArrayType(type) && + (checker.isArrayType(type) || checker.isTupleType(type)) && // eslint-disable-next-line @typescript-eslint/no-non-null-assertion recursivelyCheckType(type.getNumberIndexType()!), ], diff --git a/packages/eslint-plugin/tests/rules/restrict-template-expressions.test.ts b/packages/eslint-plugin/tests/rules/restrict-template-expressions.test.ts index 698471ae00a3..7a69ff34cbc9 100644 --- a/packages/eslint-plugin/tests/rules/restrict-template-expressions.test.ts +++ b/packages/eslint-plugin/tests/rules/restrict-template-expressions.test.ts @@ -149,12 +149,40 @@ ruleTester.run('restrict-template-expressions', rule, { { options: [{ allowArray: true }], code: ` - const arg = []; function test(arg: T) { return \`arg = \${arg}\`; } `, }, + { + options: [{ allowArray: true }], + code: ` + declare const arg: [number, string]; + const msg = \`arg = \${arg}\`; + `, + }, + { + options: [{ allowArray: true }], + code: ` + const arg = [1, 'a'] as const; + const msg = \`arg = \${arg || 'default'}\`; + `, + }, + { + options: [{ allowArray: true }], + code: ` + function test(arg: T) { + return \`arg = \${arg}\`; + } + `, + }, + { + code: ` + declare const arg: [number | undefined, string]; + const msg = \`arg = \${arg}\`; + `, + options: [{ allowNullish: true, allowArray: true }], + }, // allowAny { options: [{ allowAny: true }], @@ -365,6 +393,20 @@ ruleTester.run('restrict-template-expressions', rule, { ], options: [{ allowNullish: false }], }, + { + code: ` + declare const arg: number[]; + const msg = \`arg = \${arg}\`; + `, + errors: [ + { + messageId: 'invalidType', + data: { type: 'number[]' }, + line: 3, + column: 30, + }, + ], + }, { code: ` const msg = \`arg = \${[, 2]}\`; @@ -379,6 +421,21 @@ ruleTester.run('restrict-template-expressions', rule, { ], options: [{ allowNullish: false, allowArray: true }], }, + { + code: ` + declare const arg: [number | undefined, string]; + const msg = \`arg = \${arg}\`; + `, + errors: [ + { + messageId: 'invalidType', + data: { type: '[number | undefined, string]' }, + line: 3, + column: 30, + }, + ], + options: [{ allowNullish: false, allowArray: true }], + }, { code: ` declare const arg: number; From e803c500646ee94ec76238cb0a57d6172e090044 Mon Sep 17 00:00:00 2001 From: "typescript-eslint[bot]" Date: Mon, 8 Jul 2024 17:15:33 +0000 Subject: [PATCH 05/12] chore(release): publish 7.16.0 --- CHANGELOG.md | 31 +++++ packages/ast-spec/CHANGELOG.md | 22 +++ packages/ast-spec/package.json | 2 +- packages/eslint-plugin-internal/CHANGELOG.md | 22 +++ packages/eslint-plugin-internal/package.json | 10 +- packages/eslint-plugin/CHANGELOG.md | 37 +++++ packages/eslint-plugin/package.json | 14 +- packages/integration-tests/CHANGELOG.md | 22 +++ packages/integration-tests/package.json | 2 +- packages/parser/CHANGELOG.md | 22 +++ packages/parser/package.json | 10 +- packages/repo-tools/CHANGELOG.md | 22 +++ packages/repo-tools/package.json | 12 +- .../CHANGELOG.md | 22 +++ .../package.json | 6 +- packages/rule-tester/CHANGELOG.md | 27 ++++ packages/rule-tester/package.json | 8 +- packages/scope-manager/CHANGELOG.md | 22 +++ packages/scope-manager/package.json | 8 +- packages/type-utils/CHANGELOG.md | 22 +++ packages/type-utils/package.json | 8 +- packages/types/CHANGELOG.md | 27 ++++ packages/types/package.json | 2 +- packages/typescript-eslint/CHANGELOG.md | 27 ++++ packages/typescript-eslint/package.json | 8 +- packages/typescript-estree/CHANGELOG.md | 22 +++ packages/typescript-estree/package.json | 6 +- packages/utils/CHANGELOG.md | 24 ++++ packages/utils/package.json | 8 +- packages/visitor-keys/CHANGELOG.md | 22 +++ packages/visitor-keys/package.json | 4 +- packages/website-eslint/CHANGELOG.md | 22 +++ packages/website-eslint/package.json | 12 +- packages/website/CHANGELOG.md | 22 +++ packages/website/package.json | 18 +-- yarn.lock | 126 +++++++++--------- 36 files changed, 569 insertions(+), 132 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b93391e18c46..5e73f9683458 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,34 @@ +## 7.16.0 (2024-07-08) + + +### 🚀 Features + +- **ast-spec:** add parent property to AccessorProperty node types ([#9487](https://github.com/typescript-eslint/typescript-eslint/pull/9487)) +- **eslint-plugin:** [no-unnecessary-parameter-property-assignment] add new rule ([#8903](https://github.com/typescript-eslint/typescript-eslint/pull/8903)) +- **eslint-plugin:** add support for nested namespaces to unsafe-member-access ([#9478](https://github.com/typescript-eslint/typescript-eslint/pull/9478)) +- **eslint-plugin:** [no-floating-promises] add checkThenables option ([#9263](https://github.com/typescript-eslint/typescript-eslint/pull/9263)) +- **rule-tester:** stricter rule test validations ([#9086](https://github.com/typescript-eslint/typescript-eslint/pull/9086)) + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 ([#9497](https://github.com/typescript-eslint/typescript-eslint/pull/9497)) +- **eslint-plugin:** [no-floating-promises] add `suggestions` to tests from #9263 `checkThenables` ([#9515](https://github.com/typescript-eslint/typescript-eslint/pull/9515), [#9263](https://github.com/typescript-eslint/typescript-eslint/issues/9263)) +- **eslint-plugin:** [restrict-template-expressions] don't report tuples if `allowArray` option is enabled ([#9492](https://github.com/typescript-eslint/typescript-eslint/pull/9492)) +- **utils:** context.parserPath may be undefined ([#9486](https://github.com/typescript-eslint/typescript-eslint/pull/9486)) +- **website:** react key error on internal pages of website ([#9506](https://github.com/typescript-eslint/typescript-eslint/pull/9506)) + +### ❤️ Thank You + +- Abraham Guo +- auvred @auvred +- Josh Goldberg ✨ +- Juan Sanchez @JSanchezIO +- Vinccool96 +- YeonJuan @yeonjuan +- Yukihiro Hasegawa @y-hsgw + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/ast-spec/CHANGELOG.md b/packages/ast-spec/CHANGELOG.md index 486d1d2a081c..23d697bfa89e 100644 --- a/packages/ast-spec/CHANGELOG.md +++ b/packages/ast-spec/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for ast-spec to align it with other projects, there were no code changes. diff --git a/packages/ast-spec/package.json b/packages/ast-spec/package.json index 2099ca327535..6804daa14789 100644 --- a/packages/ast-spec/package.json +++ b/packages/ast-spec/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/ast-spec", - "version": "7.15.0", + "version": "7.16.0", "description": "Complete specification for the TypeScript-ESTree AST", "private": true, "keywords": [ diff --git a/packages/eslint-plugin-internal/CHANGELOG.md b/packages/eslint-plugin-internal/CHANGELOG.md index 2081130971a3..bb8475fd447e 100644 --- a/packages/eslint-plugin-internal/CHANGELOG.md +++ b/packages/eslint-plugin-internal/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for eslint-plugin-internal to align it with other projects, there were no code changes. diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json index d3cd95c3f521..3713f2166251 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": "7.15.0", + "version": "7.16.0", "private": true, "main": "dist/index.js", "types": "index.d.ts", @@ -15,10 +15,10 @@ }, "dependencies": { "@prettier/sync": "^0.5.1", - "@typescript-eslint/rule-tester": "7.15.0", - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/type-utils": "7.15.0", - "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/rule-tester": "7.16.0", + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/type-utils": "7.16.0", + "@typescript-eslint/utils": "7.16.0", "prettier": "^3.2.5" }, "devDependencies": { diff --git a/packages/eslint-plugin/CHANGELOG.md b/packages/eslint-plugin/CHANGELOG.md index 177614af7e79..780f981d8bb9 100644 --- a/packages/eslint-plugin/CHANGELOG.md +++ b/packages/eslint-plugin/CHANGELOG.md @@ -1,3 +1,40 @@ +## 7.16.0 (2024-07-08) + + +### 🚀 Features + +- **rule-tester:** stricter rule test validations + +- **eslint-plugin:** [no-unnecessary-parameter-property-assignment] add new rule + +- **eslint-plugin:** add support for nested namespaces to unsafe-member-access + +- **eslint-plugin:** [no-floating-promises] add checkThenables option + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **eslint-plugin:** [no-floating-promises] add `suggestions` to tests from #9263 `checkThenables` + +- **website:** react key error on internal pages of website + +- **eslint-plugin:** [restrict-template-expressions] don't report tuples if `allowArray` option is enabled + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/eslint-plugin/package.json b/packages/eslint-plugin/package.json index 9b29236c03b2..d10dba66f85e 100644 --- a/packages/eslint-plugin/package.json +++ b/packages/eslint-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/eslint-plugin", - "version": "7.15.0", + "version": "7.16.0", "description": "TypeScript plugin for ESLint", "files": [ "dist", @@ -60,10 +60,10 @@ }, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/type-utils": "7.15.0", - "@typescript-eslint/utils": "7.15.0", - "@typescript-eslint/visitor-keys": "7.15.0", + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/type-utils": "7.16.0", + "@typescript-eslint/utils": "7.16.0", + "@typescript-eslint/visitor-keys": "7.16.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -74,8 +74,8 @@ "@types/marked": "^5.0.2", "@types/mdast": "^4.0.3", "@types/natural-compare": "*", - "@typescript-eslint/rule-schema-to-typescript-types": "7.15.0", - "@typescript-eslint/rule-tester": "7.15.0", + "@typescript-eslint/rule-schema-to-typescript-types": "7.16.0", + "@typescript-eslint/rule-tester": "7.16.0", "ajv": "^6.12.6", "cross-env": "^7.0.3", "cross-fetch": "*", diff --git a/packages/integration-tests/CHANGELOG.md b/packages/integration-tests/CHANGELOG.md index 934d94497234..d8309698c26a 100644 --- a/packages/integration-tests/CHANGELOG.md +++ b/packages/integration-tests/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for integration-tests to align it with other projects, there were no code changes. diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json index 4af6f42c8021..62400d93cf4d 100644 --- a/packages/integration-tests/package.json +++ b/packages/integration-tests/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/integration-tests", - "version": "7.15.0", + "version": "7.16.0", "private": true, "scripts": { "format": "prettier --write \"./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}\" --ignore-path ../../.prettierignore", diff --git a/packages/parser/CHANGELOG.md b/packages/parser/CHANGELOG.md index 2f99daa71107..825846d66358 100644 --- a/packages/parser/CHANGELOG.md +++ b/packages/parser/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for parser to align it with other projects, there were no code changes. diff --git a/packages/parser/package.json b/packages/parser/package.json index 12b75c7a362c..777b444240cd 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/parser", - "version": "7.15.0", + "version": "7.16.0", "description": "An ESLint custom parser which leverages TypeScript ESTree", "files": [ "dist", @@ -52,10 +52,10 @@ "eslint": "^8.56.0" }, "dependencies": { - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/types": "7.15.0", - "@typescript-eslint/typescript-estree": "7.15.0", - "@typescript-eslint/visitor-keys": "7.15.0", + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/types": "7.16.0", + "@typescript-eslint/typescript-estree": "7.16.0", + "@typescript-eslint/visitor-keys": "7.16.0", "debug": "^4.3.4" }, "devDependencies": { diff --git a/packages/repo-tools/CHANGELOG.md b/packages/repo-tools/CHANGELOG.md index a0420dcadc04..9af4f75f6273 100644 --- a/packages/repo-tools/CHANGELOG.md +++ b/packages/repo-tools/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/repo-tools/package.json b/packages/repo-tools/package.json index 17ee7c7bf439..dc3c26717ec1 100644 --- a/packages/repo-tools/package.json +++ b/packages/repo-tools/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/repo-tools", - "version": "7.15.0", + "version": "7.16.0", "private": true, "//": "NOTE: intentionally no build step in this package", "scripts": { @@ -18,11 +18,11 @@ "devDependencies": { "@jest/types": "29.6.3", "@nx/devkit": "*", - "@typescript-eslint/eslint-plugin": "7.15.0", - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/types": "7.15.0", - "@typescript-eslint/typescript-estree": "7.15.0", - "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/eslint-plugin": "7.16.0", + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/types": "7.16.0", + "@typescript-eslint/typescript-estree": "7.16.0", + "@typescript-eslint/utils": "7.16.0", "cross-fetch": "*", "execa": "*", "prettier": "^3.2.5", diff --git a/packages/rule-schema-to-typescript-types/CHANGELOG.md b/packages/rule-schema-to-typescript-types/CHANGELOG.md index ddee0cf67883..cf9da7a40e4a 100644 --- a/packages/rule-schema-to-typescript-types/CHANGELOG.md +++ b/packages/rule-schema-to-typescript-types/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for rule-schema-to-typescript-types to align it with other projects, there were no code changes. diff --git a/packages/rule-schema-to-typescript-types/package.json b/packages/rule-schema-to-typescript-types/package.json index 8149a4b85ade..04b8c9a295d7 100644 --- a/packages/rule-schema-to-typescript-types/package.json +++ b/packages/rule-schema-to-typescript-types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/rule-schema-to-typescript-types", - "version": "7.15.0", + "version": "7.16.0", "private": true, "type": "commonjs", "exports": { @@ -34,8 +34,8 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@typescript-eslint/type-utils": "7.15.0", - "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/type-utils": "7.16.0", + "@typescript-eslint/utils": "7.16.0", "natural-compare": "^1.4.0", "prettier": "^3.2.5" }, diff --git a/packages/rule-tester/CHANGELOG.md b/packages/rule-tester/CHANGELOG.md index 1d12d205052b..96ea9a9975d7 100644 --- a/packages/rule-tester/CHANGELOG.md +++ b/packages/rule-tester/CHANGELOG.md @@ -1,3 +1,30 @@ +## 7.16.0 (2024-07-08) + + +### 🚀 Features + +- **rule-tester:** stricter rule test validations + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/rule-tester/package.json b/packages/rule-tester/package.json index 50534d64d82c..c0566bc99737 100644 --- a/packages/rule-tester/package.json +++ b/packages/rule-tester/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/rule-tester", - "version": "7.15.0", + "version": "7.16.0", "description": "Tooling to test ESLint rules", "files": [ "dist", @@ -48,8 +48,8 @@ }, "//": "NOTE - AJV is out-of-date, but it's intentionally synced with ESLint - https://github.com/eslint/eslint/blob/ad9dd6a933fd098a0d99c6a9aa059850535c23ee/package.json#L70", "dependencies": { - "@typescript-eslint/typescript-estree": "7.15.0", - "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/typescript-estree": "7.16.0", + "@typescript-eslint/utils": "7.16.0", "ajv": "^6.12.6", "json-stable-stringify-without-jsonify": "^1.0.1", "lodash.merge": "4.6.2", @@ -63,7 +63,7 @@ "@jest/types": "29.6.3", "@types/json-stable-stringify-without-jsonify": "^1.0.2", "@types/lodash.merge": "4.6.9", - "@typescript-eslint/parser": "7.15.0", + "@typescript-eslint/parser": "7.16.0", "chai": "^4.4.1", "eslint-visitor-keys": "^4.0.0", "espree": "^10.0.1", diff --git a/packages/scope-manager/CHANGELOG.md b/packages/scope-manager/CHANGELOG.md index b04950c336eb..835d9c60c27f 100644 --- a/packages/scope-manager/CHANGELOG.md +++ b/packages/scope-manager/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for scope-manager to align it with other projects, there were no code changes. diff --git a/packages/scope-manager/package.json b/packages/scope-manager/package.json index 40a787073d6e..221e9e7284ee 100644 --- a/packages/scope-manager/package.json +++ b/packages/scope-manager/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/scope-manager", - "version": "7.15.0", + "version": "7.16.0", "description": "TypeScript scope analyser for ESLint", "files": [ "dist", @@ -46,13 +46,13 @@ "typecheck": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "7.15.0", - "@typescript-eslint/visitor-keys": "7.15.0" + "@typescript-eslint/types": "7.16.0", + "@typescript-eslint/visitor-keys": "7.16.0" }, "devDependencies": { "@jest/types": "29.6.3", "@types/glob": "*", - "@typescript-eslint/typescript-estree": "7.15.0", + "@typescript-eslint/typescript-estree": "7.16.0", "glob": "*", "jest-specific-snapshot": "*", "make-dir": "*", diff --git a/packages/type-utils/CHANGELOG.md b/packages/type-utils/CHANGELOG.md index 045cee8058ca..932862d08931 100644 --- a/packages/type-utils/CHANGELOG.md +++ b/packages/type-utils/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for type-utils to align it with other projects, there were no code changes. diff --git a/packages/type-utils/package.json b/packages/type-utils/package.json index 5309578dfa3e..7f66cf16993c 100644 --- a/packages/type-utils/package.json +++ b/packages/type-utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/type-utils", - "version": "7.15.0", + "version": "7.16.0", "description": "Type utilities for working with TypeScript + ESLint together", "files": [ "dist", @@ -46,14 +46,14 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@typescript-eslint/typescript-estree": "7.15.0", - "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/typescript-estree": "7.16.0", + "@typescript-eslint/utils": "7.16.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, "devDependencies": { "@jest/types": "29.6.3", - "@typescript-eslint/parser": "7.15.0", + "@typescript-eslint/parser": "7.16.0", "ajv": "^6.12.6", "downlevel-dts": "*", "jest": "29.7.0", diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md index af9dfd05a491..d82688c0deb9 100644 --- a/packages/types/CHANGELOG.md +++ b/packages/types/CHANGELOG.md @@ -1,3 +1,30 @@ +## 7.16.0 (2024-07-08) + + +### 🚀 Features + +- **ast-spec:** add parent property to AccessorProperty node types + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for types to align it with other projects, there were no code changes. diff --git a/packages/types/package.json b/packages/types/package.json index 9d2b31862e4f..96d8b8e8c792 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/types", - "version": "7.15.0", + "version": "7.16.0", "description": "Types for the TypeScript-ESTree AST spec", "files": [ "dist", diff --git a/packages/typescript-eslint/CHANGELOG.md b/packages/typescript-eslint/CHANGELOG.md index e1739a20aac2..0bcda93c4bb5 100644 --- a/packages/typescript-eslint/CHANGELOG.md +++ b/packages/typescript-eslint/CHANGELOG.md @@ -1,3 +1,30 @@ +## 7.16.0 (2024-07-08) + + +### 🚀 Features + +- **eslint-plugin:** [no-unnecessary-parameter-property-assignment] add new rule + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/typescript-eslint/package.json b/packages/typescript-eslint/package.json index e90b02f519a9..ae41c10e7b8b 100644 --- a/packages/typescript-eslint/package.json +++ b/packages/typescript-eslint/package.json @@ -1,6 +1,6 @@ { "name": "typescript-eslint", - "version": "7.15.0", + "version": "7.16.0", "description": "Tooling which enables you to use TypeScript with ESLint", "files": [ "dist", @@ -55,9 +55,9 @@ "eslint": "^8.56.0" }, "dependencies": { - "@typescript-eslint/eslint-plugin": "7.15.0", - "@typescript-eslint/parser": "7.15.0", - "@typescript-eslint/utils": "7.15.0" + "@typescript-eslint/eslint-plugin": "7.16.0", + "@typescript-eslint/parser": "7.16.0", + "@typescript-eslint/utils": "7.16.0" }, "devDependencies": { "@jest/types": "29.6.3", diff --git a/packages/typescript-estree/CHANGELOG.md b/packages/typescript-estree/CHANGELOG.md index 68207870c747..3aff0767caa6 100644 --- a/packages/typescript-estree/CHANGELOG.md +++ b/packages/typescript-estree/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for typescript-estree to align it with other projects, there were no code changes. diff --git a/packages/typescript-estree/package.json b/packages/typescript-estree/package.json index 2c103da9a2f2..3c64ef546f34 100644 --- a/packages/typescript-estree/package.json +++ b/packages/typescript-estree/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/typescript-estree", - "version": "7.15.0", + "version": "7.16.0", "description": "A parser that converts TypeScript source code into an ESTree compatible form", "files": [ "dist", @@ -54,8 +54,8 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@typescript-eslint/types": "7.15.0", - "@typescript-eslint/visitor-keys": "7.15.0", + "@typescript-eslint/types": "7.16.0", + "@typescript-eslint/visitor-keys": "7.16.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md index 3ab7b0de5633..8775265117b9 100644 --- a/packages/utils/CHANGELOG.md +++ b/packages/utils/CHANGELOG.md @@ -1,3 +1,27 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **utils:** context.parserPath may be undefined + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/utils/package.json b/packages/utils/package.json index 9858e807e6f8..842fc0d381f7 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/utils", - "version": "7.15.0", + "version": "7.16.0", "description": "Utilities for working with TypeScript + ESLint together", "files": [ "dist", @@ -64,9 +64,9 @@ }, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/types": "7.15.0", - "@typescript-eslint/typescript-estree": "7.15.0" + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/types": "7.16.0", + "@typescript-eslint/typescript-estree": "7.16.0" }, "peerDependencies": { "eslint": "^8.56.0" diff --git a/packages/visitor-keys/CHANGELOG.md b/packages/visitor-keys/CHANGELOG.md index 267228ccb75f..cddb2f51bb03 100644 --- a/packages/visitor-keys/CHANGELOG.md +++ b/packages/visitor-keys/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) This was a version bump only for visitor-keys to align it with other projects, there were no code changes. diff --git a/packages/visitor-keys/package.json b/packages/visitor-keys/package.json index 9bd64c9512f1..8e82bac28eea 100644 --- a/packages/visitor-keys/package.json +++ b/packages/visitor-keys/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/visitor-keys", - "version": "7.15.0", + "version": "7.16.0", "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", "files": [ "dist", @@ -47,7 +47,7 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@typescript-eslint/types": "7.15.0", + "@typescript-eslint/types": "7.16.0", "eslint-visitor-keys": "^3.4.3" }, "devDependencies": { diff --git a/packages/website-eslint/CHANGELOG.md b/packages/website-eslint/CHANGELOG.md index 7aa1c492f1ba..253ad2fce01e 100644 --- a/packages/website-eslint/CHANGELOG.md +++ b/packages/website-eslint/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/website-eslint/package.json b/packages/website-eslint/package.json index aaa37f09f6aa..d4ce7bdb2959 100644 --- a/packages/website-eslint/package.json +++ b/packages/website-eslint/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/website-eslint", - "version": "7.15.0", + "version": "7.16.0", "private": true, "description": "ESLint which works in browsers.", "files": [ @@ -24,11 +24,11 @@ }, "devDependencies": { "@eslint/js": "*", - "@typescript-eslint/eslint-plugin": "7.15.0", - "@typescript-eslint/parser": "7.15.0", - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/typescript-estree": "7.15.0", - "@typescript-eslint/visitor-keys": "7.15.0", + "@typescript-eslint/eslint-plugin": "7.16.0", + "@typescript-eslint/parser": "7.16.0", + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/typescript-estree": "7.16.0", + "@typescript-eslint/visitor-keys": "7.16.0", "esbuild": "~0.21.0", "eslint": "*", "esquery": "*", diff --git a/packages/website/CHANGELOG.md b/packages/website/CHANGELOG.md index 05b99980c93d..2ad02ccf9478 100644 --- a/packages/website/CHANGELOG.md +++ b/packages/website/CHANGELOG.md @@ -1,3 +1,25 @@ +## 7.16.0 (2024-07-08) + + +### 🩹 Fixes + +- **deps:** update dependency @eslint-community/regexpp to v4.11.0 + +- **website:** react key error on internal pages of website + + +### ❤️ Thank You + +- Abraham Guo +- auvred +- Josh Goldberg ✨ +- Juan Sanchez +- Vinccool96 +- YeonJuan +- Yukihiro Hasegawa + +You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. + ## 7.15.0 (2024-07-01) diff --git a/packages/website/package.json b/packages/website/package.json index b5773fc35afa..438bf668d6ed 100644 --- a/packages/website/package.json +++ b/packages/website/package.json @@ -1,6 +1,6 @@ { "name": "website", - "version": "7.15.0", + "version": "7.16.0", "private": true, "scripts": { "build": "docusaurus build", @@ -23,8 +23,8 @@ "@docusaurus/preset-classic": "^3.2.1", "@docusaurus/remark-plugin-npm2yarn": "^3.2.1", "@docusaurus/theme-common": "^3.2.1", - "@typescript-eslint/parser": "7.15.0", - "@typescript-eslint/website-eslint": "7.15.0", + "@typescript-eslint/parser": "7.16.0", + "@typescript-eslint/website-eslint": "7.16.0", "@uiw/react-shields": "2.0.1", "clsx": "^2.1.0", "eslint": "*", @@ -47,12 +47,12 @@ "@types/mdast": "^4.0.3", "@types/react": "*", "@types/unist": "^3.0.2", - "@typescript-eslint/eslint-plugin": "7.15.0", - "@typescript-eslint/rule-schema-to-typescript-types": "7.15.0", - "@typescript-eslint/scope-manager": "7.15.0", - "@typescript-eslint/types": "7.15.0", - "@typescript-eslint/typescript-estree": "7.15.0", - "@typescript-eslint/utils": "7.15.0", + "@typescript-eslint/eslint-plugin": "7.16.0", + "@typescript-eslint/rule-schema-to-typescript-types": "7.16.0", + "@typescript-eslint/scope-manager": "7.16.0", + "@typescript-eslint/types": "7.16.0", + "@typescript-eslint/typescript-estree": "7.16.0", + "@typescript-eslint/utils": "7.16.0", "copy-webpack-plugin": "^12.0.0", "cross-fetch": "*", "history": "^4.9.0", diff --git a/yarn.lock b/yarn.lock index 1f3c9775fb32..f6b20ec973c1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5577,17 +5577,17 @@ __metadata: dependencies: "@jest/types": 29.6.3 "@prettier/sync": ^0.5.1 - "@typescript-eslint/rule-tester": 7.15.0 - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/type-utils": 7.15.0 - "@typescript-eslint/utils": 7.15.0 + "@typescript-eslint/rule-tester": 7.16.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/type-utils": 7.16.0 + "@typescript-eslint/utils": 7.16.0 jest: 29.7.0 prettier: ^3.2.5 rimraf: "*" languageName: unknown linkType: soft -"@typescript-eslint/eslint-plugin@7.15.0, @typescript-eslint/eslint-plugin@workspace:packages/eslint-plugin": +"@typescript-eslint/eslint-plugin@7.16.0, @typescript-eslint/eslint-plugin@workspace:packages/eslint-plugin": version: 0.0.0-use.local resolution: "@typescript-eslint/eslint-plugin@workspace:packages/eslint-plugin" dependencies: @@ -5596,12 +5596,12 @@ __metadata: "@types/marked": ^5.0.2 "@types/mdast": ^4.0.3 "@types/natural-compare": "*" - "@typescript-eslint/rule-schema-to-typescript-types": 7.15.0 - "@typescript-eslint/rule-tester": 7.15.0 - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/type-utils": 7.15.0 - "@typescript-eslint/utils": 7.15.0 - "@typescript-eslint/visitor-keys": 7.15.0 + "@typescript-eslint/rule-schema-to-typescript-types": 7.16.0 + "@typescript-eslint/rule-tester": 7.16.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/type-utils": 7.16.0 + "@typescript-eslint/utils": 7.16.0 + "@typescript-eslint/visitor-keys": 7.16.0 ajv: ^6.12.6 cross-env: ^7.0.3 cross-fetch: "*" @@ -5646,16 +5646,16 @@ __metadata: languageName: unknown linkType: soft -"@typescript-eslint/parser@7.15.0, @typescript-eslint/parser@workspace:packages/parser": +"@typescript-eslint/parser@7.16.0, @typescript-eslint/parser@workspace:packages/parser": version: 0.0.0-use.local resolution: "@typescript-eslint/parser@workspace:packages/parser" dependencies: "@jest/types": 29.6.3 "@types/glob": "*" - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/types": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/visitor-keys": 7.15.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/types": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/visitor-keys": 7.16.0 debug: ^4.3.4 downlevel-dts: "*" glob: "*" @@ -5677,11 +5677,11 @@ __metadata: dependencies: "@jest/types": 29.6.3 "@nx/devkit": "*" - "@typescript-eslint/eslint-plugin": 7.15.0 - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/types": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/utils": 7.15.0 + "@typescript-eslint/eslint-plugin": 7.16.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/types": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/utils": 7.16.0 cross-fetch: "*" execa: "*" prettier: ^3.2.5 @@ -5691,28 +5691,28 @@ __metadata: languageName: unknown linkType: soft -"@typescript-eslint/rule-schema-to-typescript-types@7.15.0, @typescript-eslint/rule-schema-to-typescript-types@workspace:packages/rule-schema-to-typescript-types": +"@typescript-eslint/rule-schema-to-typescript-types@7.16.0, @typescript-eslint/rule-schema-to-typescript-types@workspace:packages/rule-schema-to-typescript-types": version: 0.0.0-use.local resolution: "@typescript-eslint/rule-schema-to-typescript-types@workspace:packages/rule-schema-to-typescript-types" dependencies: "@jest/types": 29.6.3 - "@typescript-eslint/type-utils": 7.15.0 - "@typescript-eslint/utils": 7.15.0 + "@typescript-eslint/type-utils": 7.16.0 + "@typescript-eslint/utils": 7.16.0 natural-compare: ^1.4.0 prettier: ^3.2.5 languageName: unknown linkType: soft -"@typescript-eslint/rule-tester@7.15.0, @typescript-eslint/rule-tester@workspace:packages/rule-tester": +"@typescript-eslint/rule-tester@7.16.0, @typescript-eslint/rule-tester@workspace:packages/rule-tester": version: 0.0.0-use.local resolution: "@typescript-eslint/rule-tester@workspace:packages/rule-tester" dependencies: "@jest/types": 29.6.3 "@types/json-stable-stringify-without-jsonify": ^1.0.2 "@types/lodash.merge": 4.6.9 - "@typescript-eslint/parser": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/utils": 7.15.0 + "@typescript-eslint/parser": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/utils": 7.16.0 ajv: ^6.12.6 chai: ^4.4.1 eslint-visitor-keys: ^4.0.0 @@ -5731,15 +5731,15 @@ __metadata: languageName: unknown linkType: soft -"@typescript-eslint/scope-manager@7.15.0, @typescript-eslint/scope-manager@workspace:packages/scope-manager": +"@typescript-eslint/scope-manager@7.16.0, @typescript-eslint/scope-manager@workspace:packages/scope-manager": version: 0.0.0-use.local resolution: "@typescript-eslint/scope-manager@workspace:packages/scope-manager" dependencies: "@jest/types": 29.6.3 "@types/glob": "*" - "@typescript-eslint/types": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/visitor-keys": 7.15.0 + "@typescript-eslint/types": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/visitor-keys": 7.16.0 glob: "*" jest-specific-snapshot: "*" make-dir: "*" @@ -5768,14 +5768,14 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@7.15.0, @typescript-eslint/type-utils@workspace:packages/type-utils": +"@typescript-eslint/type-utils@7.16.0, @typescript-eslint/type-utils@workspace:packages/type-utils": version: 0.0.0-use.local resolution: "@typescript-eslint/type-utils@workspace:packages/type-utils" dependencies: "@jest/types": 29.6.3 - "@typescript-eslint/parser": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/utils": 7.15.0 + "@typescript-eslint/parser": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/utils": 7.16.0 ajv: ^6.12.6 debug: ^4.3.4 downlevel-dts: "*" @@ -5792,7 +5792,7 @@ __metadata: languageName: unknown linkType: soft -"@typescript-eslint/types@7.15.0, @typescript-eslint/types@workspace:packages/types": +"@typescript-eslint/types@7.16.0, @typescript-eslint/types@workspace:packages/types": version: 0.0.0-use.local resolution: "@typescript-eslint/types@workspace:packages/types" dependencies: @@ -5891,13 +5891,13 @@ __metadata: languageName: unknown linkType: soft -"@typescript-eslint/typescript-estree@7.15.0, @typescript-eslint/typescript-estree@workspace:packages/typescript-estree": +"@typescript-eslint/typescript-estree@7.16.0, @typescript-eslint/typescript-estree@workspace:packages/typescript-estree": version: 0.0.0-use.local resolution: "@typescript-eslint/typescript-estree@workspace:packages/typescript-estree" dependencies: "@jest/types": 29.6.3 - "@typescript-eslint/types": 7.15.0 - "@typescript-eslint/visitor-keys": 7.15.0 + "@typescript-eslint/types": 7.16.0 + "@typescript-eslint/visitor-keys": 7.16.0 debug: ^4.3.4 glob: "*" globby: ^11.1.0 @@ -5953,14 +5953,14 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@7.15.0, @typescript-eslint/utils@workspace:packages/utils": +"@typescript-eslint/utils@7.16.0, @typescript-eslint/utils@workspace:packages/utils": version: 0.0.0-use.local resolution: "@typescript-eslint/utils@workspace:packages/utils" dependencies: "@eslint-community/eslint-utils": ^4.4.0 - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/types": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/types": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 downlevel-dts: "*" jest: 29.7.0 prettier: ^3.2.5 @@ -6006,13 +6006,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@7.15.0, @typescript-eslint/visitor-keys@workspace:packages/visitor-keys": +"@typescript-eslint/visitor-keys@7.16.0, @typescript-eslint/visitor-keys@workspace:packages/visitor-keys": version: 0.0.0-use.local resolution: "@typescript-eslint/visitor-keys@workspace:packages/visitor-keys" dependencies: "@jest/types": 29.6.3 "@types/eslint-visitor-keys": "*" - "@typescript-eslint/types": 7.15.0 + "@typescript-eslint/types": 7.16.0 downlevel-dts: "*" eslint-visitor-keys: ^3.4.3 jest: 29.7.0 @@ -6042,16 +6042,16 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/website-eslint@7.15.0, @typescript-eslint/website-eslint@workspace:packages/website-eslint": +"@typescript-eslint/website-eslint@7.16.0, @typescript-eslint/website-eslint@workspace:packages/website-eslint": version: 0.0.0-use.local resolution: "@typescript-eslint/website-eslint@workspace:packages/website-eslint" dependencies: "@eslint/js": "*" - "@typescript-eslint/eslint-plugin": 7.15.0 - "@typescript-eslint/parser": 7.15.0 - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/visitor-keys": 7.15.0 + "@typescript-eslint/eslint-plugin": 7.16.0 + "@typescript-eslint/parser": 7.16.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/visitor-keys": 7.16.0 esbuild: ~0.21.0 eslint: "*" esquery: "*" @@ -19723,9 +19723,9 @@ __metadata: resolution: "typescript-eslint@workspace:packages/typescript-eslint" dependencies: "@jest/types": 29.6.3 - "@typescript-eslint/eslint-plugin": 7.15.0 - "@typescript-eslint/parser": 7.15.0 - "@typescript-eslint/utils": 7.15.0 + "@typescript-eslint/eslint-plugin": 7.16.0 + "@typescript-eslint/parser": 7.16.0 + "@typescript-eslint/utils": 7.16.0 downlevel-dts: "*" jest: 29.7.0 prettier: ^3.2.5 @@ -20437,14 +20437,14 @@ __metadata: "@types/mdast": ^4.0.3 "@types/react": "*" "@types/unist": ^3.0.2 - "@typescript-eslint/eslint-plugin": 7.15.0 - "@typescript-eslint/parser": 7.15.0 - "@typescript-eslint/rule-schema-to-typescript-types": 7.15.0 - "@typescript-eslint/scope-manager": 7.15.0 - "@typescript-eslint/types": 7.15.0 - "@typescript-eslint/typescript-estree": 7.15.0 - "@typescript-eslint/utils": 7.15.0 - "@typescript-eslint/website-eslint": 7.15.0 + "@typescript-eslint/eslint-plugin": 7.16.0 + "@typescript-eslint/parser": 7.16.0 + "@typescript-eslint/rule-schema-to-typescript-types": 7.16.0 + "@typescript-eslint/scope-manager": 7.16.0 + "@typescript-eslint/types": 7.16.0 + "@typescript-eslint/typescript-estree": 7.16.0 + "@typescript-eslint/utils": 7.16.0 + "@typescript-eslint/website-eslint": 7.16.0 "@uiw/react-shields": 2.0.1 clsx: ^2.1.0 copy-webpack-plugin: ^12.0.0 From bebbd0c274e5009bf6b03b3a382782a3a708248e Mon Sep 17 00:00:00 2001 From: Dasa Paddock Date: Tue, 9 Jul 2024 09:50:11 -0700 Subject: [PATCH 06/12] chore(eslint-plugin): [no-unnecessary-parameter-property-assignment] remove `fixable` from `meta` (#9527) chore: remove `fixable` from `meta` No fixer is actually present. Ref: https://github.com/typescript-eslint/typescript-eslint/pull/8903#discussion_r1669379472 --- .../src/rules/no-unnecessary-parameter-property-assignment.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/eslint-plugin/src/rules/no-unnecessary-parameter-property-assignment.ts b/packages/eslint-plugin/src/rules/no-unnecessary-parameter-property-assignment.ts index 43cc5ebbcf24..4e589a93af5c 100644 --- a/packages/eslint-plugin/src/rules/no-unnecessary-parameter-property-assignment.ts +++ b/packages/eslint-plugin/src/rules/no-unnecessary-parameter-property-assignment.ts @@ -13,7 +13,6 @@ export default createRule({ description: 'Disallow unnecessary assignment of constructor property parameter', }, - fixable: 'code', messages: { unnecessaryAssign: 'This assignment is unnecessary since it is already assigned by a parameter property.', From c0eab004e9e955169d8c336ef0f3822dd64c9a97 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 10 Jul 2024 10:54:33 +0000 Subject: [PATCH 07/12] chore(deps): update dependency knip to v5.24.0 (#9534) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 242 ++---------------------------------------------------- 1 file changed, 7 insertions(+), 235 deletions(-) diff --git a/yarn.lock b/yarn.lock index f6b20ec973c1..c018bb22b2ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2971,31 +2971,6 @@ __metadata: languageName: node linkType: hard -"@ericcornelissen/bash-parser@npm:0.5.3": - version: 0.5.3 - resolution: "@ericcornelissen/bash-parser@npm:0.5.3" - dependencies: - array-last: ^1.1.1 - babylon: ^6.9.1 - compose-function: ^3.0.3 - filter-obj: ^1.1.0 - has-own-property: ^0.1.0 - identity-function: ^1.0.0 - is-iterable: ^1.1.0 - iterable-lookahead: ^1.0.0 - lodash.curry: ^4.1.1 - magic-string: ^0.16.0 - map-obj: ^2.0.0 - object-pairs: ^0.1.0 - object-values: ^1.0.0 - reverse-arguments: ^1.0.0 - shell-quote-word: ^1.0.1 - to-pascal-case: ^1.0.0 - unescape-js: ^1.0.5 - checksum: b3f6c899ea3240000b83674d37c744e2ae06e776b2f76129db9fcd397d77f2cb84c1c560ce318395fffc6a2b5edb1ec513a8c67514f4ea0229d9d87095955ac5 - languageName: node - linkType: hard - "@es-joy/jsdoccomment@npm:~0.41.0": version: 0.41.0 resolution: "@es-joy/jsdoccomment@npm:0.41.0" @@ -3883,16 +3858,6 @@ __metadata: languageName: node linkType: hard -"@nodelib/fs.scandir@npm:3.0.0": - version: 3.0.0 - resolution: "@nodelib/fs.scandir@npm:3.0.0" - dependencies: - "@nodelib/fs.stat": 3.0.0 - run-parallel: ^1.2.0 - checksum: f4e9d07b310f248503d3cd632310b25cd01d97a74701bc59e1458bad32c84f78615d9853820adba8af73d970868aab46de68e540ca7efd90dacd4ea34d05553d - languageName: node - linkType: hard - "@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": version: 2.0.5 resolution: "@nodelib/fs.stat@npm:2.0.5" @@ -3900,24 +3865,7 @@ __metadata: languageName: node linkType: hard -"@nodelib/fs.stat@npm:3.0.0": - version: 3.0.0 - resolution: "@nodelib/fs.stat@npm:3.0.0" - checksum: 93a93e19b64d0275b5120bed2cf85da4c5804014de1bdac6e9933b835b1cb9f88252dc990b148076bec034fc757bdd97d74cf5d99bc9f895e0f925aeabe7dbcf - languageName: node - linkType: hard - -"@nodelib/fs.walk@npm:2.0.0": - version: 2.0.0 - resolution: "@nodelib/fs.walk@npm:2.0.0" - dependencies: - "@nodelib/fs.scandir": 3.0.0 - fastq: ^1.15.0 - checksum: f900965bc3953a67cb74916ec0950cd5d58006a9218aef99928cc22dd77d117376aaf710e46c740d18638a99337a4e81cbf70c892a2124269bf177c459d89837 - languageName: node - linkType: hard - -"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": +"@nodelib/fs.walk@npm:1.2.8, @nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": version: 1.2.8 resolution: "@nodelib/fs.walk@npm:1.2.8" dependencies: @@ -6652,13 +6600,6 @@ __metadata: languageName: node linkType: hard -"arity-n@npm:^1.0.4": - version: 1.0.4 - resolution: "arity-n@npm:1.0.4" - checksum: 3d76e16907f7b8a9452690c1efc301d0fbecea457365797eccfbade9b8d1653175b2c38343201bf26fdcbf0bcbb31eab6d912e7c008c6d19042301dc0be80a73 - languageName: node - linkType: hard - "array-buffer-byte-length@npm:^1.0.0, array-buffer-byte-length@npm:^1.0.1": version: 1.0.1 resolution: "array-buffer-byte-length@npm:1.0.1" @@ -6697,15 +6638,6 @@ __metadata: languageName: node linkType: hard -"array-last@npm:^1.1.1": - version: 1.3.0 - resolution: "array-last@npm:1.3.0" - dependencies: - is-number: ^4.0.0 - checksum: 7631c7df9b44ea26f49e2f6eeb7a7d4d95b3798586b917e1efae4a321b6362e449e00b011e88eb0260959fbfc940fbdfce1d2a35765ea080de6d71e3fc3cf1dd - languageName: node - linkType: hard - "array-timsort@npm:^1.0.3": version: 1.0.3 resolution: "array-timsort@npm:1.0.3" @@ -7107,15 +7039,6 @@ __metadata: languageName: node linkType: hard -"babylon@npm:^6.9.1": - version: 6.18.0 - resolution: "babylon@npm:6.18.0" - bin: - babylon: ./bin/babylon.js - checksum: 0777ae0c735ce1cbfc856d627589ed9aae212b84fb0c03c368b55e6c5d3507841780052808d0ad46e18a2ba516e93d55eeed8cd967f3b2938822dfeccfb2a16d - languageName: node - linkType: hard - "bail@npm:^2.0.0": version: 2.0.2 resolution: "bail@npm:2.0.2" @@ -7994,15 +7917,6 @@ __metadata: languageName: node linkType: hard -"compose-function@npm:^3.0.3": - version: 3.0.3 - resolution: "compose-function@npm:3.0.3" - dependencies: - arity-n: ^1.0.4 - checksum: 9f17d431e3ee4797c844f2870e13494079882ac3dbc54c143b7d99967b371908e0ce7ceb71c6aed61e2ecddbcd7bb437d91428a3d0e6569aee17a87fcbc7918f - languageName: node - linkType: hard - "compressible@npm:~2.0.16": version: 2.0.18 resolution: "compressible@npm:2.0.18" @@ -10524,7 +10438,7 @@ __metadata: languageName: node linkType: hard -"fastq@npm:^1.15.0, fastq@npm:^1.6.0": +"fastq@npm:^1.6.0": version: 1.17.1 resolution: "fastq@npm:1.17.1" dependencies: @@ -10652,13 +10566,6 @@ __metadata: languageName: node linkType: hard -"filter-obj@npm:^1.1.0": - version: 1.1.0 - resolution: "filter-obj@npm:1.1.0" - checksum: cf2104a7c45ff48e7f505b78a3991c8f7f30f28bd8106ef582721f321f1c6277f7751aacd5d83026cb079d9d5091082f588d14a72e7c5d720ece79118fa61e10 - languageName: node - linkType: hard - "finalhandler@npm:1.2.0": version: 1.2.0 resolution: "finalhandler@npm:1.2.0" @@ -11455,13 +11362,6 @@ __metadata: languageName: node linkType: hard -"has-own-property@npm:^0.1.0": - version: 0.1.0 - resolution: "has-own-property@npm:0.1.0" - checksum: 4754f42e8a54860ea1a397c231843937ba890f3aa556698c9a2160df5f9b1a02ddb321ef0528294aec3aaa3139d17744da048027aa7129a631cb6554b6faed6f - languageName: node - linkType: hard - "has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.1, has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" @@ -11993,13 +11893,6 @@ __metadata: languageName: node linkType: hard -"identity-function@npm:^1.0.0": - version: 1.0.0 - resolution: "identity-function@npm:1.0.0" - checksum: 0ec311050c69679334b12479f53226f67ca41bc3ba7283ede3dacfb80802ec07643868d16b274ab823ceb2e81291697f01b07e32c7796f92255bd81452b7ea15 - languageName: node - linkType: hard - "identity-obj-proxy@npm:3.0.0": version: 3.0.0 resolution: "identity-obj-proxy@npm:3.0.0" @@ -12451,13 +12344,6 @@ __metadata: languageName: node linkType: hard -"is-iterable@npm:^1.1.0": - version: 1.1.1 - resolution: "is-iterable@npm:1.1.1" - checksum: d059aaf00899cf351cdf4d71ea6b4e8912107c47b31b554d28205199b306420f3b5d30a419efa6b807f466f675fd945822f1651fd6d1fd45469a578573da671e - languageName: node - linkType: hard - "is-lambda@npm:^1.0.1": version: 1.0.1 resolution: "is-lambda@npm:1.0.1" @@ -12502,13 +12388,6 @@ __metadata: languageName: node linkType: hard -"is-number@npm:^4.0.0": - version: 4.0.0 - resolution: "is-number@npm:4.0.0" - checksum: e71962a5ae97400211e6be5946eff2b81d3fa85154dad498bfe2704999e63ac6b3f8591fdb7971a121122cc6e25915c2cfe882ff7b77e243d51b92ca6961267e - languageName: node - linkType: hard - "is-number@npm:^7.0.0": version: 7.0.0 resolution: "is-number@npm:7.0.0" @@ -12827,13 +12706,6 @@ __metadata: languageName: node linkType: hard -"iterable-lookahead@npm:^1.0.0": - version: 1.0.0 - resolution: "iterable-lookahead@npm:1.0.0" - checksum: 9d849bfbfafcaf83c6eec2835192088b1f7d1aadf9f33ec4e1d117664af2d47acb742e130179c35a6eec01d0e3ec2750ea8347ba6796e47e329b015455076e67 - languageName: node - linkType: hard - "iterator.prototype@npm:^1.1.2": version: 1.1.2 resolution: "iterator.prototype@npm:1.1.2" @@ -13590,11 +13462,10 @@ __metadata: linkType: hard "knip@npm:^5.9.4": - version: 5.23.3 - resolution: "knip@npm:5.23.3" + version: 5.25.1 + resolution: "knip@npm:5.25.1" dependencies: - "@ericcornelissen/bash-parser": 0.5.3 - "@nodelib/fs.walk": 2.0.0 + "@nodelib/fs.walk": 1.2.8 "@snyk/github-codeowners": 1.1.0 easy-table: 1.2.0 fast-glob: ^3.3.2 @@ -13617,7 +13488,7 @@ __metadata: bin: knip: bin/knip.js knip-bun: bin/knip-bun.js - checksum: 93acc4d1745dc7b64c17f8545c43ec03ef67b78c3291347e886c8e09c2dc134dfbfd0ebb83e160717d4a19025d46e037590a99c51886a325efa7a817bbaa9145 + checksum: a8b2955d162668535ba23090042387335bda9b77364e6c86bbf8dcc6ea077cdce02dbe9dc8b46fe707fffc7b1e0babf87552315fa9c011c256c8950a58c9b25a languageName: node linkType: hard @@ -13830,13 +13701,6 @@ __metadata: languageName: node linkType: hard -"lodash.curry@npm:^4.1.1": - version: 4.1.1 - resolution: "lodash.curry@npm:4.1.1" - checksum: 9192b70fe7df4d1ff780c0260bee271afa9168c93fe4fa24bc861900240531b59781b5fdaadf4644fea8f4fbcd96f0700539ab294b579ffc1022c6c15dcc462a - languageName: node - linkType: hard - "lodash.debounce@npm:^4.0.8": version: 4.0.8 resolution: "lodash.debounce@npm:4.0.8" @@ -14000,15 +13864,6 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.16.0": - version: 0.16.0 - resolution: "magic-string@npm:0.16.0" - dependencies: - vlq: ^0.2.1 - checksum: f97e225062b600212e95fc8ed1948410bee3cb5248e03ed14fc45f12bb61a43960fdc0525f4aaaf62d6e79165526c9f8274ec225a92d421980cfcfcb8063be98 - languageName: node - linkType: hard - "magic-string@npm:^0.25.0, magic-string@npm:^0.25.7": version: 0.25.9 resolution: "magic-string@npm:0.25.9" @@ -14073,13 +13928,6 @@ __metadata: languageName: node linkType: hard -"map-obj@npm:^2.0.0": - version: 2.0.0 - resolution: "map-obj@npm:2.0.0" - checksum: 77d2b7b03398a71c84bd7df8ab7be2139e5459fc1e18dbb5f15055fe7284bec0fc37fe410185b5f8ca2e3c3e01fd0fd1f946c579607878adb26cad1cd75314aa - languageName: node - linkType: hard - "markdown-extensions@npm:^2.0.0": version: 2.0.0 resolution: "markdown-extensions@npm:2.0.0" @@ -15750,20 +15598,6 @@ __metadata: languageName: node linkType: hard -"object-pairs@npm:^0.1.0": - version: 0.1.0 - resolution: "object-pairs@npm:0.1.0" - checksum: 8bde82dda701c84a27ba5bcf5e014283c6defbdab6df189af0b6582541711ed86ba2f0cce0a300a2220ba27b54ee11128c508982a191fa04f81770a7695b23d9 - languageName: node - linkType: hard - -"object-values@npm:^1.0.0": - version: 1.0.0 - resolution: "object-values@npm:1.0.0" - checksum: b86e7ef56349de1444e45b00f4aac7dcb76f2973f3e2cd5836cf86815b1ea4b2b3827bb2320cd5d1a50c78dd3068ce23cbcb5a1f024abe12296af8cf50d17a22 - languageName: node - linkType: hard - "object.assign@npm:^4.1.0, object.assign@npm:^4.1.4, object.assign@npm:^4.1.5": version: 4.1.5 resolution: "object.assign@npm:4.1.5" @@ -17860,13 +17694,6 @@ __metadata: languageName: node linkType: hard -"reverse-arguments@npm:^1.0.0": - version: 1.0.0 - resolution: "reverse-arguments@npm:1.0.0" - checksum: 4dc725066adb35bccdee90545bab7e3ddd07e61c3622afa22a6a17cc84cf22166f9355f8f206c89d344f0afc78a53ae6a8d43a710ca9774a676e3632a5a3d9a1 - languageName: node - linkType: hard - "rfdc@npm:^1.3.1": version: 1.3.1 resolution: "rfdc@npm:1.3.1" @@ -17959,7 +17786,7 @@ __metadata: languageName: node linkType: hard -"run-parallel@npm:^1.1.9, run-parallel@npm:^1.2.0": +"run-parallel@npm:^1.1.9": version: 1.2.0 resolution: "run-parallel@npm:1.2.0" dependencies: @@ -18306,13 +18133,6 @@ __metadata: languageName: node linkType: hard -"shell-quote-word@npm:^1.0.1": - version: 1.0.1 - resolution: "shell-quote-word@npm:1.0.1" - checksum: 05c5df92acba3e7920dbd987b235276871d38cf360d339074cbfabea49bbca8406a6f06a822cd1e84912c3150277d73de5194ca21c37ef95e108dfe45372526f - languageName: node - linkType: hard - "shell-quote@npm:^1.7.3, shell-quote@npm:^1.8.1": version: 1.8.1 resolution: "shell-quote@npm:1.8.1" @@ -18786,13 +18606,6 @@ __metadata: languageName: node linkType: hard -"string.fromcodepoint@npm:^0.2.1": - version: 0.2.1 - resolution: "string.fromcodepoint@npm:0.2.1" - checksum: 6ba80f70c3e2a36dab87f5d68168936403295a73838564e701f5c861d397d77d9e97b0e2aa0f3c163a25a96c785dcc2145452b220753fb7b3e6c6fe431c9c411 - languageName: node - linkType: hard - "string.prototype.includes@npm:^2.0.0": version: 2.0.0 resolution: "string.prototype.includes@npm:2.0.0" @@ -19379,22 +19192,6 @@ __metadata: languageName: node linkType: hard -"to-no-case@npm:^1.0.0": - version: 1.0.2 - resolution: "to-no-case@npm:1.0.2" - checksum: 1d85326eeb89f9f3a805bf5b395bcabb8556e882350164c1faa10846076732f4cec02ac95b016e7d6bb2f55e448ce5dd227c7699ec43e387c705a5b2b1ee2963 - languageName: node - linkType: hard - -"to-pascal-case@npm:^1.0.0": - version: 1.0.0 - resolution: "to-pascal-case@npm:1.0.0" - dependencies: - to-space-case: ^1.0.0 - checksum: 3956e209defc6df9de98c5db24a16fb2a1a11f711350ea3bdd9466240a04ab889fa09f1bd005e26fc31343c1cca341981daf2d80d4ec3f2d0706a557978f8b91 - languageName: node - linkType: hard - "to-regex-range@npm:^5.0.1": version: 5.0.1 resolution: "to-regex-range@npm:5.0.1" @@ -19404,15 +19201,6 @@ __metadata: languageName: node linkType: hard -"to-space-case@npm:^1.0.0": - version: 1.0.0 - resolution: "to-space-case@npm:1.0.0" - dependencies: - to-no-case: ^1.0.0 - checksum: 157cebe3e98e7cb465fe1978cf26450cc8ea8e637a01039854fac7ed60ad074e5e18b32333cc5f30df81b81ca374d63df768cd4c1fa0fe672605f965376227f4 - languageName: node - linkType: hard - "toidentifier@npm:1.0.1": version: 1.0.1 resolution: "toidentifier@npm:1.0.1" @@ -19794,15 +19582,6 @@ __metadata: languageName: node linkType: hard -"unescape-js@npm:^1.0.5": - version: 1.1.4 - resolution: "unescape-js@npm:1.1.4" - dependencies: - string.fromcodepoint: ^0.2.1 - checksum: 97acf60a8f6c170f8a66b48b71f5c56bda728c2ff6b08c3443c5f21635bf5fa38a4265bcfcf46d17cb6ac9bbb8b913a34b1abc5cfe8db5d7cc5c8eecb1817472 - languageName: node - linkType: hard - "unicode-canonical-property-names-ecmascript@npm:^2.0.0": version: 2.0.0 resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.0" @@ -20182,13 +19961,6 @@ __metadata: languageName: node linkType: hard -"vlq@npm:^0.2.1": - version: 0.2.3 - resolution: "vlq@npm:0.2.3" - checksum: 2231d8caeb5b2c1a438677ab029e9a94aa6fb61ab05819c72691b792aea0456dab29576aff5ae29309ee45bad0a309e832dc45173119bca1393f3b87709d8f8d - languageName: node - linkType: hard - "vscode-languageserver-textdocument@npm:^1.0.11": version: 1.0.11 resolution: "vscode-languageserver-textdocument@npm:1.0.11" From 0d4b098770b8e8253b24ad3b590a9daad33e586f Mon Sep 17 00:00:00 2001 From: auvred <61150013+auvred@users.noreply.github.com> Date: Wed, 10 Jul 2024 10:55:30 +0000 Subject: [PATCH 08/12] chore: don't install dependencies in "Semantic breaking change PR" workflow (#9533) --- .github/workflows/semantic-breaking-change-pr.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/semantic-breaking-change-pr.yml b/.github/workflows/semantic-breaking-change-pr.yml index dcae58270de1..46d4627b3fdc 100644 --- a/.github/workflows/semantic-breaking-change-pr.yml +++ b/.github/workflows/semantic-breaking-change-pr.yml @@ -15,7 +15,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: ./.github/actions/prepare-install - uses: ./.github/actions/breaking-pr-check env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From d9dba42e742eeaee2f6cb74afc31e945479749b7 Mon Sep 17 00:00:00 2001 From: auvred <61150013+auvred@users.noreply.github.com> Date: Wed, 10 Jul 2024 17:03:57 +0000 Subject: [PATCH 09/12] chore: revert "chore: don't install dependencies in "Semantic breaking change PR" workflow (#9533)" (#9535) Revert "chore: don't install dependencies in "Semantic breaking change PR" workflow (#9533)" This reverts commit 0d4b098770b8e8253b24ad3b590a9daad33e586f. --- .github/workflows/semantic-breaking-change-pr.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/semantic-breaking-change-pr.yml b/.github/workflows/semantic-breaking-change-pr.yml index 46d4627b3fdc..dcae58270de1 100644 --- a/.github/workflows/semantic-breaking-change-pr.yml +++ b/.github/workflows/semantic-breaking-change-pr.yml @@ -15,6 +15,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: ./.github/actions/prepare-install - uses: ./.github/actions/breaking-pr-check env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 3709c0add6d9cb437aa21e7407f8bc0487e5efeb Mon Sep 17 00:00:00 2001 From: "typescript-eslint[bot]" <53356952+typescript-eslint[bot]@users.noreply.github.com> Date: Fri, 12 Jul 2024 11:45:52 +0930 Subject: [PATCH 10/12] chore: update sponsors (#9545) Co-authored-by: typescript-eslint[bot] --- packages/website/data/sponsors.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/website/data/sponsors.json b/packages/website/data/sponsors.json index 8daf8b72c618..f8e2d086533f 100644 --- a/packages/website/data/sponsors.json +++ b/packages/website/data/sponsors.json @@ -73,7 +73,7 @@ "id": "THANKS.DEV", "image": "https://images.opencollective.com/thanks-dev/ed78b39/logo.png", "name": "THANKS.DEV", - "totalDonations": 178731, + "totalDonations": 190518, "website": "https://thanks.dev" }, { From 8ceca98c75b0290288172b85e3583d313806ce64 Mon Sep 17 00:00:00 2001 From: Abraham Guo Date: Fri, 12 Jul 2024 13:49:46 -0500 Subject: [PATCH 11/12] chore: enable prefer-arrow-callback (#9548) prefer-arrow-callback --- eslint.config.mjs | 1 + packages/website-eslint/src/mock/path.js | 10 +++------- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/eslint.config.mjs b/eslint.config.mjs index 4c259bee01a1..9f64059dbfea 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -207,6 +207,7 @@ export default tseslint.config( { commentPattern: '.*intentional fallthrough.*' }, ], 'one-var': ['error', 'never'], + 'prefer-arrow-callback': 'error', // // eslint-plugin-eslint-comment diff --git a/packages/website-eslint/src/mock/path.js b/packages/website-eslint/src/mock/path.js index abf5e0f2466c..238d8542c79f 100644 --- a/packages/website-eslint/src/mock/path.js +++ b/packages/website-eslint/src/mock/path.js @@ -82,9 +82,7 @@ export function resolve() { // Normalize the path resolvedPath = normalizeArray( - filter(resolvedPath.split('/'), function (p) { - return !!p; - }), + filter(resolvedPath.split('/'), p => !!p), !resolvedAbsolute, ).join('/'); @@ -99,9 +97,7 @@ export function normalize(path) { // Normalize the path path = normalizeArray( - filter(path.split('/'), function (p) { - return !!p; - }), + filter(path.split('/'), p => !!p), !isPathAbsolute, ).join('/'); @@ -124,7 +120,7 @@ export function isAbsolute(path) { export function join() { const paths = Array.prototype.slice.call(arguments, 0); return normalize( - filter(paths, function (p) { + filter(paths, p => { if (typeof p !== 'string') { throw new TypeError('Arguments to path.join must be strings'); } From d5e4c8c810e54e027eccf53b14ed9e41be6dc493 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Sat, 6 Jul 2024 15:36:10 -0400 Subject: [PATCH 12/12] feat(eslint-plugin): [no-floating-promises] disable checkThenables by default for v8 --- .../docs/rules/no-floating-promises.mdx | 4 ---- .../src/rules/no-floating-promises.ts | 2 +- .../tests/rules/no-floating-promises.test.ts | 24 +++++++------------ 3 files changed, 10 insertions(+), 20 deletions(-) diff --git a/packages/eslint-plugin/docs/rules/no-floating-promises.mdx b/packages/eslint-plugin/docs/rules/no-floating-promises.mdx index 6be96809da78..bd814ac63dcd 100644 --- a/packages/eslint-plugin/docs/rules/no-floating-promises.mdx +++ b/packages/eslint-plugin/docs/rules/no-floating-promises.mdx @@ -129,10 +129,6 @@ await createMyThenable(); -:::info -This option is enabled by default in v7 but will be turned off by default in v8. -::: - ### `ignoreVoid` This option, which is `true` by default, allows you to stop the rule reporting promises consumed with void operator. diff --git a/packages/eslint-plugin/src/rules/no-floating-promises.ts b/packages/eslint-plugin/src/rules/no-floating-promises.ts index 4c21c6cfb18c..fe5b0a567a76 100644 --- a/packages/eslint-plugin/src/rules/no-floating-promises.ts +++ b/packages/eslint-plugin/src/rules/no-floating-promises.ts @@ -104,7 +104,7 @@ export default createRule({ { allowForKnownSafeCalls: readonlynessOptionsDefaults.allow, allowForKnownSafePromises: readonlynessOptionsDefaults.allow, - checkThenables: true, + checkThenables: false, ignoreIIFE: false, ignoreVoid: true, }, diff --git a/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts b/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts index e808d9234757..c8e860b7f257 100644 --- a/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts +++ b/packages/eslint-plugin/tests/rules/no-floating-promises.test.ts @@ -770,15 +770,11 @@ createSafePromise(); }, ], }, - { - code: ` -declare const createPromise: () => PromiseLike; -createPromise(); - `, - options: [{ checkThenables: false }], - }, - { - code: ` + ` +declare const createPromiseLike: () => PromiseLike; +createPromiseLike(); + `, + ` interface MyThenable { then(onFulfilled: () => void, onRejected: () => void): MyThenable; } @@ -786,9 +782,7 @@ interface MyThenable { declare function createMyThenable(): MyThenable; createMyThenable(); - `, - options: [{ checkThenables: false }], - }, + `, ], invalid: [ @@ -2104,6 +2098,7 @@ async function test() { ], }, ], + options: [{ checkThenables: true }], }, { code: ` @@ -3586,6 +3581,7 @@ promise; options: [ { allowForKnownSafePromises: [{ from: 'file', name: 'SafeThenable' }], + checkThenables: true, }, ], errors: [ @@ -3962,7 +3958,6 @@ void createPromise(); ], }, ], - options: [{ checkThenables: false }], }, { code: ` @@ -3986,7 +3981,6 @@ void createMyPromise(); ], }, ], - options: [{ checkThenables: false }], }, { code: ` @@ -4014,7 +4008,7 @@ void createMyPromise(); ], }, ], - options: [{ checkThenables: false }], + options: [{ checkThenables: true }], }, ], });