관리-도구
편집 파일: repoclosure.cpython-39.opt-1.pyc
a �����&c�����������������������@���sV���d�dl�mZ�d�dl�mZ�d�dlmZ�d�dlZG�dd��dej�ZG�dd��dej j �ZdS�) �����)�absolute_import)�unicode_literals)�_Nc�����������������������s ���e�Zd�ZdZ��fdd�Z���ZS�)�RepoClosure�repoclosurec��������������������s,���t�t|���||��|d�u�rd�S�|�t��d�S��N)�superr����__init__Zregister_command�RepoClosureCommand)�self�base�cli�� __class__���;/usr/lib/python3.9/site-packages/dnf-plugins/repoclosure.pyr ���!���s����zRepoClosure.__init__)�__name__� __module__�__qualname__�namer ���� __classcell__r���r���r���r���r������s���r���c�������������������@���s>���e�Zd�ZdZed�Zdd��Zdd��Zddd �Ze d d���Z dS�) r ���)r���z:Display a list of unresolved dependencies for repositoriesc�����������������C���s`���|�j�j}d|_d|_|�jjr\|�jj���D�]2}|j |�jjvrR|j |�jj vrR|����q(|����q(d�S�)NT) r ����demandsZsack_activationZavailable_repos�opts�repor����repos�all�id�check�disable�enable)r���r���r���r���r���r���� configure,���s���� zRepoClosureCommand.configurec�����������������C���s����d}|�j�jr|��|�j�j�}n|����}t|����D�]\}td�t|�|j���td�t ||�����|t ||��7�}||�D�]}td�|���qxq0t |�dkr�t d�|t |���}tj� |��d�S�)Nr���zpackage: {} from {}z unresolved deps ({}):z {}zGRepoclosure ended with unresolved dependencies ({}) across {} packages.)r����arches�_get_unresolved�sorted�keys�print�format�str�reponame�lenr����dnf� exceptions�Error)r���Z total_missing� unresolved�pkgZdep�msgr���r���r����run7���s"������zRepoClosureCommand.runNc�������������� ������s<��i�}t���}|�jjr�|�jj���jdd���|�jj���jdd�}|�jj���D�]D}��� |�jj���j|j d�������|� |�jj���j|j d�����}qFn |�jj��������|�jj������}|�jj �rF|�jj���jdd�}g�}|�jj D�]H}tj�|�} |�| j|�jjdddd��} | �r|� | �}q�|�|��q�|�rBtj�td�d�|����|}|�jj�r`|j|�jjd��|d�u�rv|j|d��|�jjj�r���jdd ��������|����|D�]Z}t���||<�|jD�]B}t|�}|�d ��s�|�d��rސq�|� |��||�� |���q��q�t���fdd �|D�����fdd�|�!��D��} dd��| �!��D��S�)NT)�empty)r(���F)Z with_nevraZ with_providesZwith_filenameszno package matched: %sz, )�arch)Zlatest_per_archz solvable:zrpmlib(c�����������������3���s���|�]}��j�|d��s|V��qdS�))ZprovidesN)�filter��.0�x)� availabler���r���� <genexpr>���������z5RepoClosureCommand._get_unresolved.<locals>.<genexpr>c��������������������s(���i�|�] \}}|t���fd�d�|D����qS�)c�����������������3���s���|�]}|��v�r|V��qd�S�r���r���r4�����unresolved_depsr���r���r8�������r9���z@RepoClosureCommand._get_unresolved.<locals>.<dictcomp>.<genexpr>)�set�r5����k�vr:���r���r���� <dictcomp>����s����z6RepoClosureCommand._get_unresolved.<locals>.<dictcomp>c�����������������S���s���i�|�]\}}|r||�qS�r���r���r=���r���r���r���r@�������r9���)"r<���r���Znewestr���Zsack�queryr3���r���Ziter_enabled�unionr���Zlatestr7����pkglistr*���ZsubjectZSubject�intersectionZget_best_query�appendr+���r,���r����joinr���ZfiltermZconfZbestZapplyZrequiresr'���� startswith�add�items)r���r2���r-���ZdepsZto_checkr���Z pkglist_q�errorsr.���ZsubjZpkg_qZreqZreqnameZunresolved_transitionr���)r7���r;���r���r"���K���sj������ ��� � �z"RepoClosureCommand._get_unresolvedc�����������������C���s`���|�j�dg�ddtd�d��|�j�dg�dtd�d��|�j�d d dtd�d ��|�j�dg�dtd�dd��d�S�)Nz--archrE���r!���zBcheck packages of the given archs, can be specified multiple times)�default�action�dest�helpz--checkzSpecify repositories to check)rK���rL���rN���z-nz--newest� store_truez+Check only the newest packages in the repos)rL���rN���z--pkgz#Check closure for this package onlyrC���)rK���rL���rN���rM���)�add_argumentr���)�parserr���r���r���� set_argparser����s����� � � �z RepoClosureCommand.set_argparser)N)r���r���r����aliasesr���Zsummaryr ���r0���r"����staticmethodrR���r���r���r���r���r ���(���s��� Qr ���)Z __future__r���r���Zdnfpluginscorer���Zdnf.clir*���ZPluginr���r ���ZCommandr ���r���r���r���r����<module>���s ���