Revision control

Other Tools

[flake8]
max-line-length = 99
exclude =
# These paths should be triaged and either fixed or moved to the list below.
devtools/shared,
dom/base,
dom/bindings,
dom/canvas,
dom/encoding,
dom/websocket,
gfx/tests,
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/devtools/migrate-l10n/migrate/main.py,
python/l10n/fluent_migrations,
python/mozbuild/dumbmake,
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,
testing/web-platform,
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,
# These paths are intentionally excluded (not necessarily for good reason).
build/build-infer/build-infer.py,
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/pywebsocket,
testing/mozharness/configs/test/test_malformed.py,
tools/lint/test/files,
tools/infer/test/*.configure,
tools/crashreporter/*.configure,
.ycm_extra_conf.py,
# This file uses py3.7 only syntax, so can't currently be checked by flake8 in-tree
tools/crashreporter/system-symbols/win/symsrv-fetch.py
# See:
ignore =
# These should be triaged and either fixed or moved to the list below.
W504, 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, E121, E123, E126, E129, E133, E226, E241, E242, E402, E704, E741, W503,
# black will generate code that breaks these. they're not PEP8 compliant though;
W503, E203
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/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.
browser/app/macversion.py: F633
build/**: F633, F821
config/**: F633, F821
ipc/pull-chromium.py: F633
js/**: F633, F821
memory/**: F821
mozglue/**: F821
python/mozbuild/**: F821
python/mozbuild/mozbuild/test/configure/test_checks_configure.py: E128
python/mozversioncontrol/**: F821
testing/mozharness/**: F821
testing/talos/**: F821
toolkit/components/telemetry/**: F821
tools/tryselect/**: F821
testing/firefox-ui/tests/functional/safebrowsing/test_initial_download.py: F821
testing/gtest/rungtests.py: F633
testing/marionette/**: F821
testing/mochitest/**: F821
testing/xpcshell/**: F633, F821
xpcom/idl-parser/xpidl/**: F633, F821
builtins =
# For GDB extensions
gdb