Format: application/x-python-code
⬇ Download File (6.9 KB)
   1  o
   2  
   3  C'hc!�@s�ddlmZddlZddlZddlmZddlmZmZm	Z	ddl
   4  mZejr+ddl
   5  Z
   6  gd�ZGdd	�d	�Ze�Z	
   7  		
   8  d d!dd�ZGdd�d�ZGdd�d�ZGdd�d�Zedd�Zeddd�ZdZdS)"�)�annotationsN�)�Headers)�	CertTypes�HeaderTypes�TimeoutTypes)�URL)�Limits�Proxy�Timeout�create_ssl_contextc@seZdZdS)�	UnsetTypeN)�__name__�
   9  __module__�__qualname__�rr�CC:\Users\shubh\Videos\agent\nova\Lib\site-packages\httpx/_config.pyr
  10  sr
  11  T�verify�ssl.SSLContext | str | bool�cert�CertTypes | None�	trust_env�bool�return�ssl.SSLContextcCsddl}ddl}ddl}|dur=|r"tj�d�r"|jtjdd�}nN|r4tj�d�r4|jtjdd�}n<|j|��d�}n3|durO|�|j	�}d|_
  12  |j|_n!t
  13  |t�rnd}|�|t�tj�|�rh|j|d�S|j|d�S|}|r�d	}|�|t�t
  14  |t�r�|�|�|S|j|�|S)
  15  NrTZ
  16  SSL_CERT_FILE)�cafileZSSL_CERT_DIR)�capathFz�`verify=<str>` is deprecated. Use `verify=ssl.create_default_context(cafile=...)` or `verify=ssl.create_default_context(capath=...)` instead.zz`cert=...` is deprecated. Use `verify=<ssl_context>` instead,with `.load_cert_chain()` to configure the certificate chain.)�ssl�warnings�certifi�os�environ�get�create_default_context�where�
  17  SSLContext�PROTOCOL_TLS_CLIENT�check_hostname�	CERT_NONE�verify_mode�
  18  isinstance�str�warn�DeprecationWarning�path�isdir�load_cert_chain)rrrrrr�ctx�messagerrrrs<
  19  
  20  ��
  21  
  22  
  23  �rc@sHeZdZdZefeeeed�ddd
  24  �Zddd�Zddd�Zddd�ZdS)ra�
  25      Timeout configuration.
  26  
  27      **Usage**:
  28  
  29      Timeout(None)               # No timeouts.
  30      Timeout(5.0)                # 5s timeout on all operations.
  31      Timeout(None, connect=5.0)  # 5s timeout on connect, no other timeouts.
  32      Timeout(5.0, connect=10.0)  # 10s timeout on connect. 5s timeout elsewhere.
  33      Timeout(5.0, pool=None)     # No timeout on acquiring connection from pool.
  34                                  # 5s timeout elsewhere.
  35      ��connect�read�write�pool�timeout�TimeoutTypes | UnsetTyper4�None | float | UnsetTyper5r6r7r�NonecCsdt|t�r/|tusJ�|tusJ�|tusJ�|tusJ�|j|_|j|_|j|_|j|_dSt|t�r]|d|_|d|_t|�dkrFdn|d|_t|�dkrVd|_dS|d|_dSt|t	�st|t	�st|t	�st|t	�s||_||_||_||_dSt|t	�r�t
  36  d��t|t	�r�|n||_t|t	�r�|n||_t|t	�r�|n||_t|t	�r�|n||_dS)Nrr���zShttpx.Timeout must either include a default, or set all four parameters explicitly.)r*r�UNSETr4r5r6r7�tuple�lenr
  37  �
  38  ValueError)�selfr8r4r5r6r7rrr�__init__VsD
  39  	
  40  
  41  
  42  $����
  43  
  44  �zTimeout.__init__�dict[str, float | None]cCs|j|j|j|jd�S)Nr3r3�rCrrr�as_dict�s
  45  �zTimeout.as_dict�other�
  46  typing.AnyrcCs<t||j�o|j|jko|j|jko|j|jko|j|jkS�N)r*�	__class__r4r5r6r7�rCrHrrr�__eq__�s
  47  �
  48  �
  49  �
  50  �zTimeout.__eq__r+c
  51  Cs`|jj}t|j|j|j|jh�dkr|�d|j�d�S|�d|j�d|j�d|j�d|j�d�
  52  S)Nrz	(timeout=�)z	(connect=z, read=z, write=z, pool=)rKrrAr4r5r6r7�rC�
  53  class_namerrr�__repr__�s����zTimeout.__repr__N)r8r9r4r:r5r:r6r:r7r:rr;)rrE�rHrIrr�rr+)	rrr�__doc__r?rDrGrMrQrrrrrHs��
  54  .
  55  	rc@s8eZdZdZdddd�ddd
  56  �Zddd�Zddd�ZdS)r	a�
  57      Configuration for limits to various client behaviors.
  58  
  59      **Parameters:**
  60  
  61      * **max_connections** - The maximum number of concurrent connections that may be
  62              established.
  63      * **max_keepalive_connections** - Allow the connection pool to maintain
  64              keep-alive connections below this point. Should be less than or equal
  65              to `max_connections`.
  66      * **keepalive_expiry** - Time limit on idle keep-alive connections in seconds.
  67      N�@��max_connections�max_keepalive_connections�keepalive_expiryrW�
  68  int | NonerXrY�float | Nonerr;cCs||_||_||_dSrJrV)rCrWrXrYrrrrD�s
  69  zLimits.__init__rHrIrcCs0t||j�o|j|jko|j|jko|j|jkSrJ)r*rKrWrXrYrLrrrrM�s
  70  �
  71  �
  72  �z
  73  Limits.__eq__r+cCs*|jj}|�d|j�d|j�d|j�d�S)Nz(max_connections=z, max_keepalive_connections=z, keepalive_expiry=rN)rKrrWrXrYrOrrrrQ�s���zLimits.__repr__)rWrZrXrZrYr[rr;rRrS)rrrrTrDrMrQrrrrr	�s�
  74  r	c@s8eZdZdddd�dd
  75  d�Zeddd��Zddd�ZdS)r
  76  N)�ssl_context�auth�headers�url�	URL | strr\�ssl.SSLContext | Noner]�tuple[str, str] | Noner^�HeaderTypes | Nonerr;cCsjt|�}t|�}|jdvrtd|����|js|jr'|j|jf}|jddd�}||_||_||_	||_
  77  dS)N)�http�httpsZsocks5Zsocks5hzUnknown scheme for proxy URL )�username�password)rr�schemerBrfrg�	copy_withr_r]r^r\)rCr_r\r]r^rrrrD�s
  78  
  79  zProxy.__init__�tuple[bytes, bytes] | NonecCs.|jdurdS|jd�d�|jd�d�fS)Nrzutf-8r)r]�encoderFrrr�raw_auth�s
  80  
  81  ���zProxy.raw_authr+cCsd|jr
  82  |jddfnd}t|j��}|rd|��nd}|jr&dt|j���nd}d|�|�|�d�S)Nrz********z, auth=�z
  83  , headers=zProxy(rN)r]r+r_r^�dict)rCr]Zurl_str�auth_strZheaders_strrrrrQ�s
  84  zProxy.__repr__)
  85  r_r`r\rar]rbr^rcrr;)rrjrS)rrrrD�propertyrlrQrrrrr
  86  �s�r
  87  rU)r8�d�)rWrX)TNT)rrrrrrrr)�
  88  __future__rr �typingZ_modelsr�_typesrrrZ_urlsr�
  89  TYPE_CHECKINGr�__all__r
  90  r?rrr	r
  91  ZDEFAULT_TIMEOUT_CONFIGZDEFAULT_LIMITSZDEFAULT_MAX_REDIRECTSrrrr�<module>s*�1W*
  92  -