a &c @ sV d dl mZ d dl mZ d dlmZ d dlZG dd dejZG dd dej j ZdS ) )absolute_import)unicode_literals)_Nc s e Zd ZdZ fddZ ZS )RepoClosurerepoclosurec s, t t| || |d u rd S |t d S N)superr __init__Zregister_commandRepoClosureCommand)selfbasecli __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 ZdZedZdd 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_reposoptsrepor reposallidcheckdisableenable)r r r r r r configure, s zRepoClosureCommand.configurec C s d}| j jr| | j j}n| }t| D ]\}tdt||j tdt || |t || 7 }|| D ]}td| qxq0t |dkrt d|t |}tj |d S )Nr zpackage: {} from {}z unresolved deps ({}):z {}zGRepoclosure ended with unresolved dependencies ({}) across {} packages.)r arches_get_unresolvedsortedkeysprintformatstrreponamelenr dnf exceptionsError)r Z total_missing unresolvedpkgZdepmsgr 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|rBtjtdd| |}| jjr`|j| jjd |d urv|j|d | jjjr jdd | |D ]Z}t ||<