Skip to content

Comments

feat(linter): add no-promise-in-callback#7307

Merged
Boshen merged 3 commits intooxc-project:mainfrom
no-yan:feat/no-promise-in-callback
Nov 22, 2024
Merged

feat(linter): add no-promise-in-callback#7307
Boshen merged 3 commits intooxc-project:mainfrom
no-yan:feat/no-promise-in-callback

Conversation

@no-yan
Copy link
Contributor

@no-yan no-yan commented Nov 16, 2024

related: #4655

This PR implements a rule to detect Promises inside error-first callbacks, preventing the mixed usage of callbacks and Promises.

Example of problematic code:

a(function(err) { doThing().then(a) });
                  ^^^^^^^^^^^^^^

Original implementation

@graphite-app
Copy link
Contributor

graphite-app bot commented Nov 16, 2024

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

Add the label “0-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 A-linter Area - Linter C-enhancement Category - New feature or request labels Nov 16, 2024
@codspeed-hq
Copy link

codspeed-hq bot commented Nov 16, 2024

CodSpeed Performance Report

Merging #7307 will not alter performance

Comparing no-yan:feat/no-promise-in-callback (169fd16) with main (cf99be0)

Summary

✅ 30 untouched benchmarks

@Boshen Boshen requested review from camc314 and camchenry November 21, 2024 08:13
Copy link
Member

@camchenry camchenry left a comment

Choose a reason for hiding this comment

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

Nice work!

@Boshen Boshen merged commit 4ad26b9 into oxc-project:main Nov 22, 2024
@no-yan no-yan deleted the feat/no-promise-in-callback branch November 22, 2024 07:10
Boshen added a commit that referenced this pull request Nov 23, 2024
## [0.13.1] - 2024-11-23

### Features

- 4ad26b9 linter: Add `no-promise-in-callback` (#7307) (no-yan)
- 9558087 oxlint: Auto detect config file in CLI (#7348) (Alexander S.)

### Bug Fixes

- 8507464 linter: Hanging when source has syntax/is flow (#7432)
(Cameron)
- e88cf1b linter: Make `overrides` globs relative to config path (#7407)
(camchenry)
- 9002e97 linter: Add proper support for findIndex and findLastIndex for
`unicorn/prefer-array-some` (#7405) (Dmitry Zakharov)

### Documentation

- 6730e3e linter: Add more examples for `unicorn/prefer-array-some`
(#7411) (Dmitry Zakharov)

### Refactor

- 6c0d31b linter: Remove useless `const` declaration (#7430) (Song Gao)
- c8adc46 linter/no-unused-vars: Improve implementation to remove using
SymbolFlags::Export (#7412) (Dunqing)
- c90537f linter/only-used-in-recursion: Improve implementation to
remove using SymbolFlags::Export (#7413) (Dunqing)

### Testing

- 779f479 editor: Check if workspace configuration is updated (#7403)
(Alexander S.)

Co-authored-by: Boshen <[email protected]>
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