HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/site-packages/setuptools/command/__pycache__/upload_docs.cpython-310.pyc
o

��iF�@s�dZddlmZddlmZddlmZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlmZddlmZd	d
lmZdd�ZGd
d�de�ZdS)z|upload_docs

Implements a Distutils 'upload_docs' subcommand (upload documentation to
sites other than PyPi such as devpi).
�)�standard_b64encode)�log)�DistutilsOptionErrorN�)�metadata)�SetuptoolsDeprecationWarning�)�uploadcCs|�dd�S)Nzutf-8�surrogateescape)�encode)�s�r
�I/usr/local/lib/python3.10/site-packages/setuptools/command/upload_docs.py�_encodesrc@s�eZdZdZdZdddejfddgZejZdd	�Zd
efgZ	dd�Z
d
d�Zdd�Zdd�Z
edd��Zedd��Zdd�ZdS)�upload_docszhttps://pypi.python.org/pypi/z;Upload documentation to sites other than PyPi such as devpizrepository=�rzurl of repository [default: %s])z
show-responseNz&display full response text from server)zupload-dir=Nzdirectory to uploadcCst|jduotjddd��S)Nzdistutils.commands�build_sphinx)�group�name)�bool�
upload_dirr�entry_points��selfr
r
r�
has_sphinx0s
�zupload_docs.has_sphinxrcCst�|�d|_d|_dS)N)r	�initialize_optionsr�
target_dirrr
r
rr8s

zupload_docs.initialize_optionscCs�t�d�t�|�|jdur0|��r!|�d�}t|j�d|_	n|�d�}t
j�|j
d�|_	n	|�d�|j|_	|�d|j	�dS)NzWUpload_docs command is deprecated. Use Read the Docs (https://readthedocs.org) instead.r�html�build�docsrzUsing upload directory %s)r�warnr	�finalize_optionsrrZget_finalized_command�dictZbuilder_target_dirsr�os�path�joinZ
build_baseZensure_dirname�announce)rrrr
r
rr!=s�




zupload_docs.finalize_optionscCs�t�|d�}zP|�|j�t�|j�D]<\}}}||jkr(|s(d}t||j��|D]$}tj�||�}|t	|j�d��
tjj�}	tj�|	|�}
|�||
�q*qW|�
�dS|�
�w)N�wz'no files found in upload directory '%s')�zipfile�ZipFileZmkpathrr#�walkrr$r%�len�lstrip�sep�write�close)r�filename�zip_file�root�dirs�files�tmplr�fullZrelative�destr
r
r�create_zipfileNs��
zupload_docs.create_zipfilec	Cs|t�dt�|��D]}|�|�q
t��}|jj�	�}t
j�|d|�}z|�
|�|�|�Wt�|�dSt�|�w)Nziupload_docs is deprecated and will be removed in a future version. Use tools like httpie or curl instead.z%s.zip)�warningsr rZget_sub_commands�run_command�tempfile�mkdtemp�distributionr�get_namer#r$r%r8�upload_file�shutil�rmtree)r�cmd_nameZtmp_dirrr1r
r
r�run^s�
zupload_docs.runccs��|\}}d|}t|t�s|g}|D]3}t|t�r'|d|d7}|d}nt|�}|Vt|�VdV|V|rF|dd�dkrFdVqdS)	Nz*
Content-Disposition: form-data; name="%s"z; filename="%s"rrs

����
�
)�
isinstance�list�tupler)�item�sep_boundary�key�values�title�valuer
r
r�_build_partrs$�



��zupload_docs._build_partcCsnd}d|�d�}|d}|df}tj|j|d�}t||���}tj�|�}t�||�}	d|}
d�	|	�|
fS)	z=
        Build up the MIME payload for the POST data
        z3--------------GHSKFJDLGDS7543FJKLFHRE75642756743254s
--�asciis--rF)rKz multipart/form-data; boundary=%s�)
r�	functools�partialrP�map�items�	itertools�chain�
from_iterabler%)�cls�data�boundaryrKZend_boundaryZ	end_itemsZbuilderZpart_groups�partsZ
body_items�content_typer
r
r�_build_multipart�s�zupload_docs._build_multipartc
CsTt|d��}|��}Wd�n1swY|jj}d|��tj�|�|fd�}t|j	d|j
�}t|��d�}d|}|�
|�\}}	d|j}
|�|
tj�tj�|j�\}}}
}}}|sf|sf|rhJ�|dkrstj�|�}n|d	kr~tj�|�}ntd
|��d}z-|��|�d|
�|	}|�d
|�|�dtt|���|�d|�|��|� |�Wnt!j"y�}z|�t|�tj#�WYd}~dSd}~ww|�$�}|j%dkr�d|j%|j&f}
|�|
tj�n0|j%dk�r|�'d�}|dur�d|��}d|}
|�|
tj�nd|j%|j&f}
|�|
tj#�|j(�r(t)d|��d�dSdS)N�rbZ
doc_upload)z:actionr�content�:rQzBasic zSubmitting documentation to %s�http�httpszunsupported schema ��POSTzContent-typezContent-length�
Authorization��zServer response (%s): %si-ZLocationzhttps://pythonhosted.org/%s/zUpload successful. Visit %szUpload failed (%s): %szK---------------------------------------------------------------------------)*�open�readr=rr>r#r$�basenamer�username�passwordr�decoder_�
repositoryr&r�INFO�urllib�parse�urlparserc�client�HTTPConnection�HTTPSConnection�AssertionError�connect�
putrequest�	putheader�strr+�
endheaders�send�socket�error�ERROR�getresponse�status�reason�	getheaderZ
show_response�print)rr0�fra�metar[�credentials�auth�body�ct�msgZschema�netloc�url�params�query�	fragments�connr^�er�locationr
r
rr?�sh
��
���

�zupload_docs.upload_fileN)�__name__�
__module__�__qualname__�DEFAULT_REPOSITORY�descriptionr	Zuser_optionsZboolean_optionsrZsub_commandsrr!r8rC�staticmethodrP�classmethodr_r?r
r
r
rr s*��


r)�__doc__�base64r�	distutilsrZdistutils.errorsrr#r~r(r;r@rWrS�http.clientrc�urllib.parserqr9Z
_importlibrrerr	rrr
r
r
r�<module>s&