|
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 Any, Callable, Dict, List, Optional, Type, Union, Mapping, TYPE_CHECKING |
8 | 8 |
|
9 | 9 | from redis._parsers.encoders import Encoder
|
10 | 10 | from redis._parsers.helpers import (
|
|
46 | 46 | str_if_bytes,
|
47 | 47 | )
|
48 | 48 |
|
| 49 | +if TYPE_CHECKING: |
| 50 | + import OpenSSL |
| 51 | + import ssl |
| 52 | + |
49 | 53 | SYM_EMPTY = b""
|
50 | 54 | EMPTY_RESPONSE = "EMPTY_RESPONSE"
|
51 | 55 |
|
@@ -168,47 +172,47 @@ def from_pool(
|
168 | 172 |
|
169 | 173 | def __init__(
|
170 | 174 | self,
|
171 |
| - host="localhost", |
172 |
| - port=6379, |
173 |
| - db=0, |
174 |
| - password=None, |
175 |
| - socket_timeout=None, |
176 |
| - socket_connect_timeout=None, |
177 |
| - socket_keepalive=None, |
178 |
| - socket_keepalive_options=None, |
179 |
| - connection_pool=None, |
180 |
| - unix_socket_path=None, |
181 |
| - encoding="utf-8", |
182 |
| - encoding_errors="strict", |
183 |
| - charset=None, |
184 |
| - errors=None, |
185 |
| - decode_responses=False, |
186 |
| - retry_on_timeout=False, |
187 |
| - retry_on_error=None, |
188 |
| - ssl=False, |
189 |
| - ssl_keyfile=None, |
190 |
| - ssl_certfile=None, |
191 |
| - ssl_cert_reqs="required", |
192 |
| - ssl_ca_certs=None, |
193 |
| - ssl_ca_path=None, |
194 |
| - ssl_ca_data=None, |
195 |
| - ssl_check_hostname=False, |
196 |
| - ssl_password=None, |
197 |
| - ssl_validate_ocsp=False, |
198 |
| - ssl_validate_ocsp_stapled=False, |
199 |
| - ssl_ocsp_context=None, |
200 |
| - ssl_ocsp_expected_cert=None, |
201 |
| - ssl_min_version=None, |
202 |
| - ssl_ciphers=None, |
203 |
| - max_connections=None, |
204 |
| - single_connection_client=False, |
205 |
| - health_check_interval=0, |
206 |
| - client_name=None, |
207 |
| - lib_name="redis-py", |
208 |
| - lib_version=get_lib_version(), |
209 |
| - username=None, |
210 |
| - retry=None, |
211 |
| - redis_connect_func=None, |
| 175 | + host: str = "localhost", |
| 176 | + port: int = 6379, |
| 177 | + db: int = 0, |
| 178 | + password: Optional[str] = None, |
| 179 | + socket_timeout: Optional[float] = None, |
| 180 | + socket_connect_timeout: Optional[float] = None, |
| 181 | + socket_keepalive: Optional[bool] = None, |
| 182 | + socket_keepalive_options: Optional[Mapping[int, Union[int, bytes]]] = None, |
| 183 | + connection_pool: Optional[ConnectionPool] = None, |
| 184 | + unix_socket_path: Optional[str] = None, |
| 185 | + encoding: str = "utf-8", |
| 186 | + encoding_errors: str = "strict", |
| 187 | + charset: Optional[str] = None, |
| 188 | + errors: Optional[str] = None, |
| 189 | + decode_responses: bool = False, |
| 190 | + retry_on_timeout: bool = False, |
| 191 | + retry_on_error: Optional[list] = None, |
| 192 | + ssl: bool = False, |
| 193 | + ssl_keyfile: Optional[str] = None, |
| 194 | + ssl_certfile: Optional[str] = None, |
| 195 | + ssl_cert_reqs: str = "required", |
| 196 | + ssl_ca_certs: Optional[str] = None, |
| 197 | + ssl_ca_path: Optional[str] = None, |
| 198 | + ssl_ca_data: Optional[str] = None, |
| 199 | + ssl_check_hostname: bool = False, |
| 200 | + ssl_password: Optional[str] = None, |
| 201 | + ssl_validate_ocsp: bool = False, |
| 202 | + ssl_validate_ocsp_stapled: bool = False, |
| 203 | + ssl_ocsp_context: Optional[OpenSSL.SSL.Context] = None, |
| 204 | + ssl_ocsp_expected_cert: Optional[str] = None, |
| 205 | + ssl_min_version: Optional[ssl.TLSVersion] = None, |
| 206 | + ssl_ciphers: Optional[str] = None, |
| 207 | + max_connections: Optional[int] = None, |
| 208 | + single_connection_client: bool = False, |
| 209 | + health_check_interval: int = 0, |
| 210 | + client_name: Optional[str] = None, |
| 211 | + lib_name: Optional[str] = "redis-py", |
| 212 | + lib_version: Optional[str] = get_lib_version(), |
| 213 | + username: Optional[str] = None, |
| 214 | + retry: Union[Any, None] = None, |
| 215 | + redis_connect_func: Optional[Callable[[], None]] = None, |
212 | 216 | credential_provider: Optional[CredentialProvider] = None,
|
213 | 217 | protocol: Optional[int] = 2,
|
214 | 218 | cache: Optional[CacheInterface] = None,
|
|
0 commit comments