Пилинт: Как я могу чисто подавить вещи без последующей чепухи с подавленным сообщением? - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть файл foo.py, который широко использует сторонний модуль Faker.Таким образом, pylint генерирует много ошибок «no-member».

Я бы хотел отключить их в foo.py.Итак, наверху я попытался вставить:

# pragma pylint: disable=no-member

Но довольно раздражающим образом Pylint теперь выдает подавленное сообщение каждый раз, когда сталкивается с одной из этих ошибок - полностью игнорируя цель моей прагмы.??

foo.py:1:0: I0011: Locally disabling no-member (E1101) (locally-disabled)
... other misc stuff ...
foo.py:177:0: I0020: Suppressed 'no-member' (from line 1) (suppressed-message)
foo.py:83:0: I0020: Suppressed 'no-member' (from line 1) (suppressed-message)
foo.py:85:0: I0020: Suppressed 'no-member' (from line 1) (suppressed-message)

Ха ... ну, это ... смешно.

Поэтому я попытался ... подавить сообщения подавления ??

# pragma pylint: disable=no-member,suppressed-message

И ТОГДА это становится еще лучше ...

foo.py:1:0: I0011: Locally disabling no-member (E1101) (locally-disabled)
foo.py:1:0: I0011: Locally disabling suppressed-message (I0020) (locally-disabled)
foo.py:1:0: C0102: Black listed name "foo" (blacklisted-name)
.... misc stuff, actual things I should clean up here ...
foo.py:1:0: I0021: Useless suppression of 'suppressed-message' (useless-suppression)

Поэтому я предполагаю, что мой вопрос - как сделать так, чтобы сообщения подавления полностью исчезали для каждого файла, без каких-либо раздражающих заменяющих сообщений?

РЕДАКТИРОВАТЬ: Спасибо за комментарии.

Вывод pylint --version:

pylint 2.1.1
astroid 2.0.4
Python 3.6.5 (default, Apr 25 2018, 14:23:58) 
[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)]

1 Ответ

0 голосов
/ 21 сентября 2018

Сообщения I-категории по умолчанию отключены.Вы включили их сами, установив enable=all в разделе [MESSAGES CONTROL] вашего pylintrc, а затем не отключили их в списке disable в том же разделе.Добавьте suppressed-message в список disable в вашем pylintrc, и сообщения с подавленным сообщением должны перестать появляться.

Что касается сообщения о бесполезном подавлении, то это похоже на ошибку в Pylint.

...