Literal: always import from typing_extensions for simplicity (#4219)

This commit is contained in:
Jelle Zijlstra
2020-06-10 21:23:58 -07:00
committed by GitHub
parent 43e93f803f
commit 44a852dff5
22 changed files with 31 additions and 139 deletions

View File

@@ -3,11 +3,7 @@ from typing import Any, BinaryIO, Callable, Generator, IO, Iterable, Iterator, L
from abc import abstractmethod
import types
if sys.version_info < (3,) or sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
# TODO: this only satisfies the most common interface, where
# bytes (py2 str) is the raw form and str (py2 unicode) is the cooked form.

View File

@@ -1,15 +1,10 @@
import imaplib
import subprocess
import sys
import time
from socket import socket as _socket
from ssl import SSLSocket, SSLContext
from typing import Any, Callable, Dict, IO, List, Optional, Pattern, Text, Tuple, Type, Union
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
# TODO: Commands should use their actual return types, not this type alias.
# E.g. Tuple[Literal["OK"], List[bytes]]

View File

@@ -1,12 +1,7 @@
import sys
from typing import List, Tuple, Union, Set, Optional, Dict, Container, Any, Type, Iterable, Sequence
from types import ModuleType
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
if sys.platform == 'win32':
from _msi import _Database

View File

@@ -16,11 +16,7 @@ CPython C source: https://github.com/python/cpython/blob/master/Modules/socketmo
# adapted for Python 2.7 by Michal Pokorny
import sys
from typing import Any, BinaryIO, Iterable, List, Optional, Text, TextIO, Tuple, TypeVar, Union, overload
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
# ----- Constants -----

View File

@@ -1,10 +1,6 @@
import sys
from typing import Optional, Union, overload
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
if sys.platform == "win32":
SND_FILENAME: int

View File

@@ -1,5 +1,3 @@
# Stubs for xml.etree.ElementTree
from typing import (
Any,
Callable,
@@ -21,13 +19,8 @@ from typing import (
Union,
overload,
)
import io
import sys
if sys.version_info < (3,) or sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
VERSION: str

View File

@@ -1,11 +1,5 @@
import sys
from typing import Optional, NoReturn, ClassVar, Iterable
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
class Quitter:
name: str

View File

@@ -1,10 +1,6 @@
import sys
from typing import Any, Union, Tuple, Optional, overload, Dict, NoReturn, Sequence
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
CREATE_NEW_CONSOLE: int
CREATE_NEW_PROCESS_GROUP: int

View File

@@ -4,6 +4,7 @@ import sys
# internal Bazel integration.
import typing as _typing
from typing import Any, Iterator, Optional, TypeVar, Union, overload
from typing_extensions import Literal
# The same unorthodox Bazel integration causes issues with sys, which
# is imported in both modules. unfortunately we can't just rename sys,
@@ -11,12 +12,6 @@ from typing import Any, Iterator, Optional, TypeVar, Union, overload
# sys.
from _ast import * # type: ignore
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
if sys.version_info >= (3, 8):
class Num(Constant): ...
class Str(Constant): ...

View File

@@ -2,6 +2,7 @@ from socket import socket, _Address, _RetAddress
import ssl
import sys
from typing import Any, Awaitable, Callable, Dict, Generator, IO, List, Optional, Sequence, Tuple, TypeVar, Union, overload
from typing_extensions import Literal
from abc import ABCMeta
from asyncio.futures import Future
from asyncio.events import AbstractEventLoop, AbstractServer, Handle, TimerHandle
@@ -10,11 +11,6 @@ from asyncio.tasks import Task
from asyncio.transports import BaseTransport
from _types import FileDescriptorLike
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
if sys.version_info >= (3, 7):
from contextvars import Context

View File

@@ -1,13 +1,8 @@
import sys
import contextvars
from typing import List, Tuple, Callable, Sequence
from . import futures
from typing_extensions import Literal
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from . import futures
_PENDING: Literal["PENDING"] # undocumented
_CANCELLED: Literal["CANCELLED"] # undocumented

View File

@@ -3,6 +3,7 @@ import sys
import ssl
from typing import ClassVar, Optional, List, Tuple, Callable, Dict, Any, Deque
from typing_extensions import Literal
from . import transports
from . import constants
@@ -10,11 +11,6 @@ from . import events
from . import protocols
from . import futures
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
def _create_transport_context(server_side: bool, server_hostname: Optional[str]) -> ssl.SSLContext: ...
_UNWRAPPED: Literal["UNWRAPPED"]

View File

@@ -3,15 +3,11 @@ import sys
from typing import (
Any, TypeVar, Set, List, TextIO, Union, Tuple, Generic, Generator, Iterable, Awaitable, overload, Iterator, Optional,
)
from typing_extensions import Literal
from types import FrameType
from .events import AbstractEventLoop
from .futures import Future
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
_T = TypeVar('_T')
_T1 = TypeVar('_T1')
_T2 = TypeVar('_T2')

View File

@@ -1,13 +1,7 @@
# Stubs for fcntl
from array import array
from io import IOBase
from typing import IO, Any, Union, overload
from typing import Any, Union, overload
from _types import FileDescriptorLike
import sys
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
FASYNC: int
FD_CLOEXEC: int

View File

@@ -1,9 +1,6 @@
import sys
from enum import IntEnum
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
class HTTPStatus(IntEnum):
@property

View File

@@ -1,8 +1,6 @@
# Stubs for multiprocessing
import sys
from typing import Any, Callable, Iterable, Mapping, Optional, List, Union, Sequence, Tuple, Type, overload
from typing import Any, Callable, Iterable, Optional, List, Union, Sequence, Tuple, Type, overload
from typing_extensions import Literal
from ctypes import _CData
from logging import Logger
from multiprocessing import connection, pool, spawn, synchronize
@@ -24,9 +22,6 @@ from multiprocessing.spawn import set_executable as set_executable
if sys.version_info >= (3, 8):
from multiprocessing.process import parent_process as parent_process
from typing import Literal
else:
from typing_extensions import Literal
if sys.platform != "win32":
from multiprocessing.context import ForkContext, ForkServerContext
@@ -55,7 +50,7 @@ def Pool(processes: Optional[int] = ...,
initargs: Iterable[Any] = ...,
maxtasksperchild: Optional[int] = ...) -> pool.Pool: ...
class Array():
class Array:
value: Any = ...
def __init__(self, typecode_or_type: Union[str, Type[_CData]], size_or_initializer: Union[int, Sequence[Any]], *, lock: Union[bool, _LockLike] = ...) -> None: ...

View File

@@ -1,17 +1,11 @@
# Stubs for multiprocessing.context
from logging import Logger
import multiprocessing
from multiprocessing import synchronize
from multiprocessing import queues
from multiprocessing.process import BaseProcess
import sys
from typing import Any, Callable, Iterable, Optional, List, Mapping, Sequence, Type, Union, overload
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing import Any, Callable, Iterable, Optional, List, Sequence, Type, Union, overload
from typing_extensions import Literal
_LockLike = Union[synchronize.Lock, synchronize.RLock]

View File

@@ -1,17 +1,8 @@
# Stubs for tempfile
# Ron Murawski <ron@horizonchess.com>
# based on http://docs.python.org/3.3/library/tempfile.html
import os
import sys
from types import TracebackType
from typing import Any, AnyStr, Generic, IO, Iterable, Iterator, List, Optional, overload, Tuple, Type, TypeVar, Union
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
from typing_extensions import Literal
# global variables
TMP_MAX: int

View File

@@ -4,15 +4,11 @@ import time
import gzip
import http.client
from typing import Any, Callable, Dict, IO, Iterable, List, Mapping, Optional, Protocol, Text, Tuple, Type, TypeVar, Union, overload
from typing import Any, Callable, Dict, Iterable, List, Mapping, Optional, Protocol, Text, Tuple, Type, TypeVar, Union, overload
from typing_extensions import Literal
from types import TracebackType
from datetime import datetime
if sys.version_info >= (3, 8):
from typing import Literal
else:
from typing_extensions import Literal
_T = TypeVar("_T")
class _HasTimeTuple(Protocol):
def timetuple(self) -> time.struct_time: ...