← Back
Editing: sphinxext.cpython-38.pyc
U jP�^� � @ sZ d dl Zd dlmZ d dlmZ d dlZdae� e �Zdd� Zdd� Z dd � Zd d� ZdS )� N)�configparser)�loggingc C sF t j�| t jd�t j�| t jt jd�fD ]}t j�|�r(| S q(dS )z�Find the 'setup.cfg' file, if it exists. This assumes we're using 'doc/source' for documentation, but also allows for single level 'doc' paths. z setup.cfgN)�os�path�join�pardir�exists)�srcdirr � r �//usr/lib/python3/dist-packages/pbr/sphinxext.py�_find_setup_cfg s � r c C s� t dkr�t�� }t| �}|r&|�|�s4t�d� dS z8|�dd�}t|� � �dkrjt|�dkrj|�dd�}W n" tj k r� t�d� Y dS X |a t S ) z�Return string name of project name, or None. This extracts metadata from 'setup.cfg'. We don't rely on distutils/setuptools as we don't want to actually install the package simply to build docs. Nz7Could not find a setup.cfg to extract project name fromZmetadata�name� � Zsummaryz1Could not extract project metadata from setup.cfg)�_projectr �ConfigParserr �read�logger�info�get�len�split�Error)r �parserr Zprojectr r r �_get_project_name- s r c C sd t | j�}ztj�|�}W n tk r2 d }Y nX |r`| jjs`| jjs`|�� | j_|� � | j_d S )N) r r �pbr�versionZVersionInfo� ExceptionZconfig�releaseZcanonical_version_stringZversion_string_with_vcs)�appZproject_name�version_infor r r �_builder_initedO s r! c C s | � dt� ddd�S )Nzbuilder-initedT)Zparallel_read_safeZparallel_write_safe)Zconnectr! )r r r r �setup^ s �r"