Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Flake8: Ignore specific warning for entire file

Tags:

python

flake8

People also ask

How do you override flake8?

Selecting Violations with Flake8 This list can be overridden by specifying flake8 --select . Just as specifying flake8 --ignore will change the behaviour of Flake8, so will flake8 --select . Suddenly we now have far more errors that are reported to us. Using --select alone will override the default --ignore list.

What is flake8 NOQA?

# flake8: noqa : files that contain this line are skipped. lines that contain a # noqa comment at the end: will not issue warnings.


As of Flake8 3.7.0 you can do this using the --per-file-ignores option.

Command line example

flake8 --per-file-ignores="project/__init__.py:F401 setup.py:E121"

Or in your config file

per-file-ignores =
    project/__init__.py:F401
    setup.py:E121
    other_project/*:W9

See the documentation here: http://flake8.pycqa.org/en/latest/user/options.html?highlight=per-file-ignores#cmdoption-flake8-per-file-ignores

It is not possible to place a noqa comment for specific codes at the top of a file like you can for individual lines. # flake8: noqa: F401 may at first appear to work, but it's actually being detected as only # flake8: noqa, which means "ignore all messages in the file".


Before version 3.7.0, ignoring specific errors was only implemented per-line but not per-file.

The feature is being tracked and discussed in issue #89 from which only the per-line proposal has been adopted. More recently, an implementation has been proposed in this merge request, which nobody has followed up on.

However, some extensions have emerged to address the problem:

  • flake8-per-file-ignores lets you ignore specific warning/errors for specific files via an entry in the config.

  • flake8-putty claims to do the same, but hasn't been updated for a while.