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.opt-1.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_sphinxZhtml�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)�.0Zpat)�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#rZpackages�walkr�sorted�keysr�open�write�len�dict�
_rst_template)r!r)�modulesrZpkg�dirpathZdirnamesrZmodule_listZautoindex_filenameZ	autoindexr&Zoutput_filenamer.r/�valuesZoutput_filer)r)r*r�generate_autoindexRs4

z LocalBuildDoc.generate_autoindexcCs,|��}ddddd|g}t�||j�dS)Nrr
z-HZModulesz-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�stdoutrCrDrErZConfigZ
config_dir�
pkg_resourcesZget_distributionZ
parse_versionZinit_values�warnings�warn�builderr8Z	man_pagesrZSphinxrZbuilder_target_dirZdoctree_dirZ	fresh_envZbuildZ	all_files�	ExceptionZdocutilsrG�
isinstanceZ
SystemMessageZstderr7�stderr�args�encodeZ
link_indexZ
master_docZ
out_suffixZget_outfilenamer�symlink)
r!Z
status_streamZ
confoverridesZ
sphinx_configZ
sphinx_verZapp�errrG�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)rrrZ_git_is_installedZwrite_git_changelogZgenerate_authorsrZget_boolean_optionr�getenvrBr>�set�get�split�buildersrT�finalize_optionsZget_nameZprojectZget_versionrCrDr^r�BuildDoc�run)r!r"Z
tree_indexZ
auto_indexrTrrrrh�s8

zLocalBuildDoc.runcCstj�|�dg|_dS)Nzsetup.py)rrg�initialize_optionsr@)r!rrrri�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 linerTrr�,r@r_)rrgrfrrrcrerV�listrdr@Zensure_string_list)r!r"�optrrrrf�szLocalBuildDoc.finalize_options)N)�__name__�
__module__�__qualname__�command_namerer#r>rBr^rhrirfrrrrrCs

#,"rc@seZdZdgZdZdS)�LocalBuildLatexZlatexZbuild_sphinx_latexN)rmrnrorerprrrrrq�srq)�	distutilsrr$rrQrOrRrM�ImportError�iorFrrrrrU�e�strr_rrr:rrgrrqrrrr�<module>s.
"