Handling for "noqa" comments with multiple rules changed between 3.3.0 and 3.4.1
I'm not sure there is anything to fix since both 3.3.0 and 3.4.1 documentations show the same syntax; I'm mainly opening this issue for reference/troubleshooting in the hope than anyone facing the same problem will find how to fix it.
It seems that flake8 3.3.0 interprets
(example n°1)
from os import * # noqa: F403, F401
as "ignore all warnings on this line". E.g. version 3.3.0 does not report any warning in this snippet with an obvious syntax error (E999, E111 and E113) and a E261:
(example n°2)
from os import * # noqa: F403, F401
However, the documentation show that the correct syntax is to separate IDs with "," (no whitespace):
(example n°3)
from os import * # noqa: F403,F401
Version 3.4.1 interprets example n°1 as "ignore warning F403".
Manual pages:
- latest: http://flake8.pycqa.org/en/latest/user/violations.html#in-line-ignoring-errors
- 3.4.1: http://flake8.pycqa.org/en/3.4.1/user/violations.html#in-line-ignoring-errors
- 3.3.0: http://flake8.pycqa.org/en/3.3.0/user/ignoring-errors.html
Please describe how you installed Flake8
# pip install flake8==3.3.0
# pip install flake8==3.4.1
Please provide the exact, unmodified output of flake8 --bug-report
Version 3.4.1:
{
"dependencies": [
{
"dependency": "setuptools",
"version": "36.4.0"
}
],
"platform": {
"python_implementation": "CPython",
"python_version": "2.7.13",
"system": "Linux"
},
"plugins": [
{
"plugin": "mccabe",
"version": "0.6.1"
},
{
"plugin": "pycodestyle",
"version": "2.3.1"
},
{
"plugin": "pyflakes",
"version": "1.5.0"
}
],
"version": "3.4.1"
}
Version 3.3.0:
{
"dependencies": [
{
"dependency": "setuptools",
"version": "36.4.0"
}
],
"platform": {
"python_implementation": "CPython",
"python_version": "2.7.13",
"system": "Linux"
},
"plugins": [
{
"plugin": "mccabe",
"version": "0.6.1"
},
{
"plugin": "pycodestyle",
"version": "2.3.1"
},
{
"plugin": "pyflakes",
"version": "1.5.0"
}
],
"version": "3.3.0"
}