feat(eslint-plugin): [no-this-alias] report on assignment expressions#4718
feat(eslint-plugin): [no-this-alias] report on assignment expressions#4718bradzacher merged 2 commits intotypescript-eslint:mainfrom juank1809:no-this-alias-assignment
Conversation
|
Thanks for the PR, @juank1809! typescript-eslint is a 100% community driven project, and we are incredibly grateful that you are contributing to that community. The core maintainers work on this in their personal time, so please understand that it may not be possible for them to review your work immediately. Thanks again! 🙏 Please, if you or your company is finding typescript-eslint valuable, help us sustain the project by sponsoring it transparently on https://opencollective.com/typescript-eslint. As a thank you, your profile/company logo will be added to our main README which receives thousands of unique visitors per day. |
❌ Deploy Preview for typescript-eslint failed.
|
Codecov Report
@@ Coverage Diff @@
## main #4718 +/- ##
==========================================
+ Coverage 86.97% 94.39% +7.41%
==========================================
Files 5 151 +146
Lines 215 8189 +7974
Branches 60 2645 +2585
==========================================
+ Hits 187 7730 +7543
- Misses 22 258 +236
- Partials 6 201 +195
Flags with carried forward coverage won't be shown. Click here to find out more. |
JoshuaKGoldberg
left a comment
There was a problem hiding this comment.
This makes sense, thanks for the change! I'm leaving some comments in the linked issue that might change things, so I'll defer to @bradzacher on merging.
Co-authored-by: Josh Goldberg <me@joshuakgoldberg.com>
bradzacher
left a comment
There was a problem hiding this comment.
this LGTM! Thanks for adding the extra handling!
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint) | devDependencies | minor | [`5.17.0` -> `5.18.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/5.17.0/5.18.0) | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint) | devDependencies | minor | [`5.17.0` -> `5.18.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/5.17.0/5.18.0) | --- ### Release Notes <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v5.18.0`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#​5180-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5170v5180-2022-04-04) [Compare Source](typescript-eslint/typescript-eslint@v5.17.0...v5.18.0) ##### Bug Fixes - **eslint-plugin:** method-signature-style respect getter signature ([#​4777](typescript-eslint/typescript-eslint#4777)) ([12dd670](typescript-eslint/typescript-eslint@12dd670)) ##### Features - **eslint-plugin:** \[no-shadow] ignoreOnInitialization option ([#​4603](typescript-eslint/typescript-eslint#4603)) ([068ea9b](typescript-eslint/typescript-eslint@068ea9b)) - **eslint-plugin:** \[no-this-alias] report on assignment expressions ([#​4718](typescript-eslint/typescript-eslint#4718)) ([8329498](typescript-eslint/typescript-eslint@8329498)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/parser)</summary> ### [`v5.18.0`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#​5180-httpsgithubcomtypescript-eslinttypescript-eslintcomparev5170v5180-2022-04-04) [Compare Source](typescript-eslint/typescript-eslint@v5.17.0...v5.18.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 <cabr2.help@gmail.com> Reviewed-on: https://codeberg.org/Calciumdibromid/CaBr2/pulls/1282 Reviewed-by: 6543 <6543@noreply.codeberg.org> Co-authored-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org> Co-committed-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
PR Checklist
thisto local variable #4690Overview
The rule 'no-this-alias' had no logic of how to manage a reassignment of a variable already declared, it was only working in a variable declaration. This code adds an AssignmentExpression node to be handled and grabs the id of the Identifier of either AssigmentExpression or VariableDeclarator.