| OLD | NEW |
| 1 # flake8-eyeo | 1 # flake8-eyeo |
| 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 | 4 with the |
| 5 [Adblock Plus coding style guide](https://adblockplus.org/coding-style#python) | 5 [Adblock Plus coding style guide](https://adblockplus.org/coding-style#python) |
| 6 which is used for all eyeo projects, and some bad practices which flake8 doesn't | 6 which is used for all eyeo projects, and some bad practices which flake8 doesn't |
| 7 handle by default. | 7 handle by default. |
| 8 | 8 |
| 9 | 9 |
| 10 ## Installation | 10 ## Installation |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 * `A101`: Loop over a tuple or set literal; use lists for data that have order | 25 * `A101`: Loop over a tuple or set literal; use lists for data that have order |
| 26 * `A102`: Membership check on a tuple or list literal; use a set here | 26 * `A102`: Membership check on a tuple or list literal; use a set here |
| 27 * `A103`: Yoda condition | 27 * `A103`: Yoda condition |
| 28 * `A104`: `map()` or `filter()` called with lambda function | 28 * `A104`: `map()` or `filter()` called with lambda function |
| 29 * `A105`: Type called with literal or comprehension where a | 29 * `A105`: Type called with literal or comprehension where a |
| 30 literal/comprehension of that type can be used directly | 30 literal/comprehension of that type can be used directly |
| 31 * `A106`: Use augment assignment | 31 * `A106`: Use augment assignment |
| 32 * `A107`: `%` operator used for string formatting; this mechanism | 32 * `A107`: `%` operator used for string formatting; this mechanism |
| 33 has been superseded by the string's `format()` method | 33 has been superseded by the string's `format()` method |
| 34 * `A108`: `+` operator to concatenate more than two strings | 34 * `A108`: `+` operator to concatenate more than two strings |
| 35 * `A109`: Use triple double quotes for docstrings as recommended in PEP-257 | |
| 36 * `A110`: Write single-line string literals as represented by `repr()` | 35 * `A110`: Write single-line string literals as represented by `repr()` |
| 37 * `A111`: Redundant parantheses around if or while condition | 36 * `A111`: Redundant parantheses around if or while condition |
| 38 * `A112`: Use `from __future__ import unicode_literals` instead of | 37 * `A112`: Use `from __future__ import unicode_literals` instead of |
| 39 prefixing literals with "u" | 38 prefixing literals with "u" |
| 40 | 39 |
| 41 | 40 |
| 42 ### Redundancy and complexity | 41 ### Redundancy and complexity |
| 43 | 42 |
| 44 * `A201`: Redundant or superfluos `global` or `nonlocal` declaration | 43 * `A201`: Redundant or superfluos `global` or `nonlocal` declaration |
| 45 * `A202`: Dead code after block is left | 44 * `A202`: Dead code after block is left |
| 46 * `A303`: Unused expression | 45 * `A303`: Unused expression |
| 47 * `A204`: Redundant or superfluos pass statement | 46 * `A204`: Redundant or superfluos pass statement |
| 48 * `A205`: Superfluos empty block | 47 * `A205`: Superfluos empty block |
| 49 * `A206`: Extraneous `else` statement after block is left | 48 * `A206`: Extraneous `else` statement after block is left |
| 50 * `A207`: Duplicate key in dict or set | 49 * `A207`: Duplicate key in dict or set |
| 51 | 50 |
| 52 | 51 |
| 53 ### Error-prone practices | 52 ### Error-prone practices |
| 54 | 53 |
| 55 * `A301`: Discouraged APIs | 54 * `A301`: Discouraged APIs |
| 56 * `A302`: Redefinition of built-in name | 55 * `A302`: Redefinition of built-in name |
| 57 * `A303`: Non-default source file encoding | 56 * `A303`: Non-default source file encoding |
| OLD | NEW |