summaryrefslogtreecommitdiffstats
path: root/.flake8
blob: 925db5b4f7910b05512c24d1920f1915b1a2f11f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
[flake8]
max-line-length = 99
exclude =
    # These paths should be triaged and either fixed or moved to the list below.
    devtools/shared,
    dom/bindings,
    ipc/ipdl/ipdl,
    layout/base/tests/marionette,
    layout/reftests/border-image,
    layout/reftests/fonts,
    layout/reftests/w3c-css,
    layout/style,
    media/libdav1d/generate_source.py,
    moz.configure,
    netwerk/dns/prepare_tlds.py,
    netwerk/protocol/http/make_incoming_tables.py,
    python/l10n/fluent_migrations,
    security/manager/ssl/tests/unit,
    servo/components/style,
    testing/condprofile/condprof/android.py,
    testing/condprofile/condprof/creator.py,
    testing/condprofile/condprof/desktop.py,
    testing/condprofile/condprof/runner.py,
    testing/condprofile/condprof/scenarii/heavy.py,
    testing/condprofile/condprof/scenarii/settled.py,
    testing/condprofile/condprof/scenarii/synced.py
    testing/condprofile/condprof/helpers.py,
    testing/jsshell/benchmark.py,
    testing/marionette/mach_commands.py,
    testing/mozharness/docs,
    testing/mozharness/examples,
    testing/mozharness/external_tools,
    testing/mozharness/mach_commands.py,
    testing/mozharness/manifestparser,
    testing/mozharness/mozprocess,
    testing/mozharness/setup.py,
    testing/parse_build_tests_ccov.py,
    testing/runtimes/writeruntimes.py,
    testing/tools/iceserver/iceserver.py,
    testing/tools/websocketprocessbridge/websocketprocessbridge.py,
    toolkit/components/featuregates,
    toolkit/content/tests/chrome/file_about_networking_wsh.py,
    toolkit/library/build/dependentlibs.py,
    toolkit/locales/generate_update_locale.py,
    toolkit/mozapps,
    toolkit/moz.configure,
    toolkit/nss.configure,

    # mako files are not really python files
    *.mako.py,

    # These paths are intentionally excluded (not necessarily for good reason).
    build/moz.configure/*.configure,
    build/pymake/,
    browser/extensions/mortar/ppapi/,
    browser/moz.configure,
    dom/canvas/test/webgl-conf/checkout/closure-library/,
    editor/libeditor/tests/browserscope/,
    intl/icu/,
    ipc/chromium/src/third_party/,
    js/*.configure,
    gfx/angle/,
    gfx/harfbuzz,
    gfx/skia/,
    memory/moz.configure,
    mobile/android/*.configure,
    node_modules,
    python/mozbuild/mozbuild/test/configure/data,
    security/nss/,
    testing/marionette/harness/marionette_harness/runner/mixins,
    testing/marionette/harness/marionette_harness/tests,
    testing/mochitest/pywebsocket3,
    testing/mozharness/configs/test/test_malformed.py,
    testing/web-platform/tests,
    tools/lint/test/files,
    tools/crashreporter/*.configure,
    .ycm_extra_conf.py,

# See:
#   - http://flake8.pycqa.org/en/latest/user/error-codes.html
#   - http://pep8.readthedocs.io/en/latest/intro.html#configuration
ignore =
    # These should be triaged and either fixed or moved to the list below.
    W605, W606,
    # These are intentionally disabled (not necessarily for good reason).
    #   F723: syntax error in type comment
    #       text contains quotes which breaks our custom JSON formatter
    F723, E704, E741,

    # black is already in charge of formatting, no need to start a formatter
    # battle here
    E1, W1, E2, W2, E3, W3, E4, W4, E5, W5

per-file-ignores =
    # These paths are intentionally excluded.
    ipc/ipdl/*: F403, F405
    layout/tools/reftest/selftest/conftest.py: F811
    # cpp_eclipse has a lot of multi-line embedded XML which exceeds line length
    python/mozbuild/mozbuild/backend/cpp_eclipse.py: E501
    testing/firefox-ui/**/__init__.py: F401
    testing/marionette/**/__init__.py: F401
    testing/mochitest/tests/python/conftest.py: F811
    testing/mozbase/manifestparser/tests/test_filters.py: E731
    testing/mozbase/mozlog/tests/test_formatters.py: E501
    testing/mozharness/configs/*: E124, E127, E128, E131, E231, E261, E265, E266, E501, W391

    # These paths contain Python-2 only syntax which cause errors since flake8
    # is run with Python 3.
    build/compare-mozconfig/compare-mozconfigs.py: F821
    build/midl.py: F821
    build/pgo/genpgocert.py: F821
    config/MozZipFile.py: F821
    config/check_source_count.py: F821
    config/tests/unitMozZipFile.py: F821
    ipc/pull-chromium.py: F633
    js/src/**: F633, F821
    python/mozbuild/mozbuild/action/dump_env.py: F821
    python/mozbuild/mozbuild/dotproperties.py: F821
    python/mozbuild/mozbuild/testing.py: F821
    python/mozbuild/mozbuild/util.py: F821
    testing/mozharness/mozharness/mozilla/testing/android.py: F821
    testing/mochitest/runtests.py: F821

builtins =
    # For GDB extensions
    gdb