From 111f3f02ef2b13a588aa2d6b120abc6f7b4a90a3 Mon Sep 17 00:00:00 2001 From: Shantanu Date: Tue, 12 May 2020 18:22:25 -0700 Subject: [PATCH] socket: fix default mode for makefile (#3978) Fixes #3977 Co-authored-by: hauntsaninja <> --- stdlib/2and3/socket.pyi | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/stdlib/2and3/socket.pyi b/stdlib/2and3/socket.pyi index 2535cea38..b33efbefd 100644 --- a/stdlib/2and3/socket.pyi +++ b/stdlib/2and3/socket.pyi @@ -638,13 +638,11 @@ class socket: else: def listen(self, __backlog: int) -> None: ... # Note that the makefile's documented windows-specific behavior is not represented - if sys.version_info < (3,): - def makefile(self, mode: unicode = ..., buffering: int = ...) -> BinaryIO: ... - else: + if sys.version_info >= (3,): # mode strings with duplicates are intentionally excluded @overload def makefile(self, - mode: Literal['r', 'w', 'rw', 'wr', ''], + mode: Literal['r', 'w', 'rw', 'wr', ''] = ..., buffering: Optional[int] = ..., *, encoding: Optional[str] = ..., @@ -652,12 +650,14 @@ class socket: newline: Optional[str] = ...) -> TextIO: ... @overload def makefile(self, - mode: Literal['b', 'rb', 'br', 'wb', 'bw', 'rwb', 'rbw', 'wrb', 'wbr', 'brw', 'bwr'] = ..., + mode: Literal['b', 'rb', 'br', 'wb', 'bw', 'rwb', 'rbw', 'wrb', 'wbr', 'brw', 'bwr'], buffering: Optional[int] = ..., *, encoding: Optional[str] = ..., errors: Optional[str] = ..., newline: Optional[str] = ...) -> BinaryIO: ... + else: + def makefile(self, mode: unicode = ..., buffering: int = ...) -> BinaryIO: ... def recv(self, bufsize: int, flags: int = ...) -> bytes: ... def recvfrom(self, bufsize: int, flags: int = ...) -> Tuple[bytes, _RetAddress]: ...