author Andrew Halberstadt <ahalberstadt@mozilla.com>
Tue, 29 Aug 2017 17:32:31 -0400
changeset 427303 0145883aea3a74740298a2dc3072e4a4e80c8570
parent 410935 97d503af98d9ac9e6fdba3d8c7f2ffc6c74bac27
child 454742 2d0766c3e7c94d7af3e40b8069aa8e3d6d4071aa
permissions -rw-r--r--
Bug 1395126 - Support cascading configuration for flake8, r=bc This allows .flake8 files to override one another, and fixes a pretty bad known bug with our flake8 implementation. For example, say we have a .flake8 file at: /foo/.flake8 Before this patch, if we ran |mach lint foo/bar|, the configuration defined in that .flake8 file wouldn't get picked up. It would only work if running the specific directory that contains it, e.g |mach lint foo|. This change additionally allows multiple .flake8 files to be used. So if there's one defined at both: /.flake8 /foo/.flake8 Then running |mach lint foo/bar| will first apply the root .flake8, then the one under /foo (overriding earlier configuration). This bug still doesn't make flake8 configuration perfect though. Any directory containing a .flake8 file still needs to be explicitly listed in the "include" section of /tools/lint/flake8.yml. Otherwise in the example above, if running |mach lint /|, it wouldn't be able to find /foo/.flake8. This is a hard problem and is likely best solved by fixing flake8's upstream configuration handling. Unfortunately this means we still can't switch from a whitelist to a blacklist. MozReview-Commit-ID: 3DZAi1QHYYo

# See http://pep8.readthedocs.io/en/latest/intro.html#configuration
ignore = E121, E123, E126, E129, E133, E226, E241, E242, E704, W503, E402
max-line-length = 99
exclude =