Skip to content

Plugin de importações do Oxlint em alfa

Temos o prazer de anunciar o lançamento em alfa de oxlint --import-plugin, um port de eslint-plugin-import.

O objetivo desse port é eliminar problemas conhecidos do eslint-plugin-import:

O que há neste release?

Este alfa foca em projetos em formato ESM (ECMAScript Modules).

Para aliases de caminho (por exemplo @/foo) via tsconfig.compilerOptions.paths, use --tsconfig:

npx oxlint@latest --tsconfig ./tsconfig.json --import-plugin

Regras ativadas por padrão com npx oxlint@latest --import-plugin:

Regras opcionais com npx oxlint@latest --import-plugin -D nome-da-regra:

Há também melhorias nestas regras; por exemplo, os diagnósticos de no-cycle ficaram mais claros:

 ⚠ eslint-plugin-import(no-cycle): Dependency cycle detected
   ╭─[apps/web/playwright/lib/fixtures.ts:13:42]
12 │ import { createPaymentsFixture } from "../fixtures/payments";
13 │ import { createBookingPageFixture } from "../fixtures/regularBookings";
   ·                                          ─────────────────────────────
14 │ import { createRoutingFormsFixture } from "../fixtures/routingForms";
   ╰────
 help: These paths form a cycle:
       -> ../fixtures/regularBookings - apps/web/playwright/fixtures/regularBookings.ts
       -> ./users - apps/web/playwright/fixtures/users.ts
       -> ../lib/testUtils - apps/web/playwright/lib/testUtils.ts
       -> ./fixtures - apps/web/playwright/lib/fixtures.ts

A lista ainda é modesta, mas, dada a complexidade da ecossistema atual, implementar essas regras e validá-las corretamente exige bastante esforço.

Nos últimos seis meses trabalhamos nas horas vagas e reunimos tudo o que o --import-plugin precisa:

Como ajudar?

Se você mantém projetos (platform engineer) e não dá conta de atualizar ESLint e todos os plugins, pode seguir o exemplo do @brooooooklyn e trocar ESLint por oxlint em todos os projetos.

Se você curte open source e quer contribuir, entre no Discord, veja o plano do linter e issues de progresso ou ajude propondo novas regras que estão em espera.

Se você é líder de engenharia ou quer migrar um projeto para oxlint (330 regras e subindo) para reduzir custo de infra, considere patrocinar para priorizarmos o seu caso.

Lembre-se: o oxlint está sendo impulsionado pela comunidade; com recursos suficientes, podemos levar o --import-plugin a GA nos próximos meses.


Para começar com oxlint, veja o guia de instalação ou saiba mais sobre o projeto oxc.