Skip to content

chore/oxlint#290

Merged
Ryan Bower (R-Bower) merged 80 commits into
mainfrom
chore/oxlint
Jun 11, 2026
Merged

chore/oxlint#290
Ryan Bower (R-Bower) merged 80 commits into
mainfrom
chore/oxlint

Conversation

@R-Bower

@R-Bower Ryan Bower (R-Bower) commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

While this PR was originally intended to replace ESLint with Oxlint, the tooling simply isn't ready yet. There are tons of bugs with the oxc intellij and vscode plugins, particularly with pnpm and WSL2. The autofix experience is also subpar. The tooling needs more time in the oven, but I believe it will eventually get there.

Instead of scrapping all the work, I've decided to update our ESLint configs to align with Oxlint and Oxfmt. Prettier has been replaced entirely with eslint-plugin-oxfmt. I've adjusted the configs to align (mostly) with oxlint defaults, disabling pedantic / irrelevant rules where appropriate.

When the time comes to swap to oxlint, it should mostly be a simple config swap + removal of ESLint. Until then, we'll at least have an expanded, modern ruleset for our main configs.

Since this is a breaking change for each of our config packages that relied on prettier, I took the opportunity to clean up the exported configs in alignment with best practices.

closes #114

@R-Bower Ryan Bower (R-Bower) force-pushed the chore/oxlint branch 5 times, most recently from f6f48b4 to 67f48be Compare June 9, 2026 07:00
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
…ain config

- merged performance config into styleGuide and recommended configs
- enabled eslint and promise rules for parity with default oxlint
- `recommended` now exports a single flat config object instead of an array. Consumers should update usages from:

```js
extends: [...quiEslintTs.configs.recommended]
```

to:

```js
extends: [quiEslintTs.configs.recommended]
```

This keeps the same recommended TypeScript rules while matching the config shape used by the other ESLint config packages.

Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
The base config has been moved into each config.

Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Only two configs are exported now: typescriptRecommended and templateRecommended

Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
Signed-off-by: Ryan Bower <rbower@qti.qualcomm.com>
@R-Bower Ryan Bower (R-Bower) merged commit db2775e into main Jun 11, 2026
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

update @qualcomm-ui/eslint-config-react

1 participant