|
4 | 4 | import time
|
5 | 5 | import warnings
|
6 | 6 | from itertools import chain
|
7 |
| -from typing import Any, Callable, Dict, List, Optional, Type, Union |
| 7 | +from typing import ( |
| 8 | + TYPE_CHECKING, |
| 9 | + Any, |
| 10 | + Callable, |
| 11 | + Dict, |
| 12 | + List, |
| 13 | + Mapping, |
| 14 | + Optional, |
| 15 | + Type, |
| 16 | + Union, |
| 17 | +) |
8 | 18 |
|
9 | 19 | from redis._parsers.encoders import Encoder
|
10 | 20 | from redis._parsers.helpers import (
|
|
53 | 63 | str_if_bytes,
|
54 | 64 | )
|
55 | 65 |
|
| 66 | +if TYPE_CHECKING: |
| 67 | + import ssl |
| 68 | + |
| 69 | + import OpenSSL |
| 70 | + |
56 | 71 | SYM_EMPTY = b""
|
57 | 72 | EMPTY_RESPONSE = "EMPTY_RESPONSE"
|
58 | 73 |
|
@@ -175,47 +190,47 @@ def from_pool(
|
175 | 190 |
|
176 | 191 | def __init__(
|
177 | 192 | self,
|
178 |
| - host="localhost", |
179 |
| - port=6379, |
180 |
| - db=0, |
181 |
| - password=None, |
182 |
| - socket_timeout=None, |
183 |
| - socket_connect_timeout=None, |
184 |
| - socket_keepalive=None, |
185 |
| - socket_keepalive_options=None, |
186 |
| - connection_pool=None, |
187 |
| - unix_socket_path=None, |
188 |
| - encoding="utf-8", |
189 |
| - encoding_errors="strict", |
190 |
| - charset=None, |
191 |
| - errors=None, |
192 |
| - decode_responses=False, |
193 |
| - retry_on_timeout=False, |
194 |
| - retry_on_error=None, |
195 |
| - ssl=False, |
196 |
| - ssl_keyfile=None, |
197 |
| - ssl_certfile=None, |
198 |
| - ssl_cert_reqs="required", |
199 |
| - ssl_ca_certs=None, |
200 |
| - ssl_ca_path=None, |
201 |
| - ssl_ca_data=None, |
202 |
| - ssl_check_hostname=False, |
203 |
| - ssl_password=None, |
204 |
| - ssl_validate_ocsp=False, |
205 |
| - ssl_validate_ocsp_stapled=False, |
206 |
| - ssl_ocsp_context=None, |
207 |
| - ssl_ocsp_expected_cert=None, |
208 |
| - ssl_min_version=None, |
209 |
| - ssl_ciphers=None, |
210 |
| - max_connections=None, |
211 |
| - single_connection_client=False, |
212 |
| - health_check_interval=0, |
213 |
| - client_name=None, |
214 |
| - lib_name="redis-py", |
215 |
| - lib_version=get_lib_version(), |
216 |
| - username=None, |
217 |
| - retry=None, |
218 |
| - redis_connect_func=None, |
| 193 | + host: str = "localhost", |
| 194 | + port: int = 6379, |
| 195 | + db: int = 0, |
| 196 | + password: Optional[str] = None, |
| 197 | + socket_timeout: Optional[float] = None, |
| 198 | + socket_connect_timeout: Optional[float] = None, |
| 199 | + socket_keepalive: Optional[bool] = None, |
| 200 | + socket_keepalive_options: Optional[Mapping[int, Union[int, bytes]]] = None, |
| 201 | + connection_pool: Optional[ConnectionPool] = None, |
| 202 | + unix_socket_path: Optional[str] = None, |
| 203 | + encoding: str = "utf-8", |
| 204 | + encoding_errors: str = "strict", |
| 205 | + charset: Optional[str] = None, |
| 206 | + errors: Optional[str] = None, |
| 207 | + decode_responses: bool = False, |
| 208 | + retry_on_timeout: bool = False, |
| 209 | + retry_on_error: Optional[List[Type[Exception]]] = None, |
| 210 | + ssl: bool = False, |
| 211 | + ssl_keyfile: Optional[str] = None, |
| 212 | + ssl_certfile: Optional[str] = None, |
| 213 | + ssl_cert_reqs: str = "required", |
| 214 | + ssl_ca_certs: Optional[str] = None, |
| 215 | + ssl_ca_path: Optional[str] = None, |
| 216 | + ssl_ca_data: Optional[str] = None, |
| 217 | + ssl_check_hostname: bool = False, |
| 218 | + ssl_password: Optional[str] = None, |
| 219 | + ssl_validate_ocsp: bool = False, |
| 220 | + ssl_validate_ocsp_stapled: bool = False, |
| 221 | + ssl_ocsp_context: Optional["OpenSSL.SSL.Context"] = None, |
| 222 | + ssl_ocsp_expected_cert: Optional[str] = None, |
| 223 | + ssl_min_version: Optional["ssl.TLSVersion"] = None, |
| 224 | + ssl_ciphers: Optional[str] = None, |
| 225 | + max_connections: Optional[int] = None, |
| 226 | + single_connection_client: bool = False, |
| 227 | + health_check_interval: int = 0, |
| 228 | + client_name: Optional[str] = None, |
| 229 | + lib_name: Optional[str] = "redis-py", |
| 230 | + lib_version: Optional[str] = get_lib_version(), |
| 231 | + username: Optional[str] = None, |
| 232 | + retry: Optional[Retry] = None, |
| 233 | + redis_connect_func: Optional[Callable[[], None]] = None, |
219 | 234 | credential_provider: Optional[CredentialProvider] = None,
|
220 | 235 | protocol: Optional[int] = 2,
|
221 | 236 | cache: Optional[CacheInterface] = None,
|
|
0 commit comments