3 K”Re� ã @ s° d Z ddlmZ ddlmZ ddlmZ ddlZddlZddl Z ddl Z ddlZddlZddl Z ddlmZ ddlmZmZ ddlmZ d d lmZ dd„ ZG d d„ deƒZdS )zpupload_docs Implements a Distutils 'upload_docs' subcommand (upload documentation to PyPI's pythonhosted.org). é )Ústandard_b64encode)Úlog)ÚDistutilsOptionErrorN)Úsix)Úhttp_clientÚurllib)Úiter_entry_pointsé )Úuploadc C s t jr dnd}| jd|ƒS )NÚsurrogateescapeÚstrictzutf-8)r ÚPY3Úencode)ÚsÚerrors© r ú”/builddir/build/BUILDROOT/alt-python36-setuptools-38.5.2-7.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/setuptools/command/upload_docs.pyÚ_encode s r c @ s‚ e Zd ZdZdZdddej fddgZejZdd„ Zd efgZ dd„ Z dd„ Zdd„ Zdd„ Z edd„ ƒZedd„ ƒZdd„ ZdS )Úupload_docszhttps://pypi.python.org/pypi/zUpload documentation to PyPIzrepository=Úrzurl of repository [default: %s]ú show-responseNú&display full response text from serverúupload-dir=údirectory to uploadc C s$ | j d kr xtddƒD ]}dS W d S )Nzdistutils.commandsÚbuild_sphinxT)Ú upload_dirr )ÚselfÚepr r r Ú has_sphinx/ s zupload_docs.has_sphinxr c C s t j| ƒ d | _d | _d S )N)r Úinitialize_optionsr Ú target_dir)r r r r r 6 s zupload_docs.initialize_optionsc C sˆ t j| ƒ | jd krN| jƒ r0| jdƒ}|j| _q`| jdƒ}tjj |j dƒ| _n| jdƒ | j| _d| jkrtt jdƒ | jd| j ƒ d S )Nr ÚbuildZdocsr zpypi.python.orgz3Upload_docs command is deprecated. Use RTD instead.zUsing upload directory %s)r Úfinalize_optionsr r Úget_finalized_commandZbuilder_target_dirr ÚosÚpathÚjoinÚ build_baseÚensure_dirnameÚ repositoryr ÚwarnÚannounce)r r r! r r r r" ; s zupload_docs.finalize_optionsc C s¼ t j|dƒ}z | j| jƒ xŽtj| jƒD ]~\}}}|| jkrT| rTd}t|| j ƒ‚xP|D ]H}tjj||ƒ}|t | jƒd … j tjjƒ} tjj| |ƒ} |j|| ƒ qZW q(W W d |j ƒ X d S )NÚwz'no files found in upload directory '%s')ÚzipfileÚZipFileÚmkpathr r$ Úwalkr r% r&