file-level noqa should raise an error if specific errors are provided (to avoid confusion)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Empieza por localizar dónde Flake8 analiza los comentarios # flake8: noqa a nivel de archivo y dónde se prueban los errores de configuración relacionados. Reproduce el ejemplo usando flake8 y después añade cobertura para un noqa a nivel de archivo con un código de error específico; se considera terminado cuando ese uso incorrecto produce un error claro en lugar de ignorar silenciosamente todos los errores.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
how did you install flake8?
pip install flake8
unmodified output of flake8 --bug-report
{
"platform": {
"python_implementation": "CPython",
"python_version": "3.10.7",
"system": "Linux"
},
"plugins": [
{
"plugin": "mccabe",
"version": "0.7.0"
},
{
"plugin": "pycodestyle",
"version": "2.10.0"
},
{
"plugin": "pyflakes",
"version": "3.0.1"
}
],
"version": "6.0.0"
}
describe the problem
what I expected to happen
I'm seeing developers using the file-level-noqa ignore wrongly from time to time, providing specific errors like # flake8: noqa: E712. What's confusing is that it gives the impression that it works as it doesn't throw that error anymore but the developers' understanding is incorrect (all errors are ignore). I understood that you don't want to support the file-level-specific-ignores but I think flake8 should do something to prevent this confusion.
See for instance https://til.codeinthehole.com/posts/filelevel-flake8-comments-ignore-all-errors/
My suggestion would be to detect that and throw an error? Somehow it is like providing a flake8 config with a wrong format
sample code
# flake8: noqa: E712
from os import * # F401
assert True == True # E712
Let me know what you think, happy to work on this if you would welcome a PR
- Lenguaje dominante
- Python
- Estrellas
- 3.8k
- Forks
- 362
- Merge medio
- 6 h 14 min
- PR fusionados (30 d)
- 7
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PyCQA/flake8
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Max Line Length in style guide ignored with python 3.14 when checking multiple filesQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
-
option_manager.add_option ignores action when reading from configQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Todos los issues de PyCQA/flake8
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
btclib-org/btclib-node#2083 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Gathin23/cleanyourtv#2089 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
jxxghp/MoviePilot#7212 ·
Los mantenedores suelen responder en 1 día
-
Web transport: small test gapsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
cli dx rust
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
NekomyaDev/nudge#278 ·
Los mantenedores suelen responder en 1 día