mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-08 13:04:46 +08:00
Add missing Optional types in urllib.parse (#3263)
None values are accepted, and interpreted as empty (byte) strings by some urllib.parse functions.
This commit is contained in:
committed by
Sebastian Rittau
parent
50961d45a1
commit
3ee8fc2242
@@ -80,9 +80,9 @@ class SplitResultBytes(_SplitResultBytesBase, _NetlocResultMixinBytes): ...
|
||||
class ParseResultBytes(_ParseResultBytesBase, _NetlocResultMixinBytes): ...
|
||||
|
||||
|
||||
def parse_qs(qs: AnyStr, keep_blank_values: bool = ..., strict_parsing: bool = ..., encoding: str = ..., errors: str = ...) -> Dict[AnyStr, List[AnyStr]]: ...
|
||||
def parse_qs(qs: Optional[AnyStr], keep_blank_values: bool = ..., strict_parsing: bool = ..., encoding: str = ..., errors: str = ...) -> Dict[AnyStr, List[AnyStr]]: ...
|
||||
|
||||
def parse_qsl(qs: AnyStr, keep_blank_values: bool = ..., strict_parsing: bool = ..., encoding: str = ..., errors: str = ...) -> List[Tuple[AnyStr, AnyStr]]: ...
|
||||
def parse_qsl(qs: Optional[AnyStr], keep_blank_values: bool = ..., strict_parsing: bool = ..., encoding: str = ..., errors: str = ...) -> List[Tuple[AnyStr, AnyStr]]: ...
|
||||
|
||||
|
||||
@overload
|
||||
@@ -106,7 +106,7 @@ def unquote_plus(string: str, encoding: str = ..., errors: str = ...) -> str: ..
|
||||
@overload
|
||||
def urldefrag(url: str) -> DefragResult: ...
|
||||
@overload
|
||||
def urldefrag(url: bytes) -> DefragResultBytes: ...
|
||||
def urldefrag(url: Optional[bytes]) -> DefragResultBytes: ...
|
||||
|
||||
def urlencode(
|
||||
query: Union[Mapping[Any, Any], Mapping[Any, Sequence[Any]], Sequence[Tuple[Any, Any]], Sequence[Tuple[Any, Sequence[Any]]]],
|
||||
@@ -120,21 +120,23 @@ def urlencode(
|
||||
def urljoin(base: AnyStr, url: Optional[AnyStr], allow_fragments: bool = ...) -> AnyStr: ...
|
||||
|
||||
@overload
|
||||
def urlparse(url: str, scheme: str = ..., allow_fragments: bool = ...) -> ParseResult: ...
|
||||
def urlparse(url: str, scheme: Optional[str] = ..., allow_fragments: bool = ...) -> ParseResult: ...
|
||||
@overload
|
||||
def urlparse(url: bytes, scheme: bytes = ..., allow_fragments: bool = ...) -> ParseResultBytes: ...
|
||||
def urlparse(url: Optional[bytes], scheme: Optional[bytes] = ..., allow_fragments: bool = ...) -> ParseResultBytes: ...
|
||||
|
||||
@overload
|
||||
def urlsplit(url: str, scheme: str = ..., allow_fragments: bool = ...) -> SplitResult: ...
|
||||
def urlsplit(url: str, scheme: Optional[str] = ..., allow_fragments: bool = ...) -> SplitResult: ...
|
||||
@overload
|
||||
def urlsplit(url: bytes, scheme: bytes = ..., allow_fragments: bool = ...) -> SplitResultBytes: ...
|
||||
def urlsplit(url: Optional[bytes], scheme: Optional[bytes] = ..., allow_fragments: bool = ...) -> SplitResultBytes: ...
|
||||
|
||||
@overload
|
||||
def urlunparse(components: Tuple[AnyStr, AnyStr, AnyStr, AnyStr, AnyStr, AnyStr]) -> AnyStr: ...
|
||||
def urlunparse(
|
||||
components: Tuple[Optional[AnyStr], Optional[AnyStr], Optional[AnyStr], Optional[AnyStr], Optional[AnyStr], Optional[AnyStr]]
|
||||
) -> AnyStr: ...
|
||||
@overload
|
||||
def urlunparse(components: Sequence[AnyStr]) -> AnyStr: ...
|
||||
def urlunparse(components: Sequence[Optional[AnyStr]]) -> AnyStr: ...
|
||||
|
||||
@overload
|
||||
def urlunsplit(components: Tuple[AnyStr, AnyStr, AnyStr, AnyStr, AnyStr]) -> AnyStr: ...
|
||||
def urlunsplit(components: Tuple[Optional[AnyStr], Optional[AnyStr], Optional[AnyStr], Optional[AnyStr], Optional[AnyStr]]) -> AnyStr: ...
|
||||
@overload
|
||||
def urlunsplit(components: Sequence[AnyStr]) -> AnyStr: ...
|
||||
def urlunsplit(components: Sequence[Optional[AnyStr]]) -> AnyStr: ...
|
||||
|
||||
Reference in New Issue
Block a user