Commit 413041a
authored
chore: migrate to oxlint (#19134)
Replaces eslint with oxlint, we had an outdated Eslint 8.x setup anyways
and we needed to either upgrade it or move to something else. Oxlint
brings so much speed gains given how slow linting is, and almost no one
is running it locally project wide because of how slow it is.
The changes can look like a lot but most of it is just:
- Comment Replacement due to rule name changes.
- Config file swapping (from `.eslintrc.js` to `.oxlintrc.json`
I downgraded a few rules, but they will be cleaned up in a follow up PR
in
## Benchmarks
### Overall
| Metric | Before (ESLint) | After (Oxlint) | Speedup |
|--------|-----------------|----------------|---------|
| CI Time | ~6 minutes | ~10 seconds | **36x**\* |
Note that:
- ~Lerna adds a considerable overhead that eats a lot of the gains we
can potentially get.~ We removed Lerna and also we will just lint the
entire project rather than go package by package.
- ~CI time is hogged by building types step~ Not relevant anymore,
typeaware mode works wonderfully after
[oxc-project/tsgolint#739](oxc-project/tsgolint#739)
was merged.
#### SDK Packages
| Package | Files | ESLint | Oxlint | Speedup |
| ----------------- | ----- | ------ | ------ | -------- |
| `core` | 365 | 9.6s | 53ms | **181x** |
| `browser` | 136 | 6.8s | 55ms | **124x** |
| `node` | 105 | 6.1s | 64ms | **95x** |
| `node-core` | 101 | 6.2s | 56ms | **111x** |
| `nextjs` | 181 | 10.9s | 79ms | **138x** |
| `sveltekit` | 63 | 6.4s | 71ms | **90x** |
| `opentelemetry` | 58 | 4.3s | 52ms | **83x** |
| `cloudflare` | 43 | 3.8s | 45ms | **84x** |
| `remix` | 38 | 7.1s | 42ms | **169x** |
| `react` | 39 | 6.5s | 49ms | **133x** |
| `feedback` | 38 | 3.8s | 48ms | **79x** |
| `replay-internal` | 152 | 5.6s | 38ms | **147x** |
| `vue` | 24 | 4.0s | 48ms | **83x** |
| `svelte` | 15 | 4.0s | 52ms | **77x** |
| `angular` | 12 | 3.7s | 37ms | **100x** |
#### Dev Packages
| Package | Files | ESLint | Oxlint | Speedup |
| ------------------------------ | ----- | -------- | ------ | --------
|
| `browser-integration-tests` | 778 | 10.8s | 209ms | **52x** |
| `node-integration-tests` | 605 | 9.0s | 291ms | **31x** |
| `node-core-integration-tests` | 268 | 6.2s | 74ms | **84x** |
| `e2e-tests` | 10 | 2.6s | 44ms | **59x** |
| `cloudflare-integration-tests` | 27 | 2.5s | 35ms | **71x** |
| `test-utils` | 5 | 2.4s | 21ms | **114x** |
| `rollup-utils` | 13 | ❌ error | 22ms | N/A |
| `bundler-tests` | 3 | ❌ error | 51ms | N/A |
---
closes #192221 parent 5e5487b commit 413041a
File tree
212 files changed
+1137
-1498
lines changed- .github/workflows
- dev-packages
- browser-integration-tests
- bundler-tests
- clear-cache-gh-action
- cloudflare-integration-tests
- e2e-tests
- test-applications
- create-remix-app-express-vite-dev
- create-remix-app-express
- create-remix-app-v2-non-vite
- create-remix-app-v2
- hydrogen-react-router-7
- remix-hydrogen
- external-contributor-gh-action
- node-core-integration-tests
- node-integration-tests
- suites/tracing/tedious
- node-overhead-gh-action
- rollup-utils
- size-limit-gh-action
- test-utils
- packages
- angular
- astro
- aws-serverless
- browser-utils
- src/metrics/web-vitals/lib
- browser
- bun
- cloudflare
- core
- src
- integrations/mcp-server
- utils
- test/lib
- deno
- ember
- types
- eslint-plugin-sdk
- feedback
- gatsby
- google-cloud-serverless
- hono
- integration-shims
- nestjs
- nextjs
- src
- client/routing
- config
- loaders
- polyfills
- edge
- server
- node-core
- src
- cron
- integrations
- node-native
- node
- src/integrations/tracing/fastify/fastify-otel
- nuxt
- src/vite
- opentelemetry
- profiling-node
- react-router
- react
- remix
- src/client
- replay-canvas
- replay-internal
- replay-worker
- solidstart
- src/config
- solid
- sveltekit
- src
- server-common/integrations
- vite
- svelte
- tanstackstart-react
- tanstackstart
- types
- vercel-edge
- vue
- wasm
- scripts
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
212 files changed
+1137
-1498
lines changedThis file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
308 | 308 | | |
309 | 309 | | |
310 | 310 | | |
311 | | - | |
| 311 | + | |
312 | 312 | | |
313 | 313 | | |
314 | 314 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
23 | | - | |
| 23 | + | |
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| |||
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
14 | | - | |
| 13 | + | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
This file was deleted.
0 commit comments