Skip to content
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

feat(linter): implement eslint-plugin-promise/no-return-in-finally, prefer-await-to-then rule #4318

Merged
merged 4 commits into from
Aug 10, 2024

Conversation

jelly
Copy link
Contributor

@jelly jelly commented Jul 17, 2024

Part of #4252

Copy link

graphite-app bot commented Jul 17, 2024

Your org has enabled the Graphite merge queue for merging into main

Add the label “merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. Or use the label “hotfix” to add to the merge queue as a hot fix.

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

@github-actions github-actions bot added the A-linter Area - Linter label Jul 17, 2024
Copy link

codspeed-hq bot commented Jul 17, 2024

CodSpeed Performance Report

Merging #4318 will not alter performance

Comparing jelly:eslint-plugin-promise-part-2 (a63ec37) with main (c519295)

Summary

✅ 29 untouched benchmarks

@jelly
Copy link
Contributor Author

jelly commented Jul 17, 2024

CodSpeed Performance Report

Merging #4318 will degrade performances by 3.29%

Comparing jelly:eslint-plugin-promise-part-2 (3d385b6) with main (5d17675)

Summary

❌ 2 regressions ✅ 30 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Benchmark main jelly:eslint-plugin-promise-part-2 Change
linter[cal.com.tsx] 776.4 ms 801.8 ms -3.17%
linter[checker.ts] 1.4 s 1.5 s -3.29%

So I assume this is due to a new rule being slow?

@DonIsaac DonIsaac added the C-enhancement Category - New feature or request label Jul 17, 2024
@Boshen
Copy link
Member

Boshen commented Jul 30, 2024

@mysteryven Would you like to help and land this?

@jelly
Copy link
Contributor Author

jelly commented Jul 30, 2024

@mysteryven Would you like to help and land this?

I intend to handle the review comments I got, but first I want to land #4109 (comment)

@jelly
Copy link
Contributor Author

jelly commented Aug 1, 2024

@mysteryven Would you like to help and land this?

I intend to handle the review comments I got, but first I want to land #4109 (comment)

Worked on this today a bit, split up the easiest rule into a separate PR as that had very few comments. Applied the two comments in this PR there.

#4598

@jelly jelly force-pushed the eslint-plugin-promise-part-2 branch 2 times, most recently from b63b4c4 to 3956fe1 Compare August 1, 2024 17:54
@jelly jelly force-pushed the eslint-plugin-promise-part-2 branch from f2eb608 to a72bc75 Compare August 9, 2024 16:17
@jelly jelly force-pushed the eslint-plugin-promise-part-2 branch from a72bc75 to c36d36e Compare August 9, 2024 16:20
Copy link
Member

@mysteryven mysteryven left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, jelly, thank you, we want to merge your PR!

no_return_in_finally.rs mark as nursery now, but feel free to continue working on it any time you like. We are really appreciate your work and contributions all the time!

@mysteryven mysteryven changed the title Eslint plugin promise part 2 feat(linter): implement eslint-plugin-promise/no-return-in-finally, prefer-await-to-then rule Aug 10, 2024
@mysteryven mysteryven changed the title feat(linter): implement eslint-plugin-promise/no-return-in-finally, prefer-await-to-then rule feat(linter): implement eslint-plugin-promise/no-return-in-finally, prefer-await-to-then rule Aug 10, 2024
@mysteryven mysteryven merged commit 5992b75 into oxc-project:main Aug 10, 2024
27 checks passed
@oxc-bot oxc-bot mentioned this pull request Aug 12, 2024
Boshen added a commit that referenced this pull request Aug 12, 2024
## [0.7.1] - 2024-08-12

### Features

- 3d40528 linter: Add fix emoji to rules table and doc pages (#4715)
(DonIsaac)
- d2734f3 linter: Start fixer for no-unused-vars (#4718) (DonIsaac)
- 070ae53 linter: Add fixer for unicorn prefer-string-replace-all
(#4801) (camc314)
- b3c3125 linter: Overhaul unicorn/no-useless-spread (#4791) (DonIsaac)
- 5992b75 linter: Implement `eslint-plugin-promise/no-return-in-finally,
prefer-await-to-then` rule (#4318) (Jelle van der Waa)
- b259f47 linter: Add fixer for unicorn/no-length-as-slice-end (#4780)
(heygsc)
- abd83fa linter: Add fixer for jsx_ally/no_aria_hidden_on_focusable
(#4772) (heygsc)
- b20e335 linter: Add fixer for eslint/no-eq-null (#4758) (heygsc)
- 2f6c3b9 linter: Add fixer for eslint/no-compare-neg-zero (#4748)
(heygsc)
- eaddc8f linter: Add fixer for eslint/func_names (#4714) (DonIsaac)
- 80557a9 linter: Add fixer for eslint/for-direction (#4679) (heygsc)
- c3c5766 linter/eslint-plugin-promise: Implement valid-params (#4598)
(Jelle van der Waa)
- c509a21 linter/eslint-plugin-vitest: Implement prefer-to-be-falsy
(#4770) (dalaoshu)
- 41f861f linter/eslint-plugin-vitest: Implement prefer-to-be-truthy
(#4755) (dalaoshu)
- cc922f4 vscode: Provide config's schema to oxlint config files (#4826)
(Don Isaac)
- f629514 website: Auto-generate rule docs pages (#4640) (DonIsaac)

### Bug Fixes

- b22ed45 linter: Improve prefer_namespace_keyword rule (#4751) (Burlin)
- db68a6c linter: Fixer for eslint/for-direction (#4727) (heygsc)
- 6273994 linter: Block in eslint/no_cond_assign (#4721) (heygsc)
- b9d6aa5 linter: Fix false positives in no-confusing-non-null-assertion
(#4665) (Renée)
- cbf08d2 linter: Skip no-multi-str on jsx attributes (#4666) (heygsc)
- a6f9f96 linter: No unused errors should be warnings (Boshen)
- 7345bc9 linter/func-names: Handle ts accessibility when reporting
missing names (#4713) (DonIsaac)

### Performance

- d191823 linter: Optmize allocations in jest fn parsing (#4787) (lucab)
- e3abdfa linter: Reduce String allocations and clones (#4673)
(DonIsaac)

### Documentation

- 4b7dfd6 linter: Correct docs for no-unused-vars (#4716) (Don Isaac)

### Refactor

- 096ac7b linter: Clean up jsx-a11y/anchor-is-valid (#4831) (DonIsaac)
- 15a0fd4 linter: Use Option to reduce nested level in
`eslint/getter-return` (#4814) (IWANABETHATGUY)
- 63f274c linter: Simplify NoObjCalls resolution logic (#4765) (lucab)
- 6708680 linter: Replace Windows-style line breaks with Unix-style in
test fixture (#4768) (overlookmotel)
- e285903 linter: Clean up eslint/func_names (#4710) (DonIsaac)

### Testing

- 8f2a566 linter: Ensure rule docs have valid syntax (#4644) (DonIsaac)
- 4dd29db linter: Add fixer test for unicorn/no-zero-fractions (#4783)
(heygsc)

Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>
@jelly jelly deleted the eslint-plugin-promise-part-2 branch August 14, 2024 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-linter Area - Linter C-enhancement Category - New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants