LEFT | RIGHT |
1 # flake8-abp | 1 # flake8-abp |
2 | 2 |
3 A [flake8](https://flake8.readthedocs.io) extension that checks for compliance | 3 A [flake8](https://flake8.readthedocs.io) extension that checks for compliance |
4 with the [Adblock Plus coding style guide](https://adblockplus.org/coding-style#
python) | 4 with the [Adblock Plus coding style guide](https://adblockplus.org/coding-style#
python) |
5 and some bad practices which flake8 doesn't handle by default. | 5 and some bad practices which flake8 doesn't handle by default. |
6 | 6 |
7 | 7 |
8 ## Installation | 8 ## Installation |
9 | 9 |
10 Run `python setup.py install`. | 10 Run `python setup.py install`. |
(...skipping 15 matching lines...) Expand all Loading... |
26 * `A104`: `map()` or `filter()` called with lambda function | 26 * `A104`: `map()` or `filter()` called with lambda function |
27 * `A105`: Type called with literal or comprehension where a | 27 * `A105`: Type called with literal or comprehension where a |
28 literal/comprehension of that type can be used directly | 28 literal/comprehension of that type can be used directly |
29 * `A106`: Use augment assignment | 29 * `A106`: Use augment assignment |
30 * `A107`: `%` operator used for string formatting; this mechanism | 30 * `A107`: `%` operator used for string formatting; this mechanism |
31 has been superseded by the string's `format()` method | 31 has been superseded by the string's `format()` method |
32 * `A108`: `+` operator to concatenate more than two strings | 32 * `A108`: `+` operator to concatenate more than two strings |
33 * `A109`: Use triple double quotes for docstrings as recommended in PEP-257 | 33 * `A109`: Use triple double quotes for docstrings as recommended in PEP-257 |
34 * `A110`: Write single-line string literals as represented by `repr()` | 34 * `A110`: Write single-line string literals as represented by `repr()` |
35 * `A111`: Redundant parantheses around if or while condition | 35 * `A111`: Redundant parantheses around if or while condition |
36 * `A112`: String literals defined with 'u' prefixes and not with unicode_literal
s mode | 36 * `A112`: Use `from __future__ import unicode_literals` instead of |
| 37 prefixing literals with "u" |
37 | 38 |
38 | 39 |
39 ### Redundancy and complexity | 40 ### Redundancy and complexity |
40 | 41 |
41 * `A201`: Redundant or superfluos `global` or `nonlocal` declaration | 42 * `A201`: Redundant or superfluos `global` or `nonlocal` declaration |
42 * `A202`: Dead code after block is left | 43 * `A202`: Dead code after block is left |
43 * `A303`: Unused expression | 44 * `A303`: Unused expression |
44 * `A204`: Redundant or superfluos pass statement | 45 * `A204`: Redundant or superfluos pass statement |
45 * `A205`: Superfluos empty block | 46 * `A205`: Superfluos empty block |
46 * `A206`: Extraneous `else` statement after block is left | 47 * `A206`: Extraneous `else` statement after block is left |
47 * `A207`: Duplicate key in dict or set | 48 * `A207`: Duplicate key in dict or set |
48 | 49 |
49 | 50 |
50 ### Error-prone practices | 51 ### Error-prone practices |
51 | 52 |
52 * `A301`: Discouraged APIs | 53 * `A301`: Discouraged APIs |
53 * `A302`: Redefinition of built-in name | 54 * `A302`: Redefinition of built-in name |
54 * `A303`: Non-default source file encoding | 55 * `A303`: Non-default source file encoding |
LEFT | RIGHT |