name : search.cpython-39.opt-1.pyc
a

�!c��@s�ddlmZddlmZddlmZddlZddlmZddlmZddl	m
Z
mZmZddl	Z
ddlZ
ddlZ
ddlZddlZe�d�ZGd	d
�d
ej�ZdS)�)�absolute_import)�print_function)�unicode_literalsN)�commands)�OptionParser)�ucd�_�C_�dnfc@sPeZdZdZdZed�Zedd��Zdd�Z	dd	�Z
d
d�Zdd
�Zdd�Z
dS)�
SearchCommandzTA class containing methods needed by the cli to execute the
    search command.
    )�searchZsez+search package details for the given stringc	Cs<|jddtd�d�|jddtd�dgdtjtd	�d
�dS)Nz--all�
store_truez'search also package description and URL)�action�help�query_string�+ZKEYWORD�allzKeyword to search for)�nargs�metavar�choices�defaultrr)�add_argumentrrZPkgNarrowCallback)�parser�r�;/usr/lib/python3.9/site-packages/dnf/cli/commands/search.py�
set_argparser0s��zSearchCommand.set_argparsercs$t�dtdd�fdtdd�fdtdd�fdtd	�ff���fd
d����fdd
�}tj��}|D] }��|d|���|d|�q`�jj	r�|D] }��|d|���|d|�q�n6t
|�}t|���}|D]}t
|�
|��|kr�||=q�d}d}	d}
d}d}�jjj�s$�jj��j|��d���}t�}
|jd|d�D]�}�jjj�sp|j|j|
v�r^�q8|
�|j|j�||�|�k�r�|�|�}d}|	|�
|�k�r�|�
|�}	d}|
|�|�|	kk�r�|�|�|	k}
d}|�r�||
||	�d}�jj�||�|�|��q8t
|�dk�r t�td��dS)z0Search for simple text tags in a package object.�nameZlong�Name�summaryZSummary�descriptionZDescription�urlZURLcs z
�|WS|YS0dS)Nr)�attr)�	TRANS_TBLrr�_translate_attrCs
z.SearchCommand._search.<locals>._translate_attrcs^t�|�}td��|�}|r*td�|}ntd�|}�jj�|d�|��}tt|��dS)Nz & z%s Exactly Matched: %%sz%s Matched: %%sz, )�mapr�join�base�outputZ
fmtSection�printr)�exact_match�attrs�keysZtrans_attrsZtrans_attrs_strZsection_text�	formatted)r#�selfrr�_print_section_headerIs
z4SearchCommand._search.<locals>._print_section_headerNF)�pkgT)�reverseZlimit_torzNo matches found.) �collections�OrderedDictr	rr
Z
match_counterZMatchCounter�_search_counted�optsr�len�listr+�matched_needlesr&ZconfZshowdupesfromrepos�sack�query�filtermZlatest�set�sortedrZarch�addZmatched_keysZmatched_haystacksr'Z
matchcallback�logger�info)r-�argsr.�counter�argZneedlesZpkgsr/Z
used_attrsr7r)Zprint_section_header�limit�seenr)r"r#r-r�_search9sb
�


zSearchCommand._searchcCs`d||i}tj�|�r$d||i}|jj��jtjfi|��}|�	�D]}|�
|||�qH|S)Nz
%s__substrz%s__glob)r
�utilZis_glob_patternr&r8r9r:�hawkeyZICASE�runr=)r-rAr!ZneedleZfdict�qr/rrrr3�szSearchCommand._search_countedcCs |jjs|jjtjtjd�dS)N)�stdout�stderr)r4�quiet�cliZredirect_logger�loggingZWARNING�INFO�r-rrr�
pre_configure�szSearchCommand.pre_configurecCsD|jjs|j��|jj}d|_d|_d|_|jjp:|jj	|j_dS)NTF)
r4rLrMZredirect_repo_progress�demandsZavailable_reposZfresh_metadataZsack_activationrZquery_string_action)r-rRrrr�	configure�s
zSearchCommand.configurecCst�td��|�|jj�S)NzSearching Packages: )r>�debugrrEr4rrPrrrrH�szSearchCommand.runN)�__name__�
__module__�__qualname__�__doc__�aliasesrr�staticmethodrrEr3rQrSrHrrrrr(s
O		r)Z
__future__rrrr1Zdnf.clirZdnf.cli.option_parserrZdnf.i18nrrr	r
Zdnf.match_counterZdnf.utilrGrNZ	getLoggerr>ZCommandrrrrr�<module>s


© 2025 Cubjrnet7