Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 1 addition & 34 deletions stdlib/@tests/stubtest_allowlists/py315.txt
Original file line number Diff line number Diff line change
Expand Up @@ -77,41 +77,8 @@ ast.ImportFrom.is_lazy
ast.dump
ast.parse
ast.type_param.__init__
base64.a85decode
base64.b16decode
base64.b16encode
base64.b32decode
base64.b32encode
base64.b32hexdecode
base64.b32hexencode
# base64.b64decode uses a private sentinel list as the default for parameters whose public types are bool/buffer.
base64.b64decode
base64.b64encode
base64.b85decode
base64.b85encode
base64.urlsafe_b64decode
base64.urlsafe_b64encode
base64.z85decode
base64.z85encode
binascii.ASCII85_ALPHABET
binascii.BASE32HEX_ALPHABET
binascii.BASE32_ALPHABET
binascii.BASE64_ALPHABET
binascii.BASE85_ALPHABET
binascii.BINHEX_ALPHABET
binascii.CRYPT_ALPHABET
binascii.URLSAFE_BASE64_ALPHABET
binascii.UU_ALPHABET
binascii.Z85_ALPHABET
binascii.a2b_ascii85
binascii.a2b_base32
binascii.a2b_base64
binascii.a2b_base85
binascii.a2b_hex
binascii.b2a_ascii85
binascii.b2a_base32
binascii.b2a_base64
binascii.b2a_base85
binascii.unhexlify
codecs.backslashreplace_errors
codecs.ignore_errors
codecs.namereplace_errors
Expand Down
101 changes: 84 additions & 17 deletions stdlib/base64.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -28,31 +28,98 @@ __all__ = [
if sys.version_info >= (3, 13):
__all__ += ["z85decode", "z85encode"]

def b64encode(s: ReadableBuffer, altchars: ReadableBuffer | None = None) -> bytes: ...
def b64decode(s: str | ReadableBuffer, altchars: str | ReadableBuffer | None = None, validate: bool = False) -> bytes: ...
if sys.version_info >= (3, 15):
def b64encode(
s: ReadableBuffer, altchars: ReadableBuffer | None = None, *, padded: bool = True, wrapcol: int = 0
) -> bytes: ...
def b64decode(
s: str | ReadableBuffer,
altchars: str | ReadableBuffer | None = None,
validate: bool = ...,
*,
padded: bool = True,
ignorechars: ReadableBuffer = ...,
canonical: bool = False,
) -> bytes: ...

else:
def b64encode(s: ReadableBuffer, altchars: ReadableBuffer | None = None) -> bytes: ...
def b64decode(s: str | ReadableBuffer, altchars: str | ReadableBuffer | None = None, validate: bool = False) -> bytes: ...

def standard_b64encode(s: ReadableBuffer) -> bytes: ...
def standard_b64decode(s: str | ReadableBuffer) -> bytes: ...
def urlsafe_b64encode(s: ReadableBuffer) -> bytes: ...
def urlsafe_b64decode(s: str | ReadableBuffer) -> bytes: ...
def b32encode(s: ReadableBuffer) -> bytes: ...
def b32decode(s: str | ReadableBuffer, casefold: bool = False, map01: str | ReadableBuffer | None = None) -> bytes: ...
def b16encode(s: ReadableBuffer) -> bytes: ...
def b16decode(s: str | ReadableBuffer, casefold: bool = False) -> bytes: ...
def b32hexencode(s: ReadableBuffer) -> bytes: ...
def b32hexdecode(s: str | ReadableBuffer, casefold: bool = False) -> bytes: ...

if sys.version_info >= (3, 15):
def urlsafe_b64encode(s: ReadableBuffer, *, padded: bool = True) -> bytes: ...
def urlsafe_b64decode(s: str | ReadableBuffer, *, padded: bool = False) -> bytes: ...
def b32encode(s: ReadableBuffer, *, padded: bool = True, wrapcol: int = 0) -> bytes: ...
def b32decode(
s: str | ReadableBuffer,
casefold: bool = False,
map01: str | ReadableBuffer | None = None,
*,
padded: bool = True,
ignorechars: ReadableBuffer = b"",
canonical: bool = False,
) -> bytes: ...
def b16encode(s: ReadableBuffer, *, wrapcol: int = 0) -> bytes: ...
def b16decode(s: str | ReadableBuffer, casefold: bool = False, *, ignorechars: ReadableBuffer = b"") -> bytes: ...

else:
def urlsafe_b64encode(s: ReadableBuffer) -> bytes: ...
def urlsafe_b64decode(s: str | ReadableBuffer) -> bytes: ...
def b32encode(s: ReadableBuffer) -> bytes: ...
def b32decode(s: str | ReadableBuffer, casefold: bool = False, map01: str | ReadableBuffer | None = None) -> bytes: ...
def b16encode(s: ReadableBuffer) -> bytes: ...
def b16decode(s: str | ReadableBuffer, casefold: bool = False) -> bytes: ...

if sys.version_info >= (3, 15):
def b32hexencode(s: ReadableBuffer, *, padded: bool = True, wrapcol: int = 0) -> bytes: ...
def b32hexdecode(
s: str | ReadableBuffer,
casefold: bool = False,
*,
padded: bool = True,
ignorechars: ReadableBuffer = b"",
canonical: bool = False,
) -> bytes: ...

else:
def b32hexencode(s: ReadableBuffer) -> bytes: ...
def b32hexdecode(s: str | ReadableBuffer, casefold: bool = False) -> bytes: ...

def a85encode(
b: ReadableBuffer, *, foldspaces: bool = False, wrapcol: int = 0, pad: bool = False, adobe: bool = False
) -> bytes: ...
def a85decode(
b: str | ReadableBuffer, *, foldspaces: bool = False, adobe: bool = False, ignorechars: bytearray | bytes = b" \t\n\r\x0b"
) -> bytes: ...
def b85encode(b: ReadableBuffer, pad: bool = False) -> bytes: ...
def b85decode(b: str | ReadableBuffer) -> bytes: ...

if sys.version_info >= (3, 15):
def a85decode(
b: str | ReadableBuffer,
*,
foldspaces: bool = False,
adobe: bool = False,
ignorechars: bytearray | bytes = b" \t\n\r\x0b",
canonical: bool = False,
) -> bytes: ...
def b85encode(b: ReadableBuffer, pad: bool = False, *, wrapcol: int = 0) -> bytes: ...
def b85decode(b: str | ReadableBuffer, *, ignorechars: ReadableBuffer = b"", canonical: bool = False) -> bytes: ...

else:
def a85decode(
b: str | ReadableBuffer, *, foldspaces: bool = False, adobe: bool = False, ignorechars: bytearray | bytes = b" \t\n\r\x0b"
) -> bytes: ...
def b85encode(b: ReadableBuffer, pad: bool = False) -> bytes: ...
def b85decode(b: str | ReadableBuffer) -> bytes: ...

def decode(input: IO[bytes], output: IO[bytes]) -> None: ...
def encode(input: IO[bytes], output: IO[bytes]) -> None: ...
def encodebytes(s: ReadableBuffer) -> bytes: ...
def decodebytes(s: ReadableBuffer) -> bytes: ...

if sys.version_info >= (3, 13):
def z85encode(s: ReadableBuffer) -> bytes: ...
def z85decode(s: str | ReadableBuffer) -> bytes: ...
if sys.version_info >= (3, 15):
def z85encode(s: ReadableBuffer, pad: bool = False, *, wrapcol: int = 0) -> bytes: ...
def z85decode(s: str | ReadableBuffer, *, ignorechars: ReadableBuffer = b"", canonical: bool = False) -> bytes: ...
else:
def z85encode(s: ReadableBuffer) -> bytes: ...
def z85decode(s: str | ReadableBuffer) -> bytes: ...
69 changes: 65 additions & 4 deletions stdlib/binascii.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,68 @@ _AsciiBuffer: TypeAlias = str | ReadableBuffer
def a2b_uu(data: _AsciiBuffer, /) -> bytes: ...
def b2a_uu(data: ReadableBuffer, /, *, backtick: bool = False) -> bytes: ...

if sys.version_info >= (3, 11):
if sys.version_info >= (3, 15):
ASCII85_ALPHABET: bytes
BINHEX_ALPHABET: bytes
CRYPT_ALPHABET: bytes
UU_ALPHABET: bytes
BASE64_ALPHABET: bytes
URLSAFE_BASE64_ALPHABET: bytes
BASE32_ALPHABET: bytes
BASE32HEX_ALPHABET: bytes
BASE85_ALPHABET: bytes
Z85_ALPHABET: bytes
def a2b_base64(
data: _AsciiBuffer,
/,
*,
strict_mode: bool = False,
alphabet: ReadableBuffer = ...,
padded: bool = True,
ignorechars: ReadableBuffer = ...,
canonical: bool = False,
) -> bytes: ...
def b2a_base64(
data: ReadableBuffer, /, *, newline: bool = True, alphabet: ReadableBuffer = ..., padded: bool = True, wrapcol: int = 0
) -> bytes: ...
def b2a_base32(
data: ReadableBuffer, /, *, alphabet: ReadableBuffer = ..., padded: bool = True, wrapcol: int = 0
) -> bytes: ...
def a2b_base32(
data: _AsciiBuffer,
/,
*,
alphabet: ReadableBuffer = ...,
padded: bool = True,
ignorechars: ReadableBuffer = b"",
canonical: bool = False,
) -> bytes: ...
def b2a_ascii85(
data: ReadableBuffer, /, *, foldspaces: bool = False, wrapcol: int = 0, pad: bool = False, adobe: bool = False
) -> bytes: ...
def a2b_ascii85(
data: _AsciiBuffer,
/,
*,
foldspaces: bool = False,
adobe: bool = False,
ignorechars: ReadableBuffer = b"",
canonical: bool = False,
) -> bytes: ...
def b2a_base85(data: ReadableBuffer, /, *, alphabet: ReadableBuffer = ..., pad: bool = False, wrapcol: int = 0) -> bytes: ...
def a2b_base85(
data: _AsciiBuffer, /, *, alphabet: ReadableBuffer = ..., ignorechars: ReadableBuffer = b"", canonical: bool = False
) -> bytes: ...

elif sys.version_info >= (3, 11):
def a2b_base64(data: _AsciiBuffer, /, *, strict_mode: bool = False) -> bytes: ...

else:
def a2b_base64(data: _AsciiBuffer, /) -> bytes: ...

def b2a_base64(data: ReadableBuffer, /, *, newline: bool = True) -> bytes: ...
if sys.version_info < (3, 15):
def b2a_base64(data: ReadableBuffer, /, *, newline: bool = True) -> bytes: ...

def a2b_qp(data: _AsciiBuffer, header: bool = False) -> bytes: ...
def b2a_qp(data: ReadableBuffer, quotetabs: bool = False, istext: bool = True, header: bool = False) -> bytes: ...

Expand All @@ -34,8 +89,14 @@ def crc_hqx(data: ReadableBuffer, crc: int, /) -> int: ...
def crc32(data: ReadableBuffer, crc: int = 0, /) -> int: ...
def b2a_hex(data: ReadableBuffer, sep: str | bytes = ..., bytes_per_sep: int = 1) -> bytes: ...
def hexlify(data: ReadableBuffer, sep: str | bytes = ..., bytes_per_sep: int = 1) -> bytes: ...
def a2b_hex(hexstr: _AsciiBuffer, /) -> bytes: ...
def unhexlify(hexstr: _AsciiBuffer, /) -> bytes: ...

if sys.version_info >= (3, 15):
def a2b_hex(hexstr: _AsciiBuffer, /, *, ignorechars: ReadableBuffer = b"") -> bytes: ...
def unhexlify(hexstr: _AsciiBuffer, /, *, ignorechars: ReadableBuffer = b"") -> bytes: ...

else:
def a2b_hex(hexstr: _AsciiBuffer, /) -> bytes: ...
def unhexlify(hexstr: _AsciiBuffer, /) -> bytes: ...

class Error(ValueError): ...
class Incomplete(Exception): ...
Loading