PyCQA/pycodestyle

E126: asks for less indent on one-line protocol functions

Open

#956 建立於 2020年8月5日

在 GitHub 查看
 (1 留言) (1 反應) (0 負責人)Python (4,941 star) (809 fork)batch import
help wantedneeds patchneeds test

描述

from typing import Protocol


class _LongPollProtocol(Protocol):
    def __call__(
            self,
            foo: str,
            bar: int,
    ) -> int: ...

running pycodestyle on this yields:

$ ~/opt/venv/bin/pycodestyle --version
2.6.0
$ ~/opt/venv/bin/pycodestyle t.py --ignore=E704
t.py:6:13: E126 continuation line over-indented for hanging indent

but interestingly, this indentation is ok if I move the Ellipsis to the next line

from typing import Protocol


class _LongPollProtocol(Protocol):
    def __call__(
            self,
            foo: str,
            bar: int,
    ) -> int:
        ...

I intentionally want to indent the arguments two indents to differentiate between the body of code

貢獻者指南

E126: asks for less indent on one-line protocol functions · PyCQA/pycodestyle#956 | Good First Issue