/usr/lib/python3.6/site-packages/dnf/cli/commands/__pycache__
NameSizeModeActions
alias.cpython-36.opt-1.pyc53300644editdlrm
alias.cpython-36.pyc53300644editdlrm
autoremove.cpython-36.opt-1.pyc19140644editdlrm
autoremove.cpython-36.pyc19140644editdlrm
check.cpython-36.opt-1.pyc37230644editdlrm
check.cpython-36.pyc37230644editdlrm
clean.cpython-36.opt-1.pyc41050644editdlrm
clean.cpython-36.pyc41050644editdlrm
deplist.cpython-36.opt-1.pyc8890644editdlrm
deplist.cpython-36.pyc8890644editdlrm
distrosync.cpython-36.opt-1.pyc14400644editdlrm
distrosync.cpython-36.pyc14400644editdlrm
downgrade.cpython-36.opt-1.pyc18030644editdlrm
downgrade.cpython-36.pyc18030644editdlrm
group.cpython-36.opt-1.pyc103810644editdlrm
group.cpython-36.pyc104780644editdlrm
history.cpython-36.opt-1.pyc114900644editdlrm
history.cpython-36.pyc114900644editdlrm
install.cpython-36.opt-1.pyc60830644editdlrm
install.cpython-36.pyc60830644editdlrm
makecache.cpython-36.opt-1.pyc12630644editdlrm
makecache.cpython-36.pyc12630644editdlrm
mark.cpython-36.opt-1.pyc29170644editdlrm
mark.cpython-36.pyc29170644editdlrm
module.cpython-36.opt-1.pyc149640644editdlrm
module.cpython-36.pyc149640644editdlrm
reinstall.cpython-36.opt-1.pyc29650644editdlrm
reinstall.cpython-36.pyc30400644editdlrm
remove.cpython-36.opt-1.pyc39210644editdlrm
remove.cpython-36.pyc39210644editdlrm
repolist.cpython-36.opt-1.pyc74260644editdlrm
repolist.cpython-36.pyc74260644editdlrm
repoquery.cpython-36.opt-1.pyc222970644editdlrm
repoquery.cpython-36.pyc222970644editdlrm
search.cpython-36.opt-1.pyc43940644editdlrm
search.cpython-36.pyc43940644editdlrm
shell.cpython-36.opt-1.pyc78710644editdlrm
shell.cpython-36.pyc78710644editdlrm
swap.cpython-36.opt-1.pyc18870644editdlrm
swap.cpython-36.pyc18870644editdlrm
updateinfo.cpython-36.opt-1.pyc139050644editdlrm
updateinfo.cpython-36.pyc139050644editdlrm
upgrade.cpython-36.opt-1.pyc36810644editdlrm
upgrade.cpython-36.pyc36810644editdlrm
upgrademinimal.cpython-36.opt-1.pyc11030644editdlrm
upgrademinimal.cpython-36.pyc11030644editdlrm
__init__.cpython-36.opt-1.pyc263950644editdlrm
__init__.cpython-36.pyc266380644editdlrm
Edit: /usr/lib/python3.6/site-packages/dnf/cli/commands/__pycache__/repoquery.cpython-36.pyc (22297B)
3 ft`ن @sddlmZddlmZddlmZddlmZddlmZddlm Z ddl Z ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZe jdZd Ze jd Zd Zd d dddddddd ZddZGddde jZGdddejZGddde Z!dS))absolute_import)print_function)unicode_literals)_)commands) OptionParserNdnfz.%{name}-%{epoch}:%{version}-%{release}.%{arch}z%(-?\d*?){([:.\w]+?)}a name, arch, epoch, version, release, reponame (repoid), from_repo, evr, debug_name, source_name, source_debug_name, installtime, buildtime, size, downloadsize, installsize, provides, requires, obsoletes, conflicts, sourcerpm, description, summary, license, url, reason conflictsenhances obsoletesprovides recommendsrequiresZ requires_presuggests supplements) r r r r r rz requires-prerrcCsdd}dd}|jddjdd}x tjD]\}}|j||}q.Wd }d }x>tj|D]0}|||||j7}|||7}|j}qZW||||d 7}|S) z:Convert a rpm like QUERYFMT to an python .format() string.cSs^|jd}|jd}|rJ|ddkr:d|dd}nd|}d|}d|j|dS) Nr-><:z{0.})groupslower)ZmatchobjZfillkeyr/usr/lib/python3.6/repoquery.pyfmt_replDs   zrpm2py_format..fmt_replcSs|jddjddS)N{z{{rz}})replace)ZtxtrrrbracketsOszrpm2py_format..bracketsz\n z\t rN)r OPTS_MAPPINGitems QFORMAT_MATCHfinditerstartend) queryformatrrrvalueZfmtspositemrrr rpm2py_formatBs   r-c@seZdZdZdS)_CommaSplitCallbackz\s*,\s*N)__name__ __module__ __qualname__ZSPLITTERrrrrr._sr.c@seZdZdZejejejdZd%e ej Z e dZ eddZedd Zd d Zd d ZddZddZd&ddZd'ddZd(ddZddZddZddZd d!Zd*d#d$ZdS)+RepoQueryCommandzSA class containing methods needed by the cli to execute the repoquery command. )z repoquery-nz repoquery-nazrepoquery-nevra repoqueryrqz$search for packages matching keywordcCs,|jr|j|jd|jr(|j|jd|S)z'Filter query by repoid and arch options)Zreponame)arch)Zrepofiltermarches)optsqueryrrrfilter_repo_archms z!RepoQueryCommand.filter_repo_archc Cs|jddddtdd|jddtdd |jd d d gtd tdd|jddddtdd|jdgtdtdd|jdgtdtdd|jdgtdtdd|jdgtdtdd|jd gtdtd!d|jd"gtdtd#d|jd$gtdtd%d|jd&gtdtd'd|jd(gtdtd)d|j}|jd*dtd+d |jd,dtd-d |jd.dtd/d |jd0dtd1d |jd2dtd3d |jd4dtd5d |jd6dtd7d |jd8d9ttd:d;|jdd?d@dAdtdBdC|jdDdEdFdAdtdGdC|jdHdIdJdAdtdKdC|jdLdMdAdtdNdC|jdOdPdQttdRdS|jdTdtdUd |jdVdQtdWtdXdY|jdZdQd[dWtd\dY|jd]dQd^dWtd_dY|jd`dtdad |j}|jdbdcdddWtdedY|jdfdcdddWtjdY|jdgdcdhdWtdidY|jdjdcdkdWtdldY|jdmdtdnd |j}tdotdptdqtdrtdstdttdutdvtdwdx }x2|jD]&\}}dy|}|j|dzdW||d{qW|jd|dtd}d td~tdtdtdj t j j dtdd} |j} x2| jD]&\} } dy| } | j| ddW| | d{q4W| jdddWdtjd{|jddtdd |jdddtdddS)Nz-az--allZqueryall store_truezNQuery all packages (shorthand for repoquery '*' or repoquery without argument))destactionhelpz--show-duplicatesz(Query all versions of packages (default))r=r>z--archz --archlistr7z[arch]z show only results from this ARCH)r<defaultr=metavarr>z-fz--fileFILE+z show only results that owns FILE)r@nargsr>z--whatconflictsZREQz#show only results that conflict REQ)r?r=r@r>z --whatdependszishows results that requires, suggests, supplements, enhances,or recommends package provides and files REQz--whatobsoletesz#show only results that obsolete REQz--whatprovidesz"show only results that provide REQz--whatrequiresz:shows results that requires package provides and files REQz--whatrecommendsz$show only results that recommend REQz--whatenhancesz"show only results that enhance REQz--whatsuggestsz"show only results that suggest REQz--whatsupplementsz%show only results that supplement REQz --alldepsz=check non-explicit dependencies (files and Provides); defaultz --exactdepsz:check dependencies exactly as given, opposite of --alldepsz --recursivezOused with --whatrequires, and --requires --resolve, query packages recursively.z --deplistz>show a list of all dependencies and what packages provide themz --resolvez.resolve capabilities to originating package(s)z--treez"show recursive tree for package(s)z--srpmz#operate on corresponding source RPMz--latest-limit latest_limitzOshow N latest packages for a given name.arch (or latest but N if N is negative))r<typer>z--disable-modular-filteringz-list also packages of inactive module streamsz-iz--info queryinfoFz+show detailed information about the package)r<r?r=r>z-lz--list queryfilelistz!show list of files in the packagez-sz--sourcequerysourcerpmzshow package source RPM namez --changelogsquerychangelogszshow changelogs of the packagez--qfz --queryformatr)zfdisplay format for listing packages: "%%{name} %%{version} ...", use --querytags to view full tag list)r<r?r>z --querytagsz-show available tags to use with --queryformatz--nevra store_constzZuse name-epoch:version-release.architecture format for displaying found packages (default))r<constr=r>z--nvrz%{name}-%{version}-%{release}zQuse name-version-release format for displaying found packages (rpm query default)z--envraz.%{epoch}:%{name}-%{version}-%{release}.%{arch}zPuse epoch:name-version-release.architecture format for displaying found packagesz --groupmemberz=Display in which comps groups are presented selected packagesz --duplicates pkgfilter duplicatedz/limit the query to installed duplicate packagesz --duplicatedz --installonly installonlyz1limit the query to installed installonly packagesz --unsatisfied unsatisfiedzClimit the query to installed packages with unsatisfied dependenciesz --locationz5show a location from where packages can be downloadedz5Display capabilities that the package conflicts with.zaDisplay capabilities that the package can depend on, enhance, recommend, suggest, and supplement.z2Display capabilities that the package can enhance.z-Display capabilities provided by the package.z1Display capabilities that the package recommends.z1Display capabilities that the package depends on.zIf the package is not installed display capabilities that it depends on for running %%pre and %%post scriptlets. If the package is installed display capabilities that is depends for %%pre, %%post, %%preun and %%postun.z/Display capabilities that the package suggests.z5Display capabilities that the package can supplement.) r dependsr r r rz requires-prerrz--%s packageatr)r<r=rKr>z --availablez Display only available packages.z Display only installed packages.zLDisplay only packages that are not present in any of available repositories.zQDisplay only packages that provide an upgrade for some already installed package.zIDisplay only packages that can be removed by "{prog} autoremove" command.)progz2Display only packages that were installed by user.) installedZextrasZupgradesunneeded userinstalledlistz --autoremoverTz--recentz%Display only recently edited packagesr*ZKEYzthe key to search for)rCr@r>) add_argumentrr.Zadd_mutually_exclusive_groupintQFORMAT_DEFAULTargparseZSUPPRESSr$formatrutil MAIN_PROG)parserZwhatrequiresformZoutformrLZpackage_attributeZ help_msgsargZhelp_msgnameZ help_listZ list_groupZlist_argZhelp_argZswitchrrr set_argparservs                                                                 zRepoQueryCommand.set_argparsercCs |jjs|jjtjtjddS)N)stdoutstderr)r8quietcliZredirect_loggerloggingZWARNINGINFO)selfrrr pre_configureszRepoQueryCommand.pre_configurecCsj|jjs|jj|jj}|jjrJ|jjrB|jjdd|jjnd|j_|jjrVdS|jj rx|jj rxt jj t d|jj r|jjr|jjddt|jj|jjdko|jj gst jj t d|jjs|jjr|jjp|jjst jj t d j|jjrd nd|jjr$|jjj|jjdkr@|jjd ksJ|jjrPd|_d|_|jjrfd|_dS)Nz --obsoletesz--r zOption '--resolve' has to be used together with one of the '--conflicts', '--depends', '--enhances', '--provides', '--recommends', '--requires', '--requires-pre', '--suggests' or '--supplements' optionsz --recursivez --exactdepsrzOption '--recursive' has to be used with '--whatrequires ' (optionally with '--alldeps', but not with '--exactdeps'), or with '--requires --resolve'z;argument {} requires --whatrequires or --whatdepends optionz --alldepsrSrUrNT)rSrU)r8rerfZredirect_repo_progressdemandsr rQZ_option_conflict querytagsresolverZCliErrorr recursive exactdepsany whatrequiresalldeps whatdependsr\srpmbaseZreposZenable_source_reposrVrL availableZavailable_reposZsack_activationrI changelogs)rirkrrr configures@      zRepoQueryCommand.configurec Cs|jrpg}|jdt|xH|jD]>}|d}|jd|jdtjj|dtjj|dfq$Wdj|Syht |}|j r|j j j |S|jr|j}|sttdj|tjd |S|jr|jSt|jj|SWn4tk r }ztjjt|WYdd}~XnXdS) NzChangelog for %s timestampz * %s %s %s z %a %b %d %YZauthortextr zPackage {} contains no files)file)rIappendstrrwstrftimeri18nucdjoinPackageWrapperrFruoutputZ infoOutputrGfilesprintrr\sysrdrHZ sourcerpmr-r)AttributeError exceptionsError) rir8pkgoutZchlogdtZpoZfilelisterrrbuild_format_fnGs.  z RepoQueryCommand.build_format_fncCsN|jjjjdd}x4|D],}|j|jtjj|j |jjddd}qW|S)NT)emptyF) with_providesZwith_filenames) rusackr9r6union intersectionrsubjectSubjectget_best_query)riZnevrasZ base_queryresolved_nevras_queryZnevrarrr_resolve_nevrascs  z RepoQueryCommand._resolve_nevrasNcCsD|r|n|}|j|d}|j|}|j|}|r@|j|||d}|S)N)r)done)filter differencer_do_recursive_deps)riquery_in query_selectrZquery_requiredrrrrps    z#RepoQueryCommand._do_recursive_depsFcCs|j||}|j|d}|j|j|d}|r|j|j|d}|j|j|d}|j|j|d}|j|j|d}|j|j|d}|j|j|d}|j|j|d }|j|j|d }|jjr|j||}|S) N)requires__glob)r)recommends__glob)enhances__glob)supplements__glob)suggests__glob)r )r )r)r)rrrr8rnr)rinamesr9Z all_dep_typesrZdepqueryrrr by_all_deps}s   zRepoQueryCommand.by_all_depscCs|r|n|jjjjdd}|jjjjdd}x$|jD]}|j|j|jd}q:W|j|}|rz|j |||j|d}|j|S)NT)r)r )r) rurr9r6runrrrr_get_recursive_providers_query)rir providersrtrrrrrrs z/RepoQueryCommand._get_recursive_providers_querycCsxg}g}xN|jjD]B}tjjj|d}|jdr>|j|q|r|d kr|j|qW|rt|jj|d|jj j d}|S) Nrz.rpmhttpftpr{httpsF)strictprogress)rrr{r) r8rrZpycompZurlparseendswithr|ruZadd_remote_rpmsrr)riZrpmnamesremote_packagesrZschemesrrr_add_add_remote_packagess   z)RepoQueryCommand._add_add_remote_packagesc Cs|jjrttdS|jj|j|jjj|jj r8t j nt j d}|jj r|j}i}|jj|jkrx|j|jjg|d<g}|jdd}|r|j|jjjj|d}x>|jj D]2}|jtjj|ddj|jjfd|d|}qW|}|jjr|j|jjj}|jjrX|jjr|jjd krt|jjjtjj t!d j"d d |jjnH|jjd krx|j#|jj$j%}n(|jjr|jjdkrt&||jj}|jj'dkr|jj(|}|j)|j*}n|jj'dkr|jj(|}n|jj'dkrVtjj+|j}|j,|jjj-|jjj.tj/j0|} d| _1| j2dd} | sRttj3j4| j5dS|jjsh|j}|j6|j|}|} |jj7r|j|jj7d|jj8r|j|jj8d} | j|j|j9|jj8|d}|jj:r|j|jj:d|jj;r|j|jj;d} | r | }n|j|jj;d|jj<rR|jj=rB|j|jj|jj<|}|jj?r|jj=r|j|jj?d}|j|j|jj?d}|j|j|jj?d}|j|j|jj?d}|j|j|jj?d}n|j>|jj?|d}|jj@r|j|jj@d} | j|j|j9|jj@|d}|jjArR|j|jjAd} | j|j|j9|jjA|d}|jjBr|j|jjBd} | j|j|j9|jjB|d}|jjCr|j|jjCd} | j|j|j9|jjC|d }|jjDr|jE|jjD}|jjF|dd!}|jjGrRg}xD|D]<}|jH}|dk r|jjjj||jId"d#}||j27}qW|jjjj|d}|jjJr|jj< r|jjKd9krtjj t!d,j"tj3jLd-|jM|| |jdStN}|jjKrtN} x||j2D]p}|jjdks|jj$jO|r|jjKd.kr| jP|jQ|jR|jS|jT|jUn| jPt&|tV|jjKqW|jjWr|jjd krj|j6|j|jjj}n|j6|j|jjjj}|j| d/}|jjXr|j|jY||}tN}x@|jEj2D]}|jZ|j[|j|qWn|jPd0d1| Dn|jj\r6x.|j2D]"}|j]}|dk r |jZ|q Wnv|jj^rNg}xt_tN|j2D]}|jjdksx|jj$jO|rVg}|j`d2ta|xt_d3d4|jQDD]x}|j`d5|tjj|}|j|jj}|j6|j|j}|jjbs|jE}x$|j2D]}|j`d6ta|qWqW|j`d7jc|qVW|rJtd8jc|dS|jjdrf|je|dSxD|j2D]8}|jjdks|jj$jO|rp|jZ|j[|j|qpW|r|jjfrtd8jct_|ntd7jct_|dS):N)flagsZformsT)r)r)Z ignore_caseF)rr9rSz)argument {}: not allowed with argument {}z --availablez--rTrUrMrNrO)Zverify)Z file__glob)Zconflicts__glob)r )r )Zprovides__glob)r)r)r)r)r)r )r )r)r)Zwarningsrc)raevrr5r r r r r rrrzNo valid switch specified usage: {prog} repoquery [--conflicts|--enhances|--obsoletes|--provides|--recommends|--requires|--suggest|--supplements|--whatrequires] [key] [--tree] description: For the given packages print a tree of thepackages.)rRrP)r css|]}t|VqdS)N)r}).0Zrelrrr Qsz'RepoQueryCommand.run..z package: cSsg|] }t|qSr)r})rreqrrr ]sz(RepoQueryCommand.run..z dependency: z provider: r z )r r r r r rrr)gr8rlr QUERY_TAGSrfZ _populate_update_security_filterrurr9Zdisable_modular_filteringhawkeyZIGNORE_MODULAR_EXCLUDESZAPPLY_EXCLUDESrrZcommand nevra_formsrrr6rrrrZrecentZ_recentZconfrvrVZ optparserZ print_usagerrrr\Z _unneededhistoryZswdbgetattrrLZ_get_installonly_queryrrMZ rpmdb_sackZ _configureZinstallonlypkgsZinstallonly_limitgoalZGoalZprotect_running_kernelrr]Z_format_resolve_problemsZ problem_rulesr:r{Z whatconflictsrZ whatobsoletesZ whatprovidesrqrorrsZwhatrecommendsZ whatenhancesZwhatsupplementsZ whatsuggestsrDZlatestZ_merge_update_filtersrtZ source_namerZtreerQr^ tree_seedsetZuser_installedupdaterr rrr r#rmrnraddrlocationZremote_locationZdeplistsortedr|r}verboserZ groupmember_group_member_reportrF)riqrZkwarkZpkgsZ query_resultsrrNZrpmdbrZsolvedZorqueryZrelsZquery_for_provideZ dependsqueryZpkg_listrZsrcnameZ tmp_queryr9rrZdeplist_outputrrZproviderrrrrsH                           "           zRepoQueryCommand.runc Cs&i}x.|jjjD] }tdd|jD||j<qWi}g}xr|jD]f}g}x(|jD]\}} |j| krX|j |qXW|r|j dj t |gj t |qF|j t |qFWg} xDt |jD]4\} } | j dj t | t dd| jdDqW| j dj t || r"tdj | dS)NcSsg|] }|jqSr)ra)rrrrrr}sz9RepoQueryCommand._group_member_report..$r cSsg|] }d|qS)z @r)ridrrrrs)rucompsrrZ packages_iterrrr$rar| setdefaultrrr}splitr) rir9Zpackage_conf_dictgroupZgroup_package_dictZpkg_not_in_grouprZ group_id_listZgroup_idZpackage_name_setrrZ package_listrrrrzs*  ,z%RepoQueryCommand._group_member_reportc Cs|j||}|d kr t|dSd}xtd|D] }|d7}q0Wg}x|jD]}|jt|qLWdtt|ddj|d} t|d |d| dS) Nr rz| [z: z, ]z\_ )rrrangerr|r}lenr) rilevelrr8Z pkg_stringZspacingxrZ requirepkgZreqstrrrr grow_trees   "zRepoQueryCommand.grow_treerc Cs8x0tt|jdddD]}|dks2|d kr8tn|}|jjdsT|jjdrXdS|j|||||kr|j||jrt||j}i}xFt|D]:} |j j j j | d} x | D]} | || jd| j <qWqW|j j j j t|jd } n&|jr |j|jf|n |j|jd } |j| |||d|qWdS) NcSs|jS)N)ra)prrrsz,RepoQueryCommand.tree_seed..)rrZrpmlibZsolvable)r .)r)rr)rrrra startswithrrrQrrurr9r6r5rVvaluesrrrrr) rir9Zaqueryr8rZusedpkgsrZstrpkgarraZpkgqueryZquerypkgrrrrs$"   zRepoQueryCommand.tree_seed)r3r4)N)F)Nr)rN)r/r0r1__doc__rZ FORM_NAMEZFORM_NAZ FORM_NEVRArtuplekeysaliasesrZsummary staticmethodr:rbrjrxrrrrrrrrrrrrrrr2cs,  0  Hr2c@sDeZdZdZddZddZeddZedd Z ed d Z d S) rz>Wrapper for dnf.package.Package, so we can control formatting.cCs ||_dS)N)_pkg)rirrrr__init__szPackageWrapper.__init__cCsFt|j|}|dkrdSt|tr:djtdd|DStjj|S)Nz(none)r cSsh|]}tjj|qSr)rrr)rZreldeprrr sz-PackageWrapper.__getattr__..) rr isinstancerVrrrrr)riattrZatrrrr __getattr__s   zPackageWrapper.__getattr__cCs&|dkrtjj|}|jdSdSdS)Nrz%Y-%m-%d %H:%Mr")datetimeZutcfromtimestampr~)ryrrrr_get_timestamps  zPackageWrapper._get_timestampcCs|j|jjS)N)rr buildtime)rirrrrszPackageWrapper.buildtimecCs|j|jjS)N)rr installtime)rirrrrszPackageWrapper.installtimeN) r/r0r1rrrrrpropertyrrrrrrrs   r)"Z __future__rrrZdnf.i18nrZdnf.clirZdnf.cli.option_parserrr[rrgrerrZdnf.exceptionsZ dnf.subjectZdnf.utilrZ getLoggerZloggerrZcompiler%rr#r-Z_SplitCallbackr.ZCommandr2objectrrrrrsJ        W