Remove Python 3.4 support (#3147)

Closes #3123
This commit is contained in:
Sebastian Rittau
2019-07-27 10:58:21 +02:00
committed by GitHub
parent 4697adcb1a
commit 9ccf9356bf
55 changed files with 988 additions and 1266 deletions

View File

@@ -5,20 +5,15 @@
import sys
from typing import Union, Text
if sys.version_info < (3,):
# Python 2 accepts unicode ascii pretty much everywhere.
_Bytes = Union[bytes, Text]
_Ascii = Union[bytes, Text]
elif sys.version_info < (3, 3):
# Python 3.2 and below only accepts bytes.
_Bytes = bytes
_Ascii = bytes
_Bytes = Text
_Ascii = Text
else:
# But since Python 3.3 ASCII-only unicode strings are accepted by the
# a2b_* functions.
_Bytes = bytes
_Ascii = Union[bytes, Text]
_Ascii = Union[bytes, str]
def a2b_uu(string: _Ascii) -> bytes: ...
if sys.version_info >= (3, 7):

View File

@@ -13,10 +13,8 @@ class SMTPChannel(asynchat.async_chat):
COMMAND: int
DATA: int
if sys.version_info >= (3, 3):
command_size_limits: DefaultDict[str, int]
if sys.version_info >= (3,):
command_size_limits: DefaultDict[str, int]
smtp_server: SMTPServer
conn: socket.socket
addr: Any
@@ -32,19 +30,14 @@ class SMTPChannel(asynchat.async_chat):
command_size_limit: int
data_size_limit: int
if sys.version_info >= (3, 5):
enable_SMTPUTF8: bool
if sys.version_info >= (3, 3):
@property
def max_command_size_limit(self) -> int: ...
if sys.version_info >= (3, 5):
if sys.version_info >= (3,):
def __init__(self, server: SMTPServer, conn: socket.socket, addr: Any, data_size_limit: int = ...,
map: Optional[asyncore._maptype] = ..., enable_SMTPUTF8: bool = ..., decode_data: bool = ...) -> None: ...
elif sys.version_info >= (3, 4):
def __init__(self, server: SMTPServer, conn: socket.socket, addr: Any, data_size_limit: int = ...,
map: Optional[asyncore._maptype] = ...) -> None: ...
else:
def __init__(self, server: SMTPServer, conn: socket.socket, addr: Any, data_size_limit: int = ...) -> None: ...
def push(self, msg: bytes) -> None: ...
@@ -69,13 +62,10 @@ class SMTPServer(asyncore.dispatcher):
data_size_limit: int
enable_SMTPUTF8: bool
if sys.version_info >= (3, 5):
if sys.version_info >= (3,):
def __init__(self, localaddr: _Address, remoteaddr: _Address,
data_size_limit: int = ..., map: Optional[asyncore._maptype] = ...,
enable_SMTPUTF8: bool = ..., decode_data: bool = ...) -> None: ...
elif sys.version_info >= (3, 4):
def __init__(self, localaddr: _Address, remoteaddr: _Address,
data_size_limit: int = ..., map: Optional[asyncore._maptype] = ...) -> None: ...
else:
def __init__(self, localaddr: _Address, remoteaddr: _Address,
data_size_limit: int = ...) -> None: ...

View File

@@ -48,11 +48,13 @@ def wrap_socket(sock: socket.socket, keyfile: Optional[str] = ...,
ciphers: Optional[str] = ...) -> SSLSocket: ...
if sys.version_info < (3,) or sys.version_info >= (3, 4):
def create_default_context(purpose: Any = ..., *,
cafile: Optional[str] = ...,
capath: Optional[str] = ...,
cadata: Union[str, bytes, None] = ...) -> SSLContext: ...
def create_default_context(
purpose: Any = ...,
*,
cafile: Optional[str] = ...,
capath: Optional[str] = ...,
cadata: Union[str, bytes, None] = ...,
) -> SSLContext: ...
if sys.version_info >= (3, 4):
def _create_unverified_context(protocol: int = ..., *,
@@ -80,39 +82,35 @@ def get_server_certificate(addr: Tuple[str, int], ssl_version: int = ...,
ca_certs: Optional[str] = ...) -> str: ...
def DER_cert_to_PEM_cert(der_cert_bytes: bytes) -> str: ...
def PEM_cert_to_DER_cert(pem_cert_string: str) -> bytes: ...
if sys.version_info < (3,) or sys.version_info >= (3, 4):
DefaultVerifyPaths = NamedTuple('DefaultVerifyPaths',
[('cafile', str), ('capath', str),
('openssl_cafile_env', str),
('openssl_cafile', str),
('openssl_capath_env', str),
('openssl_capath', str)])
def get_default_verify_paths() -> DefaultVerifyPaths: ...
DefaultVerifyPaths = NamedTuple('DefaultVerifyPaths',
[('cafile', str), ('capath', str),
('openssl_cafile_env', str),
('openssl_cafile', str),
('openssl_capath_env', str),
('openssl_capath', str)])
def get_default_verify_paths() -> DefaultVerifyPaths: ...
if sys.platform == 'win32':
if sys.version_info < (3,) or sys.version_info >= (3, 4):
def enum_certificates(store_name: str) -> _EnumRetType: ...
def enum_crls(store_name: str) -> _EnumRetType: ...
def enum_certificates(store_name: str) -> _EnumRetType: ...
def enum_crls(store_name: str) -> _EnumRetType: ...
CERT_NONE: int
CERT_OPTIONAL: int
CERT_REQUIRED: int
if sys.version_info < (3,) or sys.version_info >= (3, 4):
VERIFY_DEFAULT: int
VERIFY_CRL_CHECK_LEAF: int
VERIFY_CRL_CHECK_CHAIN: int
VERIFY_X509_STRICT: int
VERIFY_X509_TRUSTED_FIRST: int
VERIFY_DEFAULT: int
VERIFY_CRL_CHECK_LEAF: int
VERIFY_CRL_CHECK_CHAIN: int
VERIFY_X509_STRICT: int
VERIFY_X509_TRUSTED_FIRST: int
PROTOCOL_SSLv23: int
PROTOCOL_SSLv2: int
PROTOCOL_SSLv3: int
PROTOCOL_TLSv1: int
if sys.version_info < (3,) or sys.version_info >= (3, 4):
PROTOCOL_TLSv1_1: int
PROTOCOL_TLSv1_2: int
PROTOCOL_TLSv1_1: int
PROTOCOL_TLSv1_2: int
if sys.version_info >= (3, 5):
PROTOCOL_TLS: int
if sys.version_info >= (3, 6):
@@ -123,9 +121,8 @@ OP_ALL: int
OP_NO_SSLv2: int
OP_NO_SSLv3: int
OP_NO_TLSv1: int
if sys.version_info < (3,) or sys.version_info >= (3, 4):
OP_NO_TLSv1_1: int
OP_NO_TLSv1_2: int
OP_NO_TLSv1_1: int
OP_NO_TLSv1_2: int
OP_CIPHER_SERVER_PREFERENCE: int
OP_SINGLE_DH_USE: int
OP_SINGLE_ECDH_USE: int
@@ -133,8 +130,7 @@ OP_NO_COMPRESSION: int
if sys.version_info >= (3, 6):
OP_NO_TICKET: int
if sys.version_info < (3,) or sys.version_info >= (3, 5):
HAS_ALPN: int
HAS_ALPN: int
HAS_ECDH: bool
HAS_SNI: bool
HAS_NPN: bool
@@ -144,41 +140,40 @@ OPENSSL_VERSION: str
OPENSSL_VERSION_INFO: Tuple[int, int, int, int, int]
OPENSSL_VERSION_NUMBER: int
if sys.version_info < (3,) or sys.version_info >= (3, 4):
ALERT_DESCRIPTION_HANDSHAKE_FAILURE: int
ALERT_DESCRIPTION_INTERNAL_ERROR: int
ALERT_DESCRIPTION_ACCESS_DENIED: int
ALERT_DESCRIPTION_BAD_CERTIFICATE: int
ALERT_DESCRIPTION_BAD_CERTIFICATE_HASH_VALUE: int
ALERT_DESCRIPTION_BAD_CERTIFICATE_STATUS_RESPONSE: int
ALERT_DESCRIPTION_BAD_RECORD_MAC: int
ALERT_DESCRIPTION_CERTIFICATE_EXPIRED: int
ALERT_DESCRIPTION_CERTIFICATE_REVOKED: int
ALERT_DESCRIPTION_CERTIFICATE_UNKNOWN: int
ALERT_DESCRIPTION_CERTIFICATE_UNOBTAINABLE: int
ALERT_DESCRIPTION_CLOSE_NOTIFY: int
ALERT_DESCRIPTION_DECODE_ERROR: int
ALERT_DESCRIPTION_DECOMPRESSION_FAILURE: int
ALERT_DESCRIPTION_DECRYPT_ERROR: int
ALERT_DESCRIPTION_ILLEGAL_PARAMETER: int
ALERT_DESCRIPTION_INSUFFICIENT_SECURITY: int
ALERT_DESCRIPTION_NO_RENEGOTIATION: int
ALERT_DESCRIPTION_PROTOCOL_VERSION: int
ALERT_DESCRIPTION_RECORD_OVERFLOW: int
ALERT_DESCRIPTION_UNEXPECTED_MESSAGE: int
ALERT_DESCRIPTION_UNKNOWN_CA: int
ALERT_DESCRIPTION_UNKNOWN_PSK_IDENTITY: int
ALERT_DESCRIPTION_UNRECOGNIZED_NAME: int
ALERT_DESCRIPTION_UNSUPPORTED_CERTIFICATE: int
ALERT_DESCRIPTION_UNSUPPORTED_EXTENSION: int
ALERT_DESCRIPTION_USER_CANCELLED: int
ALERT_DESCRIPTION_HANDSHAKE_FAILURE: int
ALERT_DESCRIPTION_INTERNAL_ERROR: int
ALERT_DESCRIPTION_ACCESS_DENIED: int
ALERT_DESCRIPTION_BAD_CERTIFICATE: int
ALERT_DESCRIPTION_BAD_CERTIFICATE_HASH_VALUE: int
ALERT_DESCRIPTION_BAD_CERTIFICATE_STATUS_RESPONSE: int
ALERT_DESCRIPTION_BAD_RECORD_MAC: int
ALERT_DESCRIPTION_CERTIFICATE_EXPIRED: int
ALERT_DESCRIPTION_CERTIFICATE_REVOKED: int
ALERT_DESCRIPTION_CERTIFICATE_UNKNOWN: int
ALERT_DESCRIPTION_CERTIFICATE_UNOBTAINABLE: int
ALERT_DESCRIPTION_CLOSE_NOTIFY: int
ALERT_DESCRIPTION_DECODE_ERROR: int
ALERT_DESCRIPTION_DECOMPRESSION_FAILURE: int
ALERT_DESCRIPTION_DECRYPT_ERROR: int
ALERT_DESCRIPTION_ILLEGAL_PARAMETER: int
ALERT_DESCRIPTION_INSUFFICIENT_SECURITY: int
ALERT_DESCRIPTION_NO_RENEGOTIATION: int
ALERT_DESCRIPTION_PROTOCOL_VERSION: int
ALERT_DESCRIPTION_RECORD_OVERFLOW: int
ALERT_DESCRIPTION_UNEXPECTED_MESSAGE: int
ALERT_DESCRIPTION_UNKNOWN_CA: int
ALERT_DESCRIPTION_UNKNOWN_PSK_IDENTITY: int
ALERT_DESCRIPTION_UNRECOGNIZED_NAME: int
ALERT_DESCRIPTION_UNSUPPORTED_CERTIFICATE: int
ALERT_DESCRIPTION_UNSUPPORTED_EXTENSION: int
ALERT_DESCRIPTION_USER_CANCELLED: int
if sys.version_info < (3,):
class _ASN1Object(NamedTuple('_ASN1Object', [('nid', int), ('shortname', str), ('longname', str), ('oid', str)])): ...
class Purpose(_ASN1Object):
SERVER_AUTH: ClassVar[Purpose]
CLIENT_AUTH: ClassVar[Purpose]
if sys.version_info >= (3, 4):
else:
class _ASN1Object(NamedTuple('_ASN1Object', [('nid', int), ('shortname', str), ('longname', str), ('oid', str)])): ...
class Purpose(_ASN1Object, enum.Enum):
SERVER_AUTH = ...
@@ -202,12 +197,10 @@ class SSLSocket(socket.socket):
def shared_cipher(self) -> Optional[List[Tuple[str, int, int]]]: ...
def compression(self) -> Optional[str]: ...
def get_channel_binding(self, cb_type: str = ...) -> Optional[bytes]: ...
if sys.version_info < (3,) or sys.version_info >= (3, 5):
def selected_alpn_protocol(self) -> Optional[str]: ...
def selected_alpn_protocol(self) -> Optional[str]: ...
def selected_npn_protocol(self) -> Optional[str]: ...
def unwrap(self) -> socket.socket: ...
if sys.version_info < (3,) or sys.version_info >= (3, 5):
def version(self) -> Optional[str]: ...
def version(self) -> Optional[str]: ...
def pending(self) -> int: ...
@@ -223,37 +216,30 @@ if sys.version_info >= (3, 7):
class SSLContext:
if sys.version_info < (3,) or sys.version_info >= (3, 4):
check_hostname: bool
check_hostname: bool
options: int
@property
def protocol(self) -> int: ...
if sys.version_info < (3,) or sys.version_info >= (3, 4):
verify_flags: int
verify_flags: int
verify_mode: int
if sys.version_info >= (3, 5):
def __init__(self, protocol: int = ...) -> None: ...
else:
def __init__(self, protocol: int) -> None: ...
if sys.version_info < (3,) or sys.version_info >= (3, 4):
def cert_store_stats(self) -> Dict[str, int]: ...
def cert_store_stats(self) -> Dict[str, int]: ...
def load_cert_chain(self, certfile: str, keyfile: Optional[str] = ...,
password: _PasswordType = ...) -> None: ...
if sys.version_info < (3,) or sys.version_info >= (3, 4):
def load_default_certs(self, purpose: Purpose = ...) -> None: ...
def load_verify_locations(self, cafile: Optional[str] = ...,
capath: Optional[str] = ...,
cadata: Union[str, bytes, None] = ...) -> None: ...
def get_ca_certs(self,
binary_form: bool = ...) -> Union[List[_PeerCertRetDictType], List[bytes]]: ...
else:
def load_verify_locations(self,
cafile: Optional[str] = ...,
capath: Optional[str] = ...) -> None: ...
def load_default_certs(self, purpose: Purpose = ...) -> None: ...
def load_verify_locations(
self,
cafile: Optional[str] = ...,
capath: Optional[str] = ...,
cadata: Union[str, bytes, None] = ...,
) -> None: ...
def get_ca_certs(self, binary_form: bool = ...) -> Union[List[_PeerCertRetDictType], List[bytes]]: ...
def set_default_verify_paths(self) -> None: ...
def set_ciphers(self, ciphers: str) -> None: ...
if sys.version_info < (3,) or sys.version_info >= (3, 5):
def set_alpn_protocols(self, protocols: List[str]) -> None: ...
def set_alpn_protocols(self, protocols: List[str]) -> None: ...
def set_npn_protocols(self, protocols: List[str]) -> None: ...
def set_servername_callback(self,
server_name_callback: Optional[_SrvnmeCbType]) -> None: ...

View File

@@ -109,9 +109,6 @@ class TarFile(Iterable[TarInfo]):
def extract(self, member: Union[str, TarInfo], path: _Path = ...,
set_attrs: bool = ...,
*, numeric_owner: bool = ...) -> None: ...
elif sys.version_info >= (3,):
def extract(self, member: Union[str, TarInfo], path: _Path = ...,
set_attrs: bool = ...) -> None: ...
else:
def extract(self, member: Union[str, TarInfo],
path: _Path = ...) -> None: ...

View File

@@ -56,13 +56,12 @@ class Galeon(UnixBrowser):
remote_action_newwin: str
background: bool
if sys.version_info[:2] == (2, 7) or sys.version_info >= (3, 3):
class Chrome(UnixBrowser):
remote_args: List[str]
remote_action: str
remote_action_newwin: str
remote_action_newtab: str
background: bool
class Chrome(UnixBrowser):
remote_args: List[str]
remote_action: str
remote_action_newwin: str
remote_action_newtab: str
background: bool
class Opera(UnixBrowser):
raise_opts: List[str]