From a2590ffbebdc734f510bcad6a53c4a069d9d9122 Mon Sep 17 00:00:00 2001 From: Rebecca Chen Date: Wed, 26 Jun 2019 18:13:19 -0700 Subject: [PATCH 1/3] Add undocumented method codecs.utf_16_be_encode. I found the signature here: https://github.com/python/cpython/blob/6a16b18224fa98f6d192aa5014affeccc0376eb3/Modules/_codecsmodule.c#L729 https://github.com/google/pytype/issues/348 was opened against pytype about this method being missing. --- stdlib/2and3/codecs.pyi | 1 + 1 file changed, 1 insertion(+) diff --git a/stdlib/2and3/codecs.pyi b/stdlib/2and3/codecs.pyi index b99ce9134a6f..6c8a88ac6033 100644 --- a/stdlib/2and3/codecs.pyi +++ b/stdlib/2and3/codecs.pyi @@ -31,6 +31,7 @@ class _IncrementalDecoder(Protocol): def encode(obj: _Decoded, encoding: str = ..., errors: str = ...) -> _Encoded: ... def decode(obj: _Encoded, encoding: str = ..., errors: str = ...) -> _Decoded: ... def lookup(encoding: str) -> CodecInfo: ... +def utf_16_be_encode(obj: _Decoded, errors: str = ...) -> _Encoded: ... # undocumented class CodecInfo(Tuple[_Encoder, _Decoder, _StreamReader, _StreamWriter]): @property From ddbe6655ed66308ab3b96c04a752775678ea2b3f Mon Sep 17 00:00:00 2001 From: Rebecca Chen Date: Wed, 26 Jun 2019 19:51:00 -0700 Subject: [PATCH 2/3] Add utf_16_be_encode, mark all arguments as positional. --- stdlib/2and3/codecs.pyi | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/stdlib/2and3/codecs.pyi b/stdlib/2and3/codecs.pyi index 6c8a88ac6033..a9cefc20ab78 100644 --- a/stdlib/2and3/codecs.pyi +++ b/stdlib/2and3/codecs.pyi @@ -31,7 +31,8 @@ class _IncrementalDecoder(Protocol): def encode(obj: _Decoded, encoding: str = ..., errors: str = ...) -> _Encoded: ... def decode(obj: _Encoded, encoding: str = ..., errors: str = ...) -> _Decoded: ... def lookup(encoding: str) -> CodecInfo: ... -def utf_16_be_encode(obj: _Decoded, errors: str = ...) -> _Encoded: ... # undocumented +def utf_16_be_decode(__obj: _Encoded, __errors: str = ..., __final: bool = ...) -> _Decoded: ... # undocumented +def utf_16_be_encode(__obj: _Decoded, __errors: str = ...) -> _Encoded: ... # undocumented class CodecInfo(Tuple[_Encoder, _Decoder, _StreamReader, _StreamWriter]): @property From 19a72b5545ff55d3419b9a0596de7c85d5c329a7 Mon Sep 17 00:00:00 2001 From: Rebecca Chen Date: Wed, 26 Jun 2019 20:08:56 -0700 Subject: [PATCH 3/3] Fix return types of utf_16_be_{decode,encode}. --- stdlib/2and3/codecs.pyi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stdlib/2and3/codecs.pyi b/stdlib/2and3/codecs.pyi index a9cefc20ab78..47ea963c6920 100644 --- a/stdlib/2and3/codecs.pyi +++ b/stdlib/2and3/codecs.pyi @@ -31,8 +31,8 @@ class _IncrementalDecoder(Protocol): def encode(obj: _Decoded, encoding: str = ..., errors: str = ...) -> _Encoded: ... def decode(obj: _Encoded, encoding: str = ..., errors: str = ...) -> _Decoded: ... def lookup(encoding: str) -> CodecInfo: ... -def utf_16_be_decode(__obj: _Encoded, __errors: str = ..., __final: bool = ...) -> _Decoded: ... # undocumented -def utf_16_be_encode(__obj: _Decoded, __errors: str = ...) -> _Encoded: ... # undocumented +def utf_16_be_decode(__obj: _Encoded, __errors: str = ..., __final: bool = ...) -> Tuple[_Decoded, int]: ... # undocumented +def utf_16_be_encode(__obj: _Decoded, __errors: str = ...) -> Tuple[_Encoded, int]: ... # undocumented class CodecInfo(Tuple[_Encoder, _Decoder, _StreamReader, _StreamWriter]): @property