Skip to content

chore: Migrate from ESLint to Oxlint [internal]#849

Open
fnesveda wants to merge 1 commit into
masterfrom
chore/migrate-to-oxlint
Open

chore: Migrate from ESLint to Oxlint [internal]#849
fnesveda wants to merge 1 commit into
masterfrom
chore/migrate-to-oxlint

Conversation

@fnesveda
Copy link
Copy Markdown
Member

@fnesveda fnesveda commented May 15, 2026

We are migrating from ESLint to Oxlint, as it is a lot faster. We've already migrated apify-core,
where it resulted in a ~50x speedup, and now we're migrating other repositories for consistency.

The migration itself is super simple:

  1. add oxlint, oxlint-tsgolint and @apify/oxlint-config to package.json
  2. remove eslint, @apify/eslint-config and any other eslint-related packages from package.json
  3. add oxlint.config.ts which just exports defineConfig({ options: { typeAware: true } }) from the shared config (unless any overrides are needed)
  4. remove eslint.config.ts
  5. replace eslint usage in scripts with oxlint
  6. call npm run lint to verify everything works, and fix any issues that come up

There are some additional steps that might be necessary, since Oxlint catches some issues that ESLint didn't.

  1. Update @apify/tsconfig package to get rid of unsupported config values
  2. Fix any TSConfig issues that come up after the update (e.g. unsupported values of module and moduleResolution)
  3. Fix any Typescript issues that appear afterwards

This PR does just that.

close: #840

@github-actions github-actions Bot added the t-management Issues with this label belong to the CTO or engineering managers. label May 15, 2026
@fnesveda fnesveda added the adhoc Ad-hoc unplanned task added during the sprint. label May 15, 2026
@fnesveda fnesveda requested review from MQ37 and jirispilka May 15, 2026 13:42
@fnesveda fnesveda linked an issue May 15, 2026 that may be closed by this pull request
Copy link
Copy Markdown
Collaborator

@jirispilka jirispilka left a comment

Choose a reason for hiding this comment

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

Thanks Franto!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint. t-management Issues with this label belong to the CTO or engineering managers.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate from NPM to PNPM Migrate from ESLint to Oxlint

3 participants