[webencodings] Add stubs (#14988)

This commit is contained in:
Semyon Moroz
2025-11-07 14:09:41 +04:00
committed by GitHub
parent 8bed33f9c2
commit b3787bc6d4
6 changed files with 66 additions and 0 deletions
@@ -0,0 +1,2 @@
# Tests should not be part of the stubs
webencodings.tests
+2
View File
@@ -0,0 +1,2 @@
version = "0.5.*"
upstream_repository = "https://github.com/gsnedders/python-webencodings"
@@ -0,0 +1,33 @@
import codecs
from collections.abc import Iterable, Iterator
from typing import Final
VERSION: Final[str]
PYTHON_NAMES: Final[dict[str, str]]
CACHE: dict[str, Encoding]
def ascii_lower(string: str) -> str: ...
def lookup(label: str) -> Encoding | None: ...
class Encoding:
name: str
codec_info: codecs.CodecInfo
def __init__(self, name: str, codec_info: codecs.CodecInfo) -> None: ...
UTF8: Final[Encoding]
def decode(input: bytes | bytearray, fallback_encoding: str | Encoding, errors: str = "replace") -> tuple[str, Encoding]: ...
def encode(input: str, encoding: str | Encoding = ..., errors: str = "strict") -> bytes: ...
def iter_decode(
input: Iterable[bytes | bytearray], fallback_encoding: str | Encoding, errors: str = "replace"
) -> tuple[Iterator[Encoding | str], Encoding]: ...
def iter_encode(input: Iterable[str], encoding: str | Encoding = ..., errors: str = "strict") -> Iterator[bytes]: ...
class IncrementalDecoder:
encoding: Encoding | None
def __init__(self, fallback_encoding: str | Encoding, errors: str = "replace") -> None: ...
def decode(self, input: bytes | bytearray, final: bool = False) -> str: ...
class IncrementalEncoder:
encode: bytes
def __init__(self, encoding: str | Encoding = ..., errors: str = "strict") -> None: ...
@@ -0,0 +1,3 @@
from typing import Final
LABELS: Final[dict[str, str]]
@@ -0,0 +1,5 @@
from typing import AnyStr
from urllib.request import Request
def assert_lower(string: AnyStr) -> AnyStr: ...
def generate(url: str | Request) -> str: ...
@@ -0,0 +1,21 @@
import codecs
from _codecs import _CharMap
from _typeshed import ReadableBuffer
from typing import Final
class Codec(codecs.Codec):
def encode(self, input: str, errors: str = "strict") -> tuple[bytes, int]: ...
def decode(self, input: bytes, errors: str = "strict") -> tuple[str, int]: ...
class IncrementalEncoder(codecs.IncrementalEncoder):
def encode(self, input: str, final: bool = False) -> bytes: ...
class IncrementalDecoder(codecs.IncrementalDecoder):
def decode(self, input: ReadableBuffer, final: bool = False) -> str: ...
class StreamWriter(Codec, codecs.StreamWriter): ...
class StreamReader(Codec, codecs.StreamReader): ...
codec_info: Final[codecs.CodecInfo]
decoding_table: Final[str]
encoding_table: Final[_CharMap]