Если я создаю файл test.py
со следующим плохо отформатированным содержанием:flake8 не сообщает о линиях, которые слишком долго
import re
long_string = "foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo"
class Foo():
pass
и запустить flake8
на файл из командной строки, как это:
$ flake8 --max-line-length=79 test.py
две ошибки сообщаются только:
test.py:1:1: F401 're' imported but unused
test.py:3:1: E302 expected 2 blank lines, found 0
max-line-length
Нарушение на второй строке не сообщается.
совершенно случайно (я тестировал, если любой из опций команды будет соблюден), я обнаружил, что если я добавить игнорирования опции, как это:
$ flake8 --max-line-length=79 --ignore=E302 test.py
Тогда нарушение длина линии сообщил:
test.py:1:1: F401 're' imported but unused
test.py:2:80: E501 line too long (97 > 79 characters)
Я на Ubuntu 16.04 и мой flake8
информация о версии является:
Когда я опубликовал a related questio n на сайте Exchange Emacs Stack (я думал, что проблема была с пакетом Emacs изначально), один из пользователей указал, что flake8
2.5.4 requires a lower version of pyflakes
. Однако установка flake8
через apt
или pip
автоматически устанавливает эту конкретную версию pyflakes
в качестве зависимости, и мне не удалось получить более старую версию pyflakes
, чтобы узнать, разрешает ли она проблему (может быть, это другой вопрос вообще).
Я делаю что-то неправильно здесь, или это ошибка?
Ну, теперь я чувствую себя глупо. Я добавил 'ignore = E501' в мой' ~/.config/flake8' на моем предыдущем задании. Недавно я обновил свой конфиг, добавив 'max-line-length = 80', но сохранил строку' ignore', не понимая, что соответствует E501' ... Я предполагаю тогда, что когда я добавил '--ignore = E302 'как параметр командной строки, я был этим переопределением опций' ignore' в '~/.config/flake8'. Спасибо за помощь! – elethan
Это именно то, что вы сделали. Я был в спешке, когда я ответил раньше и хотел бы упомянуть об этом. –