Sindbad~EG File Manager
�
%ٜgC �
� � d Z ddlmZ ddlZddlZddlZddlZddlmZ ddlm Z ddl
mZ ddlm
Z
dd lmZ dd
lmZmZmZ ddlmZmZ ddlmZmZmZ dd
lmZmZ ddlmZ ddl m!Z! ddl"m#Z# ddl$Z$e$jJ jM d� s, ejN de$jJ �d�e jP � n%e$jR dk r e*de$jJ �d�� �dZ+dZ,eZdZ- ej\ e/� ja e� � ejb f d$d�Z2[ ejf de jh d�� ejf de jj d�� e jl fd%d�Z7 e� Z8dddddddddd � d&d!�Z9ejt d"k( rdd#l;m<Z< e<� yy# e*$ r Y ��w xY w)'ze
Python HTTP library with thread-safe connection pooling, file post support, user friendly, and more
� )�annotationsN)�NullHandler� )�
exceptions)�
_TYPE_BODY)�HTTPHeaderDict)�__version__)�HTTPConnectionPool�HTTPSConnectionPool�connection_from_url)�_TYPE_FIELDS�encode_multipart_formdata)�PoolManager�ProxyManager�proxy_from_url)�BaseHTTPResponse�HTTPResponse)�make_headers)�Retry)�TimeoutzOpenSSL zUurllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with z5. See: https://github.com/urllib3/urllib3/issues/3020)r r r z5. See: https://github.com/urllib3/urllib3/issues/2168z(Andrey Petrov (andrey.petrov@shazow.net)�MIT)r
r r r r r r r �add_stderr_loggerr �disable_warningsr r r �requestr c � � t j t � }t j � }|j t j
d� � |j
|� |j | � |j dt � |S )z�
Helper for quickly adding a StreamHandler to the logger. Useful for
debugging.
Returns the handler after adding it.
z%%(asctime)s %(levelname)s %(message)sz,Added a stderr logging handler to logger: %s) �logging� getLogger�__name__�
StreamHandler�setFormatter� Formatter�
addHandler�setLevel�debug)�level�logger�handlers �;/usr/local/lib/python3.12/site-packages/urllib3/__init__.pyr r J sj � � �
�
�x�
(�F��#�#�%�G�����*�*�+R�S�T�
���g��
�O�O�E��
�L�L�?��J��N� �alwaysT)�append�defaultc �0 � t j d| � y)z<
Helper for quickly disabling all urllib3 warnings.
�ignoreN)�warnings�simplefilter)�categorys r( r r k s � �
���(�H�-r) � � �body�fields�headers�preload_content�decode_content�redirect�retries�timeout�jsonc
�B � t j | ||||||||| |
�� S )a�
A convenience, top-level request method. It uses a module-global ``PoolManager`` instance.
Therefore, its side effects could be shared across dependencies relying on it.
To avoid side effects create a new ``PoolManager`` instance and use it instead.
The method does not accept low-level ``**urlopen_kw`` keyword arguments.
:param method:
HTTP request method (such as GET, POST, PUT, etc.)
:param url:
The URL to perform the request on.
:param body:
Data to send in the request body, either :class:`str`, :class:`bytes`,
an iterable of :class:`str`/:class:`bytes`, or a file-like object.
:param fields:
Data to encode and send in the request body.
:param headers:
Dictionary of custom headers to send, such as User-Agent,
If-None-Match, etc.
:param bool preload_content:
If True, the response's body will be preloaded into memory.
:param bool decode_content:
If True, will attempt to decode the body based on the
'content-encoding' header.
:param redirect:
If True, automatically handle redirects (status codes 301, 302,
303, 307, 308). Each redirect counts as a retry. Disabling retries
will disable redirect, too.
:param retries:
Configure the number of retries to allow before raising a
:class:`~urllib3.exceptions.MaxRetryError` exception.
If ``None`` (default) will retry 3 times, see ``Retry.DEFAULT``. Pass a
:class:`~urllib3.util.retry.Retry` object for fine-grained control
over different types of retries.
Pass an integer number to retry connection errors that many times,
but no other types of errors. Pass zero to never retry.
If ``False``, then retries are disabled and any exception is raised
immediately. Also, instead of raising a MaxRetryError on redirects,
the redirect response will be returned.
:type retries: :class:`~urllib3.util.retry.Retry`, False, or an int.
:param timeout:
If specified, overrides the default timeout for this one
request. It may be a float (in seconds) or an instance of
:class:`urllib3.util.Timeout`.
:param json:
Data to encode and send as JSON with UTF-encoded in the request body.
The ``"Content-Type"`` header will be set to ``"application/json"``
unless specified otherwise.
r3 )�
_DEFAULT_POOLr )�method�urlr4 r5 r6 r7 r8 r9 r: r; r<