-
Notifications
You must be signed in to change notification settings - Fork 411
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Atualizar regras de lint e corrigir problemas apontados pelo DeepScan #1629
Conversation
Use ESLint recommended rules and also add new ones.
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Show @Rafatcb! 💪💪💪
Fix some issues highlighted by DeepScan. Some of them do not have a real impact, for example an unnecessary validation, but others do, such as access to a variable that can be undefined.
a2770a1
to
0f7390f
Compare
Aproveitei para corrigir um link inválido no Markdown, que foi identificado pelo Codacy. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bora pro merge?
@aprendendofelipe vamos 😄 |
Em produção! 🚀 |
Mudanças realizadas
O principal motivo para eu ter adicionado o
eslint-plugin-jest
ao projeto é que já vi fazerem um commit contendo um teste com.only
, e eu também quase fiz isso sem querer. Aproveitei para adicionar outras regras que fazem sentido, como erros emconsole.log
, alertas em condicionais em testes (que foi algo debatido no PR #1601), ono-dupe-keys
mencionado no issue #1338 etc.Adicionei duas novas configurações em
extends
(eslint:recommended
eplugin:jest/recommended
), e isso é um trade-off: por um lado, perdemos controle sobre mudanças de regras habilitadas/desabilitadas ao mudar a versão; por outro, ganhamos praticidade em não precisar manter uma lista longa de regras no.eslintrc
e estamos usando "padrões recomendados".Um exemplo de erro que essa modificação de configuração já pegou foi o
throw error
que estava fora docatch
na funçãofindUserByUsernameOrEmail
, no arquivo/models/recovery.js
.Precisei modificar algumas expressões regulares por causa do escape desnecessário (
no-useless-escape
), e tem essa resposta do Stack Overflow como material de apoio para entender as alterações. Se, mesmo assim, não se sentirem confortáveis com essas mudanças, posso desabilitar a regra no arquivoremove-markdown.js
, que é o arquivo que mais foi impactado, ou desabilitar de forma global (não acho recomendável).Aproveitei para atualizar dependências relacionadas ao processo de lint.
Resolve #1338 — ao mexer nas regras do ESLint eu acabei resolvendo algumas coisas desse issue, então resolvi cuidar dele por completo.
Tipo de mudança
Checklist: