-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
[array-type] Incorrect fix when using an Array of arrow functions with rest parameters #4756
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Same story with us not handling precedence correctly. We can reuse our new functions to help fix this. |
The title of this report may be wrong. The issue seems to be more with the type of an array of a constructor that takes a rest parameter:
I don't see the problem occurring for an array of functions:
|
@bradharms correct, issue is present for type constructors |
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint) | devDependencies | minor | [`5.23.0` -> `5.25.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/5.23.0/5.25.0) | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint) | devDependencies | minor | [`5.23.0` -> `5.25.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/5.23.0/5.25.0) | --- ### Release Notes <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v5.25.0`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#​5250-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5240v5250-2022-05-17) [Compare Source](typescript-eslint/typescript-eslint@v5.24.0...v5.25.0) ##### Bug Fixes - **eslint-plugin:** \[typedef] stop enforcing rule for assignment expressions ([#​4958](typescript-eslint/typescript-eslint#4958)) ([04a216c](typescript-eslint/typescript-eslint@04a216c)) - **eslint-plugin:** strict config should not extend recommended ([#​5005](typescript-eslint/typescript-eslint#5005)) ([05d71c2](typescript-eslint/typescript-eslint@05d71c2)) - **website:** correct Presets link to be Configs ([#​5004](typescript-eslint/typescript-eslint#5004)) ([e18e91c](typescript-eslint/typescript-eslint@e18e91c)) ##### Features - **eslint-plugin:** \[no-empty-function] new allow option overrideMethods ([#​4923](typescript-eslint/typescript-eslint#4923)) ([13c05ae](typescript-eslint/typescript-eslint@13c05ae)) - **eslint-plugin:** deprecate `no-duplicate-imports` in favour of `import/no-duplicates` ([#​4973](typescript-eslint/typescript-eslint#4973)) ([1d2e41a](typescript-eslint/typescript-eslint@1d2e41a)) - update to TypeScript 4.7-rc ([#​4829](typescript-eslint/typescript-eslint#4829)) ([6fe783c](typescript-eslint/typescript-eslint@6fe783c)) ### [`v5.24.0`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#​5240-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5230v5240-2022-05-16) [Compare Source](typescript-eslint/typescript-eslint@v5.23.0...v5.24.0) ##### Bug Fixes - **eslint-plugin:** \[array-type] in fixer add missing parens for constructor types [#​4756](typescript-eslint/typescript-eslint#4756) ([#​4971](typescript-eslint/typescript-eslint#4971)) ([0377070](typescript-eslint/typescript-eslint@0377070)) ##### Features - **eslint-plugin:** Add BigInt object type to default ban-types list ([#​4970](typescript-eslint/typescript-eslint#4970)) ([1867728](typescript-eslint/typescript-eslint@1867728)) - **eslint-plugin:** add new 'strict' config ([#​4706](typescript-eslint/typescript-eslint#4706)) ([4a500b2](typescript-eslint/typescript-eslint@4a500b2)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/parser)</summary> ### [`v5.25.0`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#​5250-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5240v5250-2022-05-17) [Compare Source](typescript-eslint/typescript-eslint@v5.24.0...v5.25.0) **Note:** Version bump only for package [@​typescript-eslint/parser](https://github.com/typescript-eslint/parser) ### [`v5.24.0`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#​5240-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5230v5240-2022-05-16) [Compare Source](typescript-eslint/typescript-eslint@v5.23.0...v5.24.0) **Note:** Version bump only for package [@​typescript-eslint/parser](https://github.com/typescript-eslint/parser) </details> --- ### Configuration 📅 **Schedule**: At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). Co-authored-by: cabr2-bot <[email protected]> Reviewed-on: https://codeberg.org/Calciumdibromid/CaBr2/pulls/1357 Reviewed-by: 6543 <[email protected]> Co-authored-by: Calciumdibromid Bot <[email protected]> Co-committed-by: Calciumdibromid Bot <[email protected]>
Repro
Expected Result
Actual Result
The lack of parentheses changes the type to be "a function that returns void[]" rather than "an array of functions that return void"
Versions
@typescript-eslint/eslint-plugin
5.17.0
@typescript-eslint/parser
5.17.0
TypeScript
4.4.4
ESLint
8.8.0
node
8.1.0
The text was updated successfully, but these errors were encountered: