Openlibrary: Vamos lintar nosso JavaScript com eslint!

Criado em 17 out. 2018  ·  5Comentários  ·  Fonte: internetarchive/openlibrary

O Stylelint nos oferece proteção contra vários problemas de CSS. Vamos fazer o mesmo com nosso JS.
O eslint é o mais maduro e fornece uma lista de regras que podemos usar se julgarmos necessário.

npm install eslint --save-dev

Em package.json, adicione um novo comando

"lint:js": "eslint openlibrary/plugins/openlibrary/js/"

Adicione um .eslintrc.json

{
    "root": true,
    "env": {},
    "globals": {
    },
    "rules": {
        "no-extra-semi": "warn"
    }
}

Definiremos os erros para avisar por enquanto e assim que a configuração for mesclada, devemos coordenar com alguém para executar as correções e mesclar para evitar quaisquer conflitos de mesclagem!

  • [] npm run lint: js me mostrará avisos relacionados à regra "no-extra-semi".
  • [] "npm run lint: js " acontece quando eu executo o "npm run test"
  • [] Não corrija nenhum erro como parte dessa mudança!
Good First Issue Linting JavaScript 1 hacktoberfest

Todos 5 comentários

Oi. Você pode me designar para resolver esse problema?

Pergunta: por que não usar uma das predefinições para eslint ? Como https://standardjs.com ou https://github.com/airbnb/javascript

Eu gostaria de fazer isso a longo prazo, mas o javascript está em péssimo estado aplicar tal preset seria muito confuso (revisão de código, conflitos de rebase) e trabalho manual (a maior parte do preset não pode ser corrigido automaticamente). Acho que adicionar regras manualmente nos ajuda a atacá-lo pouco a pouco de uma forma coesa e educacional (aprendemos sobre os problemas em nosso código pouco a pouco).

Achei que poderíamos usar o linting para resolver os problemas mais comuns e urgentes (os lints que podem causar erros no código) e, em nosso lazer, aplicar uma predefinição (de nossa escolha) mais tarde.

Isso faz sentido?

Claro, é verdade. A forma do código pode ser muito ruim.

Quando este PR for mesclado, poderei corrigir alguns problemas com linting, basta mencioná-los.
Começará com no-extra-semi por exemplo;)

@tamtamchik eu posso criar um problema mais tarde, mas qualquer coisa que esteja em "possíveis erros" e autofixable é um jogo justo.

Devemos coordenar com @mekarpeles para executar e confirmar os autofixes e cometer um erro de eslint em vez de avisar.

Eu quero que nos livremos dos frutos mais fáceis!

Esta página foi útil?
0 / 5 - 0 avaliações