Skip to content

Comments

fix(linter): support more cases for no_redundant_constructor_init#9364

Merged
Boshen merged 3 commits intooxc-project:mainfrom
BenShelton:improve-no-redundant-constructor-init
Feb 27, 2025
Merged

fix(linter): support more cases for no_redundant_constructor_init#9364
Boshen merged 3 commits intooxc-project:mainfrom
BenShelton:improve-no-redundant-constructor-init

Conversation

@BenShelton
Copy link
Contributor

Follow-up from #9299

As pointed out in discussions there, the initial implementation doesn't handle assignments nested in blocks as only the body's statements were being checked.

This instead checks for any references to each public param, checks it is a read (which it would be in the right-side of an assignment) and then if it's part of an assignment to this.

Adds tests for these new cases, previous tests still pass.

@graphite-app
Copy link
Contributor

graphite-app bot commented Feb 25, 2025

How to use the Graphite Merge Queue

Add either label to this PR to merge it via the merge queue:

  • 0-merge - adds this PR to the back of the merge queue
  • hotfix - for urgent hot fixes, skip the queue and merge this PR next

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

@github-actions github-actions bot added A-linter Area - Linter C-bug Category - Bug labels Feb 25, 2025
@codspeed-hq
Copy link

codspeed-hq bot commented Feb 25, 2025

CodSpeed Performance Report

Merging #9364 will not alter performance

Comparing BenShelton:improve-no-redundant-constructor-init (7a27c55) with main (c14afea)

Summary

✅ 33 untouched benchmarks

@Boshen Boshen merged commit 0217ebb into oxc-project:main Feb 27, 2025
26 checks passed
Boshen added a commit that referenced this pull request Mar 4, 2025
## [0.15.13] - 2025-03-04

### Features

- 7bb0121 linter: Add `react/no-namespace` (#9404) (Mikhail Baev)
- 0a7ca20 linter: Support allowable method diagnostic for
eslint/no-console (#9454) (Boshen)
- d99bc51 linter: Add import/no-absolute-path rule (#9415) (yefan)
- 8c71590 linter: Add import/no-mutable-exports rule (#9434) (yefan)
- b65f8a5 linter: Add `promise/no-nesting` (#9345) (Tom)
- d38e6de linter: Add `eslint/no-spaced-func` (#9360) (Tom)
- 25392de linter: Add eslint/operator-assignment rule (#9208) (yefan)
- bf77167 linter: Add `curly` rule (#8123) (Yuichiro Yamashita)
- e3b6eeb linter: Add `unicorn/consistent-date-clone` (#9346) (Amol
Bhave)
- 5ee2cab linter: Improve no_invalid_fetch_options (#9347)
(Brooooooklyn)
- 4ad328b linter: Add oxc/no-redundant-constructor-init (#9299) (Ben
Jones)

### Bug Fixes

- c4624a6 linter: Fix panic in `import/no-absolute-path` (#9500)
(camc314)
- 4b0327b linter: False positive in `eslint/curly` (#9471) (Kevin Deng
三咲智子)
- 8804555 linter: Skip `no-absolute-path` tests on windows (#9435)
(Cameron)
- 06fe76d linter: Rule `no-restricted-imports` use right span for
exports statements (#9442) (Sysix)
- 3da3565 linter: Rule `unicorn/no-invalid-fetch-options` (#9416) (Tom)
- 85fbe8c linter: Rule `eslint/radix` look into globals config (#9407)
(Sysix)
- 1113e3b linter: Rule `eslint/no-object-constructor` look into globals
config (#9406) (Sysix)
- 0217ebb linter: Support more cases for no_redundant_constructor_init
(#9364) (Ben Jones)

### Documentation

- 24850e7 linter: Add example of how configure rule (#9469) (Cédric
DIRAND)
- acb1e2c linter: Add end code tag on rule doc (#9470) (Cédric DIRAND)
- d43b456 linter: Add full documentation to rule `no-restricted-imports`
(#9440) (Sysix)

### Refactor

- ffec3f6 linter: Improve `eslint/no-new` (#9423) (Tom)
- 7c27f10 linter: Move rule `no-restricted-imports` to category
`restriction` (#9443) (Sysix)
- 7e118a3 linter: Improve `typescript/explicit-function-return-type`
(#9439) (Tom)
- 5318cf2 linter: Improve `eslint/no-spaced-func` (#9419) (shulaoda)
- 802f00e linter: Use the `javascript-globals` crate (#9412) (Boshen)
- bff83c9 linter: Improve `eslint/no-unsafe-negation` (#9362) (dalaoshu)
- 228bf99 linter: Improve `unicorn/empty-brace-spaces` (#9341)
(dalaoshu)
- 55d071b linter: Improve `unicorn/consistent-existence-index-check`
(#9339) (dalaoshu)
- 17acece linter: Improve `eslint/no-template-curly-in-string` (#9090)
(dalaoshu)

Co-authored-by: Boshen <[email protected]>
Boshen pushed a commit that referenced this pull request Mar 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-linter Area - Linter C-bug Category - Bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants