Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib/python3.7/site-packages/pbr/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib/python3.7/site-packages/pbr/__pycache__/builddoc.cpython-37.pyc

B

�V|#�
@sddlmZddlZddlZddlZddlZddlZyddlZWnek
r\ddl	ZYnXy4ddl
mZddl
mZddl
m
Z
ddl
mZWn.ek
r�Zzeee���WddZ[XYnXddlmZddlmZd	Zd
d�ZGdd
�d
ej�ZGdd�de�ZdS)�)�logN)�apidoc)�application)�config)�
setup_command)�git)�optionszi%(heading)s
%(underline)s

.. automodule:: %(module)s
  :members:
  :undoc-members:
  :show-inheritance:
cCsDx>|D]6}|�d�r|dkrd|d|�dd�|dd�f<qWdS)Nz.pyz__init__.pyTz%s.%s�/�.���)�endswith�replace)�arg�dirname�files�filename�r�=/opt/alt/python37/lib/python3.7/site-packages/pbr/builddoc.py�
_find_modules<s
rc@sReZdZdZddgZdd�Zddd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�
LocalBuildDoc�build_sphinx�html�mancCsJ|j�d�}d|kr,tj�|ddd�}nd}tj�|�sFt�|�|S)Nr�
source_dir�Zapizdoc/source/api)�distribution�get_option_dict�os�path�join�exists�makedirs)�self�option_dictrrrr�_get_source_dirHs
zLocalBuildDoc._get_source_dirNcs>t�dtj�tj��i}|��}x>|jjD]2}d|kr.x$t�	|�D]\}}}t
|||�qFWq.W�fdd��t�fdd�|��D��}tj�
|d�}	t|	d���}
|
�d	�x�|D]x}tj�
|d
|�}d|}
dt|
�}t||
|d
�}t�d|�t|d��}|�t|�WdQRX|
�d|�q�WWdQRXdS)Nz[pbr] Autodocumenting from %sr
cst�fdd��D��S)Nc3s|]}t��|�VqdS)N)�fnmatch)�.0�pat)�modulerr�	<genexpr>]szDLocalBuildDoc.generate_autoindex.<locals>.include.<locals>.<genexpr>)�any)r()�excluded_modules)r(r�include\sz1LocalBuildDoc.generate_autoindex.<locals>.includec3s|]}�|�r|VqdS)Nr)r&�mod)r,rrr)`sz3LocalBuildDoc.generate_autoindex.<locals>.<genexpr>z
autoindex.rst�wz.. toctree::
   :maxdepth: 1

z%s.rstzThe :mod:`%s` Module�=)r(�heading�	underlinez[pbr] Generating %sz
   %s.rst
)r�inforr�abspath�curdirr$r�packages�walkr�sorted�keysr�open�write�len�dict�
_rst_template)r"r+�modulesr�pkg�dirpath�dirnamesrZmodule_listZautoindex_filenameZ	autoindexr(�output_filenamer0r1�values�output_filer)r+r,r�generate_autoindexRs4

z LocalBuildDoc.generate_autoindexcCs,|��}ddddd|g}t�||j�dS)Nrr
z-H�Modulesz-o)r$r�main�autodoc_tree_excludes)r"r�cmdrrr�_sphinx_treeuszLocalBuildDoc._sphinx_treec
Cs�|jst��}ntj}i}|jr*|j|d<|jr:|j|d<|jrJ|j|d<t�	|j
dig�}t�d�j}t�
|�t�
d�kr�|�tj�n|��|jdkr�t|j�dkr�dStj|j|j
|j|j|j|||jd	d
�	}y|j|jd�Wnttk
�r\}zTddlm}t||j ��rJtj!�"d
�tj#�"|j$d�%dd��tj#�"d�n�Wdd}~XYnX|j&�r�|jj'|jj(}|j�)d�}	t*�+||	�dS)N�version�release�todayzconf.py�sphinxz1.3.1rrF)ZfreshenvZwarningiserror)Z	force_all)�utilszreST markup error:
�ascii�backslashreplace�
�index),�verbose�	cStringIO�StringIO�sys�stdoutrKrLrMrZConfigZ
config_dir�
pkg_resources�get_distribution�
parse_versionZinit_values�warnings�warn�builderr;Z	man_pagesrZSphinxr�builder_target_dirZdoctree_dirZ	fresh_env�buildZ	all_files�	ExceptionZdocutilsrO�
isinstanceZ
SystemMessageZstderr:�stderr�args�encodeZ
link_indexZ
master_docZ
out_suffixZget_outfilenamer�symlink)
r"Z
status_streamZ
confoverridesZ
sphinx_configZ
sphinx_verZapp�errrO�src�dstrrr�_sphinx_runzsJ



zLocalBuildDoc._sphinx_runcCs�|j�d�}t��r,tj|d�tj|d�t�|dd�}t�|dd�}t�	d�s�|r^|�
�|r�|�t|�
ddd	g�d
����xd|jD]Z}||_|��|j��|_|j��|_|j��|_t�|dd�r�|��q�tj�|�q�WdS)
N�pbr)r#Zautodoc_tree_index_modulesZAUTODOC_TREE_INDEX_MODULESZautodoc_index_modulesZAUTODOC_INDEX_MODULESZSPHINX_DEBUGZautodoc_exclude_modules�rZ
warnerrorsZ
WARNERRORS)rrr�_git_is_installed�write_git_changelog�generate_authorsr�get_boolean_optionr�getenvrJrE�set�get�split�buildersr^�finalize_options�get_name�project�get_versionrKrLrjr�BuildDoc�run)r"r#Z
tree_indexZ
auto_indexr^rrrr{�s8

zLocalBuildDoc.runcCstj�|�dg|_dS)Nzsetup.py)rrz�initialize_optionsrH)r"rrrr|�sz LocalBuildDoc.initialize_optionscCs�tj�|�|j�d�}d|�dgg�dkr<|dd|_t|jt�s\|jr\|j�	d�|_d}|j�d�}||kr�||d|_
|�|�dS)	Nrzcommand liner^rr�,rHrk)rrzrvrrrsrurb�listrtrH�ensure_string_list)r"r#�optrrrrv�szLocalBuildDoc.finalize_options)N)�__name__�
__module__�__qualname__�command_namerur$rErJrjr{r|rvrrrrrCs

#,"rc@seZdZdgZdZdS)�LocalBuildLatexZlatexZbuild_sphinx_latexN)r�r�r�rur�rrrrr��sr�)�	distutilsrr%rrYrWr\rU�ImportError�iorNrrrrra�e�strrkrrr=rrzrr�rrrr�<module>s.
"