HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/sphinx/builders/__pycache__/changes.cpython-310.pyc
o

�$�a��@s�dZddlZddlmZddlmZmZmZmZm	Z	ddl
mZddlm
Z
ddlmZddlmZdd	lmZmZdd
lmZddlmZddlmZdd
lmZddlmZmZe� e!�Z"Gdd�de�Z#de
dee$effdd�Z%dS)z�
    sphinx.builders.changes
    ~~~~~~~~~~~~~~~~~~~~~~~

    Changelog builder.

    :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�path)�Any�Dict�List�Tuple�cast)�package_dir)�Sphinx)�Builder)�ChangeSetDomain)�_�__)�HTMLThemeFactory)�logging)�bold)�copy_asset_file)�	ensuredir�os_pathc@sreZdZdZdZed�Zddd�Zdefdd	�Z	d
ddd
�Z
deddfdd�Zdededefdd�Z
ddd�ZdS)�ChangesBuilderzC
    Write a summary with all versionadded/changed directives.
    �changesz#The overview file is in %(outdir)s.�returnNcCs2|��t|j�}|�d�|_|j�||j�dS)N�default)�create_template_bridger�app�create�theme�	templates�init)�self�
theme_factory�r �9/usr/lib/python3/dist-packages/sphinx/builders/changes.pyr$s
zChangesBuilder.initcCs|jS�N)�outdir�rr r r!�get_outdated_docs*sz ChangesBuilder.get_outdated_docs�added�changed�
deprecated)�versionadded�versionchangedr(�ignoredc
s2|jj}tt|j�d��}i}g}i}|�|�}|s't�t	t
d�|��dSt�t	t
d���|D]�}t|jt
�r@|jd}	n|j}	|j|j}
|j�dd�}|	rs|j�d�rs|rbd|	|
|f}nd	|	|
f}|�||j|jf�q2|	sx|jr�|jp~td
�}
|	s�td�}	|r�d|	|
|f}nd	|	|
f}|�|
g��||j|jf�q2|s�q2d|
��|f}|jj|j��}|�|j|fg��||j|jf�q2|jj||jj|jjt|� ��t|�t|� ��|jj!|jj"d
�	}t#t$�%|j&d�ddd��}|�'|j(�)d|��Wd�n	1�swYt#t$�%|j&d�ddd��}|�'|j(�)d|��Wd�n	1�s3wYd|d|d|g�dt*dt+dt+f�fdd��t�t	t
d���|jj,D]�}t#|j�-|�|jjj.d��(}z|�/�}Wnt0�y�t�1t
d�|�YWd��q]wWd�n	1�s�wYt$�%|j&dt2|��d }t3t$�4|��t#|dd!d��*}d"�%�fd#d$�t5|�D��}|j�-|d�|d%�}|�'|j(�)d&|��Wd�n	1�s�wY�q]d'd(�|j6�7i�� �D�}t8t$�%t9d)d*d+d,�|j&||j(d-�t8t$�%t9d)d.d+d/�|j&�dS)0N�	changesetzno changes in version %s.zwriting summary file...r�
� zc-apiz<b>%s</b>: <i>%s:</i> %sz<b>%s</b>: <i>%s</i>.�BuiltinszModule levelz
<i>%s:</i> %s)	�project�version�	docstitle�
shorttitle�
libchanges�
apichanges�otherchanges�show_copyright�show_sphinxz
index.html�w�utf8)�encodingzchanges/frameset.htmlzchanges.htmlzchanges/versionchanges.htmlz.. versionadded:: %sz.. versionchanged:: %sz.. deprecated:: %s�no�linercs6d|t�|�}�D]
}||vrd|}|Sq|S)Nz<a name="L%s"> </a>z<span class="hl">%s</span>)�html�escape)r<r=�x)�hltextr r!�hlts�z ChangesBuilder.write.<locals>.hlzcopying source files...z(could not read %r for changelog creation�rstz.htmlzutf-8�c3s"�|]\}}�|d|�VqdS)�Nr )�.0�ir=)rBr r!�	<genexpr>�s� z'ChangesBuilder.write.<locals>.<genexpr>)�filename�textzchanges/rstsource.htmlcSsi|]	\}}d||�qS)�theme_r )rF�key�valr r r!�
<dictcomp>�sz(ChangesBuilder.write.<locals>.<dictcomp>�themesr�staticz
default.css_t)�context�renderer�basicz	basic.css):�configr1rr�env�
get_domain�get_changesets_for�logger�inforr
�
isinstance�descname�tuple�typemap�type�content�replace�docname�
startswith�append�lineno�moduler�
setdefault�
capitalize�titles�astextr0�
html_title�html_short_title�sorted�items�html_show_copyright�html_show_sphinx�openr�joinr#�writer�render�int�str�all_docs�doc2path�source_encoding�	readlines�UnicodeDecodeError�warningrr�dirname�	enumerater�get_optionsrr)rr+r1�domainr4r5r6�
changesetsr,r[�ttextrQ�entryre�title�ctx�fra�lines�targetfnrJ�themectxr )rBrAr!rr3s�
�
���

������������
��zChangesBuilder.writerJr1cCs4t�|�}dD]}|�d||fd||f�}q|S)N)r*r)r(z
.. %s:: %sz<b>.. %s:: %s</b>)r>r?r`)rrJr1�	directiver r r!rB�s

�zChangesBuilder.hlcCsdSr"r r$r r r!�finish�szChangesBuilder.finish)rN)�__name__�
__module__�__qualname__�__doc__�namer
�epilogrrur%r]rrrrBr�r r r r!rs
�brrrcCs|�t�dddd�S)N�builtinT)r1�parallel_read_safe�parallel_write_safe)�add_builderr)rr r r!�setup�s

�r�)&r�r>�osr�typingrrrrr�sphinxr�sphinx.applicationr	�sphinx.buildersr
�sphinx.domains.changesetr�
sphinx.localerr
�sphinx.themingr�sphinx.utilr�sphinx.util.consoler�sphinx.util.fileutilr�sphinx.util.osutilrr�	getLoggerr�rXrrur�r r r r!�<module>s$