Análise multiarquivo
Permite que regras usem informação do projeto inteiro (grafo de módulos) em vez de analisar cada arquivo isolado.
Desempenho e arquitetura
O ESLint avalia regras por arquivo e não oferece grafo de projeto nativo. Plugins como eslint-plugin-import precisam reconstruir resolução e grafo fora do núcleo. Projetos relatam dezenas de segundos ou mais de um minuto em import/no-cycle em repositórios grandes.
O Oxlint implementa análise multiarquivo no motor: lint e construção do grafo em paralelo, parse e resolução compartilhados — import/no-cycle comparável costuma levar poucos segundos.
Habilitar o plugin import
É preciso habilitar o plugin import e pelo menos uma regra import/*. Exemplo na seção seguinte.
Ciclos com import/no-cycle
import/no-cycle detecta dependências circulares.
Ciclos:
- obscurecem a direção das dependências
- dificultam refatoração
- podem deixar valores
undefinedpor ordem de avaliação
{
"$schema": "./node_modules/oxlint/configuration_schema.json",
"plugins": ["import"],
"rules": {
"import/no-cycle": ["error", { "maxDepth": 3 }]
}
}import { defineConfig } from "oxlint";
export default defineConfig({
plugins: ["import"],
rules: {
"import/no-cycle": ["error", { maxDepth: 3 }],
},
});Aliases de caminho do TypeScript
Com regras import/*, o Oxlint descobre tsconfig.json e resolve aliases (compilerOptions.paths).