E1101: Модуль 'Milter' не имеет члена 'ПРОДОЛЖИТЬ' (нет участника) - PullRequest
0 голосов
/ 14 апреля 2020

Я решил улучшить качество своего кода, запустив известный рабочий код через pylint. В частности, у меня есть milter, использующий pymilter. Вот действительно простой код, который я запускаю:

#!/usr/bin/python3
"Test Milter"

import Milter

# Configuration

# List of email addresses for which incoming mail should  be rejected:
EMAILS = ('mailinglist1@domain.com', 'mailinglist2@domain.com')
# Socket for milter
SOCKETNAME = 'inet:14201@127.0.0.1'

# End of Configuration

class TestMilter(Milter.Milter):
    "Test Milter"

    def __init__(self):
        self.milter_id = Milter.uniqueID()

    def envrcpt(self, to, *str):
        "Reject mail if the To: address is one of the specified e-mail addresses."
        if any(e in to for e in EMAILS):
            return Milter.REJECT
        return Milter.ACCEPT

if __name__ == "__main__":
    Milter.factory = TestMilter
    Milter.runmilter("test_milter", SOCKETNAME, 240)

Вот вывод pylint -E:

************* Module test_milter
test_milter.py:24:19: E1101: Module 'Milter' has no 'REJECT' member (no-member)
test_milter.py:25:15: E1101: Module 'Milter' has no 'ACCEPT' member (no-member)

Я выглядел высоко и низко, и просто делаю не понимаю, почему pylint дает мне этот вывод. Я не хочу говорить ему игнорировать это конкретное правило, потому что это на самом деле очень полезное правило в большинстве случаев. Есть идеи?

...