diff options
author | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
---|---|---|
committer | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
commit | 4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch) | |
tree | ee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/requests-stubs | |
parent | cc961e04ba734dd72309fb548a2f97d67d578813 (diff) | |
download | gn-ai-master.tar.gz |
Diffstat (limited to '.venv/lib/python3.12/site-packages/requests-stubs')
19 files changed, 1122 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/METADATA.toml b/.venv/lib/python3.12/site-packages/requests-stubs/METADATA.toml new file mode 100644 index 00000000..a36e323e --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/METADATA.toml @@ -0,0 +1,13 @@ +version = "2.32.*" +upstream_repository = "https://github.com/psf/requests" +# requires a version of urllib3 with a py.typed file +requires = ["urllib3>=2"] +extra_description = """\ + Note: `types-requests` has required `urllib3>=2` since v2.31.0.7. \ + If you need to install `types-requests` into an environment \ + that must also have `urllib3<2` installed into it, \ + you will have to use `types-requests<2.31.0.7`.\ + """ + +[tool.stubtest] +extras = ["socks"] diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/__init__.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/__init__.pyi new file mode 100644 index 00000000..199c59e9 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/__init__.pyi @@ -0,0 +1,39 @@ +from . import __version__ as version_mod, packages as packages, utils as utils +from .api import ( + delete as delete, + get as get, + head as head, + options as options, + patch as patch, + post as post, + put as put, + request as request, +) +from .exceptions import ( + ConnectionError as ConnectionError, + ConnectTimeout as ConnectTimeout, + FileModeWarning as FileModeWarning, + HTTPError as HTTPError, + JSONDecodeError as JSONDecodeError, + ReadTimeout as ReadTimeout, + RequestException as RequestException, + Timeout as Timeout, + TooManyRedirects as TooManyRedirects, + URLRequired as URLRequired, +) +from .models import PreparedRequest as PreparedRequest, Request as Request, Response as Response +from .sessions import Session as Session, session as session +from .status_codes import codes as codes + +__author__ = version_mod.__author__ +__author_email__ = version_mod.__author_email__ +__build__ = version_mod.__build__ +__cake__ = version_mod.__cake__ +__copyright__ = version_mod.__copyright__ +__description__ = version_mod.__description__ +__license__ = version_mod.__license__ +__title__ = version_mod.__title__ +__url__ = version_mod.__url__ +__version__ = version_mod.__version__ + +def check_compatibility(urllib3_version: str, chardet_version: str | None, charset_normalizer_version: str | None) -> None: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/__version__.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/__version__.pyi new file mode 100644 index 00000000..05c93ebc --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/__version__.pyi @@ -0,0 +1,12 @@ +from typing import Final + +__title__: Final = "requests" +__description__: Final[str] +__url__: Final[str] +__version__: Final[str] +__build__: Final[int] +__author__: Final[str] +__author_email__: Final[str] +__license__: Final[str] +__copyright__: Final[str] +__cake__: Final[str] diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/adapters.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/adapters.pyi new file mode 100644 index 00000000..2f8e4d75 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/adapters.pyi @@ -0,0 +1,109 @@ +from _typeshed import Incomplete +from collections.abc import Mapping +from ssl import SSLContext +from typing import Literal, TypedDict +from typing_extensions import NotRequired, deprecated + +import urllib3 +from urllib3.connectionpool import ConnectionPool +from urllib3.contrib.socks import SOCKSProxyManager as SOCKSProxyManager +from urllib3.exceptions import ( + ConnectTimeoutError as ConnectTimeoutError, + MaxRetryError as MaxRetryError, + ProtocolError as ProtocolError, + ReadTimeoutError as ReadTimeoutError, + ResponseError as ResponseError, +) +from urllib3.poolmanager import PoolManager as PoolManager, proxy_from_url as proxy_from_url +from urllib3.util.retry import Retry as Retry + +from .cookies import extract_cookies_to_jar as extract_cookies_to_jar +from .exceptions import ( + ConnectionError as ConnectionError, + ConnectTimeout as ConnectTimeout, + ProxyError as ProxyError, + ReadTimeout as ReadTimeout, + RetryError as RetryError, + SSLError as SSLError, +) +from .models import PreparedRequest, Response as Response +from .structures import CaseInsensitiveDict as CaseInsensitiveDict +from .utils import ( + DEFAULT_CA_BUNDLE_PATH as DEFAULT_CA_BUNDLE_PATH, + _Uri, + get_auth_from_url as get_auth_from_url, + get_encoding_from_headers as get_encoding_from_headers, + prepend_scheme_if_needed as prepend_scheme_if_needed, + urldefragauth as urldefragauth, +) + +# Arguments to urllib3 connection_from_host() functions (except pool_kwargs). +class _HostParams(TypedDict): + host: str + scheme: str + port: int + +class _PoolKwargs(TypedDict): + ssl_context: NotRequired[SSLContext] + ca_certs: NotRequired[str] + ca_cert_dir: NotRequired[str] + cert_reqs: Literal["CERT_REQUIRED", "CERT_NONE"] + cert_file: NotRequired[str] + key_file: NotRequired[str] + +DEFAULT_POOLBLOCK: bool +DEFAULT_POOLSIZE: int +DEFAULT_RETRIES: int +DEFAULT_POOL_TIMEOUT: float | None + +class BaseAdapter: + def __init__(self) -> None: ... + def send( + self, + request: PreparedRequest, + stream: bool = False, + timeout: None | float | tuple[float, float] | tuple[float, None] = None, + verify: bool | str = True, + cert: None | bytes | str | tuple[bytes | str, bytes | str] = None, + proxies: Mapping[str, str] | None = None, + ) -> Response: ... + def close(self) -> None: ... + +class HTTPAdapter(BaseAdapter): + __attrs__: Incomplete + max_retries: Retry + config: Incomplete + proxy_manager: Incomplete + def __init__( + self, pool_connections: int = 10, pool_maxsize: int = 10, max_retries: Retry | int | None = 0, pool_block: bool = False + ) -> None: ... + poolmanager: Incomplete + def init_poolmanager(self, connections, maxsize, block=False, **pool_kwargs): ... + def proxy_manager_for(self, proxy, **proxy_kwargs): ... + def cert_verify(self, conn, url, verify, cert): ... + def build_response(self, req: PreparedRequest, resp: urllib3.BaseHTTPResponse) -> Response: ... + def build_connection_pool_key_attributes( + self, request: PreparedRequest, verify: bool | str, cert: str | tuple[str, str] | None = None + ) -> tuple[_HostParams, _PoolKwargs]: ... + def get_connection_with_tls_context( + self, + request: PreparedRequest, + verify: bool | str | None, + proxies: Mapping[str, str] | None = None, + cert: tuple[str, str] | str | None = None, + ) -> ConnectionPool: ... + @deprecated("Use get_connection_with_tls_context() instead.") + def get_connection(self, url: _Uri, proxies: Mapping[str, str] | None = None) -> ConnectionPool: ... + def close(self): ... + def request_url(self, request, proxies): ... + def add_headers(self, request, **kwargs): ... + def proxy_headers(self, proxy): ... + def send( + self, + request: PreparedRequest, + stream: bool = False, + timeout: None | float | tuple[float, float] | tuple[float, None] = None, + verify: bool | str = True, + cert: None | bytes | str | tuple[bytes | str, bytes | str] = None, + proxies: Mapping[str, str] | None = None, + ) -> Response: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/api.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/api.pyi new file mode 100644 index 00000000..02ecab01 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/api.pyi @@ -0,0 +1,155 @@ +from _typeshed import Incomplete +from collections.abc import Mapping +from http.cookiejar import CookieJar +from typing_extensions import TypeAlias + +from .models import Response +from .sessions import _Auth, _Cert, _Data, _Files, _HooksInput, _Params, _TextMapping, _Timeout, _Verify + +_HeadersMapping: TypeAlias = Mapping[str, str | bytes | None] + +def request( + method: str | bytes, + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... +def get( + url: str | bytes, + params: _Params | None = None, + *, + data: _Data | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... +def options( + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... +def head( + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... +def post( + url: str | bytes, + data: _Data | None = None, + json: Incomplete | None = None, + *, + params: _Params | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., +) -> Response: ... +def put( + url: str | bytes, + data: _Data | None = None, + *, + params: _Params | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... +def patch( + url: str | bytes, + data: _Data | None = None, + *, + params: _Params | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... +def delete( + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersMapping | None = ..., + cookies: CookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., +) -> Response: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/auth.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/auth.pyi new file mode 100644 index 00000000..21ef4abf --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/auth.pyi @@ -0,0 +1,39 @@ +from typing import Any + +from . import cookies, models, utils + +extract_cookies_to_jar = cookies.extract_cookies_to_jar +parse_dict_header = utils.parse_dict_header +to_native_string = utils.to_native_string + +CONTENT_TYPE_FORM_URLENCODED: Any +CONTENT_TYPE_MULTI_PART: Any + +def _basic_auth_str(username: bytes | str, password: bytes | str) -> str: ... + +class AuthBase: + def __call__(self, r: models.PreparedRequest) -> models.PreparedRequest: ... + +class HTTPBasicAuth(AuthBase): + username: bytes | str + password: bytes | str + def __init__(self, username: bytes | str, password: bytes | str) -> None: ... + def __call__(self, r): ... + +class HTTPProxyAuth(HTTPBasicAuth): + def __call__(self, r): ... + +class HTTPDigestAuth(AuthBase): + username: bytes | str + password: bytes | str + last_nonce: Any + nonce_count: Any + chal: Any + pos: Any + num_401_calls: Any + def __init__(self, username: bytes | str, password: bytes | str) -> None: ... + def build_digest_header(self, method, url): ... + def handle_redirect(self, r, **kwargs): ... + def handle_401(self, r, **kwargs): ... + def __call__(self, r): ... + def init_per_thread_state(self) -> None: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/certs.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/certs.pyi new file mode 100644 index 00000000..7c5857d6 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/certs.pyi @@ -0,0 +1 @@ +# no public data diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/compat.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/compat.pyi new file mode 100644 index 00000000..2494dde8 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/compat.pyi @@ -0,0 +1,26 @@ +from builtins import bytes as bytes, str as str +from collections import OrderedDict as OrderedDict +from typing import Literal +from typing_extensions import TypeAlias +from urllib.parse import ( + quote as quote, + quote_plus as quote_plus, + unquote as unquote, + unquote_plus as unquote_plus, + urldefrag as urldefrag, + urlencode as urlencode, + urljoin as urljoin, + urlparse as urlparse, + urlsplit as urlsplit, + urlunparse as urlunparse, +) +from urllib.request import getproxies as getproxies, parse_http_list as parse_http_list, proxy_bypass as proxy_bypass + +is_py2: Literal[False] +is_py3: Literal[True] +has_simplejson: bool + +builtin_str: TypeAlias = str # noqa: Y042 +basestring: tuple[type, ...] +numeric_types: tuple[type, ...] +integer_types: tuple[type, ...] diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/cookies.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/cookies.pyi new file mode 100644 index 00000000..dc0138d8 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/cookies.pyi @@ -0,0 +1,62 @@ +from _typeshed import SupportsKeysAndGetItem +from collections.abc import Iterator, MutableMapping +from http.cookiejar import Cookie, CookieJar, CookiePolicy +from http.cookies import Morsel +from typing import Any + +class MockRequest: + type: Any + def __init__(self, request) -> None: ... + def get_type(self): ... + def get_host(self): ... + def get_origin_req_host(self): ... + def get_full_url(self): ... + def is_unverifiable(self): ... + def has_header(self, name): ... + def get_header(self, name, default=None): ... + def add_header(self, key, val): ... + def add_unredirected_header(self, name, value): ... + def get_new_headers(self): ... + @property + def unverifiable(self): ... + @property + def origin_req_host(self): ... + @property + def host(self): ... + +class MockResponse: + def __init__(self, headers) -> None: ... + def info(self): ... + def getheaders(self, name): ... + +def extract_cookies_to_jar(jar, request, response): ... +def get_cookie_header(jar, request): ... +def remove_cookie_by_name(cookiejar, name, domain=None, path=None): ... + +class CookieConflictError(RuntimeError): ... + +class RequestsCookieJar(CookieJar, MutableMapping[str, str]): # type: ignore[misc] # conflicting __iter__ in the base classes + def get(self, name: str, default: str | None = None, domain: str | None = None, path: str | None = None) -> str | None: ... # type: ignore[override] + def set(self, name: str, value: str | Morsel[dict[str, str]], **kwargs) -> Cookie | None: ... + def iterkeys(self) -> Iterator[str]: ... + def keys(self) -> list[str]: ... # type: ignore[override] + def itervalues(self) -> Iterator[str]: ... + def values(self) -> list[str]: ... # type: ignore[override] + def iteritems(self) -> Iterator[tuple[str, str]]: ... + def items(self) -> list[tuple[str, str]]: ... # type: ignore[override] + def list_domains(self) -> list[str]: ... + def list_paths(self) -> list[str]: ... + def multiple_domains(self) -> bool: ... + def get_dict(self, domain: str | None = None, path: str | None = None) -> dict[str, str]: ... + def __getitem__(self, name: str) -> str: ... + def __setitem__(self, name: str, value: str | Morsel[dict[str, str]]) -> None: ... + def __delitem__(self, name: str) -> None: ... + def set_cookie(self, cookie: Cookie, *args, **kwargs): ... + def update(self, other: CookieJar | SupportsKeysAndGetItem[str, str]): ... # type: ignore[override] + def copy(self) -> RequestsCookieJar: ... + def get_policy(self) -> CookiePolicy: ... + +def create_cookie(name, value, **kwargs): ... +def morsel_to_cookie(morsel): ... +def cookiejar_from_dict(cookie_dict, cookiejar=None, overwrite=True): ... +def merge_cookies(cookiejar, cookies): ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/exceptions.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/exceptions.pyi new file mode 100644 index 00000000..130bce72 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/exceptions.pyi @@ -0,0 +1,42 @@ +from typing import Any + +from urllib3.exceptions import HTTPError as BaseHTTPError + +from .models import Request, Response +from .sessions import PreparedRequest + +class RequestException(OSError): + response: Response | None + request: Request | PreparedRequest | None + def __init__( + self, *args: object, request: Request | PreparedRequest | None = ..., response: Response | None = ... + ) -> None: ... + +class InvalidJSONError(RequestException): ... +class JSONDecodeError(InvalidJSONError): ... + +class HTTPError(RequestException): + request: Request | PreparedRequest | Any + response: Response | Any + +class ConnectionError(RequestException): ... +class ProxyError(ConnectionError): ... +class SSLError(ConnectionError): ... +class Timeout(RequestException): ... +class ConnectTimeout(ConnectionError, Timeout): ... +class ReadTimeout(Timeout): ... +class URLRequired(RequestException): ... +class TooManyRedirects(RequestException): ... +class MissingSchema(RequestException, ValueError): ... +class InvalidSchema(RequestException, ValueError): ... +class InvalidURL(RequestException, ValueError): ... +class InvalidHeader(RequestException, ValueError): ... +class InvalidProxyURL(InvalidURL): ... +class ChunkedEncodingError(RequestException): ... +class ContentDecodingError(RequestException, BaseHTTPError): ... +class StreamConsumedError(RequestException, TypeError): ... +class RetryError(RequestException): ... +class UnrewindableBodyError(RequestException): ... +class RequestsWarning(Warning): ... +class FileModeWarning(RequestsWarning, DeprecationWarning): ... +class RequestsDependencyWarning(RequestsWarning): ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/help.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/help.pyi new file mode 100644 index 00000000..f36d62ff --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/help.pyi @@ -0,0 +1,34 @@ +from typing import TypedDict + +class _VersionDict(TypedDict): + version: str + +class _OptionalVersionDict(TypedDict): + version: str | None + +class _PlatformDict(TypedDict): + system: str + release: str + +class _ImplementationDict(_VersionDict): + name: str + +class _PyOpenSSLDict(_OptionalVersionDict): + openssl_version: str + +class _InfoDict(TypedDict): + platform: _PlatformDict + implementation: _ImplementationDict + system_ssl: _VersionDict + using_pyopenssl: bool + using_charset_normalizer: bool + pyOpenSSL: _PyOpenSSLDict + urllib3: _VersionDict + chardet: _OptionalVersionDict + charset_normalizer: _OptionalVersionDict + cryptography: _VersionDict + idna: _VersionDict + requests: _VersionDict + +def info() -> _InfoDict: ... +def main() -> None: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/hooks.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/hooks.pyi new file mode 100644 index 00000000..f706016c --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/hooks.pyi @@ -0,0 +1,6 @@ +from typing import Any + +HOOKS: Any + +def default_hooks(): ... +def dispatch_hook(key, hooks, hook_data, **kwargs): ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/models.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/models.pyi new file mode 100644 index 00000000..d95a7382 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/models.pyi @@ -0,0 +1,167 @@ +import datetime +from _typeshed import Incomplete, MaybeNone, Unused +from collections.abc import Callable, Iterator +from json import JSONDecoder +from typing import Any +from typing_extensions import Self + +from urllib3 import exceptions as urllib3_exceptions, fields, filepost, util +from urllib3.response import HTTPResponse + +from . import auth, cookies, exceptions, hooks, status_codes, utils +from .adapters import HTTPAdapter +from .cookies import RequestsCookieJar +from .structures import CaseInsensitiveDict as CaseInsensitiveDict + +default_hooks = hooks.default_hooks +HTTPBasicAuth = auth.HTTPBasicAuth +cookiejar_from_dict = cookies.cookiejar_from_dict +get_cookie_header = cookies.get_cookie_header +RequestField = fields.RequestField +encode_multipart_formdata = filepost.encode_multipart_formdata +parse_url = util.parse_url +DecodeError = urllib3_exceptions.DecodeError +ReadTimeoutError = urllib3_exceptions.ReadTimeoutError +ProtocolError = urllib3_exceptions.ProtocolError +LocationParseError = urllib3_exceptions.LocationParseError +HTTPError = exceptions.HTTPError +MissingSchema = exceptions.MissingSchema +InvalidURL = exceptions.InvalidURL +ChunkedEncodingError = exceptions.ChunkedEncodingError +ContentDecodingError = exceptions.ContentDecodingError +ConnectionError = exceptions.ConnectionError +StreamConsumedError = exceptions.StreamConsumedError +guess_filename = utils.guess_filename +get_auth_from_url = utils.get_auth_from_url +requote_uri = utils.requote_uri +stream_decode_response_unicode = utils.stream_decode_response_unicode +to_key_val_list = utils.to_key_val_list +parse_header_links = utils.parse_header_links +iter_slices = utils.iter_slices +guess_json_utf = utils.guess_json_utf +super_len = utils.super_len +to_native_string = utils.to_native_string +codes = status_codes.codes + +REDIRECT_STATI: Incomplete +DEFAULT_REDIRECT_LIMIT: Incomplete +CONTENT_CHUNK_SIZE: Incomplete +ITER_CHUNK_SIZE: Incomplete + +class RequestEncodingMixin: + @property + def path_url(self) -> str: ... + +class RequestHooksMixin: + def register_hook(self, event, hook): ... + def deregister_hook(self, event, hook): ... + +class Request(RequestHooksMixin): + hooks: Incomplete + method: Incomplete + url: Incomplete + headers: Incomplete + files: Incomplete + data: Incomplete + json: Incomplete + params: Incomplete + auth: Incomplete + cookies: Incomplete + def __init__( + self, + method=None, + url=None, + headers=None, + files=None, + data=None, + params=None, + auth=None, + cookies=None, + hooks=None, + json=None, + ) -> None: ... + def prepare(self) -> PreparedRequest: ... + +class PreparedRequest(RequestEncodingMixin, RequestHooksMixin): + method: str | None + url: str | None + headers: CaseInsensitiveDict[str] + body: bytes | str | None + hooks: Incomplete + def __init__(self) -> None: ... + def prepare( + self, + method=None, + url=None, + headers=None, + files=None, + data=None, + params=None, + auth=None, + cookies=None, + hooks=None, + json=None, + ) -> None: ... + def copy(self) -> PreparedRequest: ... + def prepare_method(self, method) -> None: ... + def prepare_url(self, url, params) -> None: ... + def prepare_headers(self, headers) -> None: ... + def prepare_body(self, data, files, json=None) -> None: ... + def prepare_content_length(self, body: bytes | str | None) -> None: ... + def prepare_auth(self, auth, url="") -> None: ... + def prepare_cookies(self, cookies) -> None: ... + def prepare_hooks(self, hooks) -> None: ... + +class Response: + __attrs__: Incomplete + _content: bytes | None # undocumented + status_code: int + headers: CaseInsensitiveDict[str] + raw: HTTPResponse | MaybeNone + url: str + encoding: str | None + history: list[Response] + reason: str + cookies: RequestsCookieJar + elapsed: datetime.timedelta + request: PreparedRequest + connection: HTTPAdapter + def __init__(self) -> None: ... + def __bool__(self) -> bool: ... + def __nonzero__(self) -> bool: ... + def __iter__(self) -> Iterator[bytes]: ... + def __enter__(self) -> Self: ... + def __exit__(self, *args: Unused) -> None: ... + @property + def next(self) -> PreparedRequest | None: ... + @property + def ok(self) -> bool: ... + @property + def is_redirect(self) -> bool: ... + @property + def is_permanent_redirect(self) -> bool: ... + @property + def apparent_encoding(self) -> str: ... + def iter_content(self, chunk_size: int | None = 1, decode_unicode: bool = False) -> Iterator[Incomplete]: ... + def iter_lines( + self, chunk_size: int | None = 512, decode_unicode: bool = False, delimiter: str | bytes | None = None + ) -> Iterator[Incomplete]: ... + @property + def content(self) -> bytes | MaybeNone: ... + @property + def text(self) -> str: ... + def json( + self, + *, + cls: type[JSONDecoder] | None = ..., + object_hook: Callable[[dict[Any, Any]], Any] | None = ..., + parse_float: Callable[[str], Any] | None = ..., + parse_int: Callable[[str], Any] | None = ..., + parse_constant: Callable[[str], Any] | None = ..., + object_pairs_hook: Callable[[list[tuple[Any, Any]]], Any] | None = ..., + **kwds: Any, + ) -> Any: ... + @property + def links(self) -> dict[Incomplete, Incomplete]: ... + def raise_for_status(self) -> None: ... + def close(self) -> None: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/packages.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/packages.pyi new file mode 100644 index 00000000..22281ce4 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/packages.pyi @@ -0,0 +1,3 @@ +# requests also imports urllib3, idna, and chardet below +# requests.packages. The stubs don't reflect that and it's recommended to +# import these packages directly if needed. diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/py.typed b/.venv/lib/python3.12/site-packages/requests-stubs/py.typed new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/py.typed diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/sessions.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/sessions.pyi new file mode 100644 index 00000000..5427c520 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/sessions.pyi @@ -0,0 +1,316 @@ +from _typeshed import Incomplete, SupportsItems, SupportsRead, Unused +from collections.abc import Callable, Iterable, Mapping, MutableMapping +from typing import Any, TypedDict +from typing_extensions import Self, TypeAlias + +from urllib3._collections import RecentlyUsedContainer + +from . import adapters, auth as _auth, compat, cookies, exceptions, hooks, models, status_codes, utils +from .models import Response +from .structures import CaseInsensitiveDict as CaseInsensitiveDict + +_BaseAdapter: TypeAlias = adapters.BaseAdapter +OrderedDict = compat.OrderedDict +cookiejar_from_dict = cookies.cookiejar_from_dict +extract_cookies_to_jar = cookies.extract_cookies_to_jar +RequestsCookieJar = cookies.RequestsCookieJar +merge_cookies = cookies.merge_cookies +Request = models.Request +PreparedRequest = models.PreparedRequest +DEFAULT_REDIRECT_LIMIT = models.DEFAULT_REDIRECT_LIMIT +default_hooks = hooks.default_hooks +dispatch_hook = hooks.dispatch_hook +to_key_val_list = utils.to_key_val_list +default_headers = utils.default_headers +to_native_string = utils.to_native_string +TooManyRedirects = exceptions.TooManyRedirects +InvalidSchema = exceptions.InvalidSchema +ChunkedEncodingError = exceptions.ChunkedEncodingError +ContentDecodingError = exceptions.ContentDecodingError +HTTPAdapter = adapters.HTTPAdapter +requote_uri = utils.requote_uri +get_environ_proxies = utils.get_environ_proxies +get_netrc_auth = utils.get_netrc_auth +should_bypass_proxies = utils.should_bypass_proxies +get_auth_from_url = utils.get_auth_from_url +codes = status_codes.codes +REDIRECT_STATI = models.REDIRECT_STATI + +def preferred_clock() -> float: ... +def merge_setting(request_setting, session_setting, dict_class=...): ... +def merge_hooks(request_hooks, session_hooks, dict_class=...): ... + +class SessionRedirectMixin: + def resolve_redirects( + self, + resp, + req, + stream: bool = False, + timeout: Incomplete | None = None, + verify: bool = True, + cert: Incomplete | None = None, + proxies: Incomplete | None = None, + yield_requests: bool = False, + **adapter_kwargs, + ): ... + def rebuild_auth(self, prepared_request, response): ... + def rebuild_proxies(self, prepared_request, proxies): ... + def should_strip_auth(self, old_url, new_url): ... + def rebuild_method(self, prepared_request: PreparedRequest, response: Response) -> None: ... + def get_redirect_target(self, resp: Response) -> str | None: ... + +_Data: TypeAlias = ( + # used in requests.models.PreparedRequest.prepare_body + # + # case: is_stream + # see requests.adapters.HTTPAdapter.send + # will be sent directly to http.HTTPConnection.send(...) (through urllib3) + Iterable[bytes] + # case: not is_stream + # will be modified before being sent to urllib3.HTTPConnectionPool.urlopen(body=...) + # see requests.models.RequestEncodingMixin._encode_params + # see requests.models.RequestEncodingMixin._encode_files + # note that keys&values are converted from Any to str by urllib.parse.urlencode + | str + | bytes + | SupportsRead[str | bytes] + | list[tuple[Any, Any]] + | tuple[tuple[Any, Any], ...] + | Mapping[Any, Any] +) +_Auth: TypeAlias = tuple[str, str] | _auth.AuthBase | Callable[[PreparedRequest], PreparedRequest] +_Cert: TypeAlias = str | tuple[str, str] +# Files is passed to requests.utils.to_key_val_list() +_FileName: TypeAlias = str | None +_FileContent: TypeAlias = SupportsRead[str | bytes] | str | bytes +_FileContentType: TypeAlias = str +_FileCustomHeaders: TypeAlias = Mapping[str, str] +_FileSpecTuple2: TypeAlias = tuple[_FileName, _FileContent] +_FileSpecTuple3: TypeAlias = tuple[_FileName, _FileContent, _FileContentType] +_FileSpecTuple4: TypeAlias = tuple[_FileName, _FileContent, _FileContentType, _FileCustomHeaders] +_FileSpec: TypeAlias = _FileContent | _FileSpecTuple2 | _FileSpecTuple3 | _FileSpecTuple4 +_Files: TypeAlias = Mapping[str, _FileSpec] | Iterable[tuple[str, _FileSpec]] +_Hook: TypeAlias = Callable[[Response], Any] +_HooksInput: TypeAlias = Mapping[str, Iterable[_Hook] | _Hook] + +_ParamsMappingKeyType: TypeAlias = str | bytes | int | float +_ParamsMappingValueType: TypeAlias = str | bytes | int | float | Iterable[str | bytes | int | float] | None +_Params: TypeAlias = ( + SupportsItems[_ParamsMappingKeyType, _ParamsMappingValueType] + | tuple[_ParamsMappingKeyType, _ParamsMappingValueType] + | Iterable[tuple[_ParamsMappingKeyType, _ParamsMappingValueType]] + | str + | bytes +) +_TextMapping: TypeAlias = MutableMapping[str, str] +_HeadersUpdateMapping: TypeAlias = Mapping[str, str | bytes | None] +_Timeout: TypeAlias = float | tuple[float, float] | tuple[float, None] +_Verify: TypeAlias = bool | str + +class _Settings(TypedDict): + verify: _Verify | None + proxies: _TextMapping + stream: bool + cert: _Cert | None + +class Session(SessionRedirectMixin): + __attrs__: Any + # See https://github.com/psf/requests/issues/5020#issuecomment-989082461: + # requests sets this as a CaseInsensitiveDict, but users may set it to any MutableMapping + headers: MutableMapping[str, str | bytes] + auth: _Auth | None + proxies: _TextMapping + # Don't complain if: + # - value is assumed to be a list (which it is by default) + # - a _Hook is assigned directly, without wrapping it in a list (also works) + hooks: dict[str, list[_Hook] | Any] + params: _Params + stream: bool + verify: _Verify | None + cert: _Cert | None + max_redirects: int + trust_env: bool + cookies: RequestsCookieJar + adapters: MutableMapping[str, adapters.BaseAdapter] + redirect_cache: RecentlyUsedContainer[Any, Any] + def __init__(self) -> None: ... + def __enter__(self) -> Self: ... + def __exit__(self, *args: Unused) -> None: ... + def prepare_request(self, request: Request) -> PreparedRequest: ... + def request( + self, + method: str | bytes, + url: str | bytes, + params: _Params | None = None, + data: _Data | None = None, + headers: _HeadersUpdateMapping | None = None, + cookies: None | RequestsCookieJar | _TextMapping = None, + files: _Files | None = None, + auth: _Auth | None = None, + timeout: _Timeout | None = None, + allow_redirects: bool = True, + proxies: _TextMapping | None = None, + hooks: _HooksInput | None = None, + stream: bool | None = None, + verify: _Verify | None = None, + cert: _Cert | None = None, + json: Incomplete | None = None, + ) -> Response: ... + def get( + self, + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., + ) -> Response: ... + def options( + self, + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., + ) -> Response: ... + def head( + self, + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., + ) -> Response: ... + def post( + self, + url: str | bytes, + data: _Data | None = None, + json: Incomplete | None = None, + *, + params: _Params | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + ) -> Response: ... + def put( + self, + url: str | bytes, + data: _Data | None = None, + *, + params: _Params | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., + ) -> Response: ... + def patch( + self, + url: str | bytes, + data: _Data | None = None, + *, + params: _Params | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., + ) -> Response: ... + def delete( + self, + url: str | bytes, + *, + params: _Params | None = ..., + data: _Data | None = ..., + headers: _HeadersUpdateMapping | None = ..., + cookies: RequestsCookieJar | _TextMapping | None = ..., + files: _Files | None = ..., + auth: _Auth | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + proxies: _TextMapping | None = ..., + hooks: _HooksInput | None = ..., + stream: bool | None = ..., + verify: _Verify | None = ..., + cert: _Cert | None = ..., + json: Incomplete | None = ..., + ) -> Response: ... + def send( + self, + request: PreparedRequest, + *, + stream: bool | None = ..., + verify: _Verify | None = ..., + proxies: _TextMapping | None = ..., + cert: _Cert | None = ..., + timeout: _Timeout | None = ..., + allow_redirects: bool = ..., + **kwargs: Any, + ) -> Response: ... + def merge_environment_settings( + self, + url: str | bytes | None, + proxies: _TextMapping | None, + stream: bool | None, + verify: _Verify | None, + cert: _Cert | None, + ) -> _Settings: ... + def get_adapter(self, url: str) -> _BaseAdapter: ... + def close(self) -> None: ... + def mount(self, prefix: str | bytes, adapter: _BaseAdapter) -> None: ... + +def session() -> Session: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/status_codes.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/status_codes.pyi new file mode 100644 index 00000000..4660b476 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/status_codes.pyi @@ -0,0 +1,3 @@ +from typing import Any + +codes: Any diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/structures.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/structures.pyi new file mode 100644 index 00000000..53dd5f56 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/structures.pyi @@ -0,0 +1,25 @@ +from collections.abc import Iterable, Iterator, Mapping, MutableMapping +from typing import Any, Generic, TypeVar, overload + +_D = TypeVar("_D") +_VT = TypeVar("_VT") + +class CaseInsensitiveDict(MutableMapping[str, _VT], Generic[_VT]): + def __init__(self, data: Mapping[str, _VT] | Iterable[tuple[str, _VT]] | None = None, **kwargs: _VT) -> None: ... + def lower_items(self) -> Iterator[tuple[str, _VT]]: ... + def __setitem__(self, key: str, value: _VT) -> None: ... + def __getitem__(self, key: str) -> _VT: ... + def __delitem__(self, key: str) -> None: ... + def __iter__(self) -> Iterator[str]: ... + def __len__(self) -> int: ... + def copy(self) -> CaseInsensitiveDict[_VT]: ... + +class LookupDict(dict[str, _VT]): + name: Any + def __init__(self, name: Any = None) -> None: ... + def __getitem__(self, key: str) -> _VT | None: ... # type: ignore[override] + def __setattr__(self, attr: str, value: _VT, /) -> None: ... + @overload + def get(self, key: str, default: None = None) -> _VT | None: ... + @overload + def get(self, key: str, default: _D | _VT) -> _D | _VT: ... diff --git a/.venv/lib/python3.12/site-packages/requests-stubs/utils.pyi b/.venv/lib/python3.12/site-packages/requests-stubs/utils.pyi new file mode 100644 index 00000000..3edd7c10 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/requests-stubs/utils.pyi @@ -0,0 +1,70 @@ +import sys +from _typeshed import Incomplete, StrOrBytesPath +from collections.abc import Generator, Iterable, Mapping +from contextlib import _GeneratorContextManager +from io import BufferedWriter +from typing import AnyStr +from typing_extensions import TypeAlias + +from . import compat, cookies, exceptions, structures +from .models import PreparedRequest, Request + +_Uri: TypeAlias = str | bytes +OrderedDict = compat.OrderedDict +cookiejar_from_dict = cookies.cookiejar_from_dict +CaseInsensitiveDict = structures.CaseInsensitiveDict +InvalidURL = exceptions.InvalidURL + +NETRC_FILES: tuple[str, str] +DEFAULT_CA_BUNDLE_PATH: Incomplete +DEFAULT_PORTS: dict[str, int] +DEFAULT_ACCEPT_ENCODING: str + +def dict_to_sequence(d): ... +def super_len(o): ... +def get_netrc_auth(url: _Uri, raise_errors: bool = False) -> tuple[str, str] | None: ... +def guess_filename(obj): ... +def extract_zipped_paths(path): ... +def atomic_open(filename: StrOrBytesPath) -> _GeneratorContextManager[BufferedWriter]: ... +def from_key_val_list(value): ... +def to_key_val_list(value): ... +def parse_list_header(value): ... +def parse_dict_header(value): ... +def unquote_header_value(value, is_filename: bool = False): ... +def dict_from_cookiejar(cj): ... +def add_dict_to_cookiejar(cj, cookie_dict): ... +def get_encodings_from_content(content): ... +def get_encoding_from_headers(headers: Mapping[str, str]) -> str | None: ... +def stream_decode_response_unicode(iterator, r): ... +def iter_slices(string: str, slice_length: int | None) -> Generator[str, None, None]: ... +def get_unicode_from_response(r): ... + +UNRESERVED_SET: frozenset[str] + +def unquote_unreserved(uri: str) -> str: ... +def requote_uri(uri: str) -> str: ... +def address_in_network(ip: str, net: str) -> bool: ... +def dotted_netmask(mask: int) -> str: ... +def is_ipv4_address(string_ip: str) -> bool: ... +def is_valid_cidr(string_network: str) -> bool: ... +def set_environ(env_name: str, value: None) -> _GeneratorContextManager[None]: ... +def should_bypass_proxies(url: _Uri, no_proxy: Iterable[str] | None) -> bool: ... +def get_environ_proxies(url: _Uri, no_proxy: Iterable[str] | None = None) -> dict[Incomplete, Incomplete]: ... +def select_proxy(url: _Uri, proxies: Mapping[str, str] | None) -> str: ... +def resolve_proxies( + request: Request | PreparedRequest, proxies: dict[str, str] | None, trust_env: bool = True +) -> dict[str, str]: ... +def default_user_agent(name: str = "python-requests") -> str: ... +def default_headers() -> CaseInsensitiveDict[str]: ... +def parse_header_links(value: str) -> list[dict[str, str]]: ... +def guess_json_utf(data): ... +def prepend_scheme_if_needed(url, new_scheme): ... +def get_auth_from_url(url: _Uri) -> tuple[str, str]: ... +def to_native_string(string, encoding="ascii"): ... +def urldefragauth(url: _Uri): ... +def rewind_body(prepared_request: PreparedRequest) -> None: ... +def check_header_validity(header: tuple[AnyStr, AnyStr]) -> None: ... + +if sys.platform == "win32": + def proxy_bypass_registry(host: str) -> bool: ... + def proxy_bypass(host: str) -> bool: ... |