Re0,@sddlmZddlZddlZddlmZddlmZddlm Z ddl m Z ddl m Z ddlmZdd lmZdd lmZdd lmZmZmZmZdd lmZdd lmZddlmZerRddlm Z ddl!m"Z"m#Z#m$Z$m%Z%ddl&m'Z'ddl(m)Z)ej*e+Z,Gddde Z-ddZ.ddZ/dS))absolute_importN)six) cmdoptions)IndexGroupCommand)SUCCESS) CommandError) LinkCollector) PackageFinder)SelectionPreferences)dist_is_editableget_installed_distributionstabulate write_output) get_installer)map_multithread)MYPY_CHECK_RUNNING)Values)ListSetTupleIterator) PipSession) Distributionc@seZdZdZdZdZddZddZdd Zd d Z d d Z ddZ ddZ ddZ ddZdS) ListCommandzt List installed packages, including editables. Packages are listed in a case-insensitive sorted order. Tz %prog [options]c Cs|jjdddddddd|jjd d dddddd |jjd d dddddd|jjdddddddd|jjddddddddd|jjtj|jjddddddd|jjddddddddd+dd|jjd dddd!dd"|jjd#dd$dd%dd&|jjd'dddd%dd(dd)tjtj|j}|jjd*||jjd*|jdS),Nz-oz --outdatedaction store_truedefaultFhelpzList outdated packagesz-uz --uptodatezList uptodate packagesz-ez --editablezList editable projects.z-lz--localzSIf in a virtualenv that has global access, do not list globally-installed packages.z--userdestuserz,Only output packages installed in user-site.z--prezYInclude pre-release and development versions. By default, pip only finds stable versions.z--formatstore list_formatcolumnschoicesfreezejsonzBSelect the output format among: columns (default), freeze, or jsonz--not-required not_requiredz>List packages that are not dependencies of installed packages.z--exclude-editable store_falseinclude_editablez%Exclude editable package from output.z--include-editablez%Include editable package from output.Tr)r"r$r%)cmd_opts add_optionr list_pathmake_option_group index_groupparserinsert_option_group)self index_optsr2/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/commands/list.py add_options.sv              zListCommand.add_optionscCsCtj|d|}tddd|j}tjd|d|S)zK Create a package finder appropriate to this list command. options allow_yankedFallow_all_prereleaseslink_collectorselection_prefs)rcreater prer )r0r5sessionr8r9r2r2r3_build_package_finder{s  z!ListCommand._build_package_finderc Cs|jr|jrtdtj|td|jd|jd|jd|j d|j }|j r||j ||}|jr|j ||}n|jr|j||}|j||tS)Nz5Options --outdated and --uptodate cannot be combined. local_only user_onlyeditables_onlyinclude_editablespaths)outdatedZuptodaterrcheck_list_path_optionr localreditabler(pathr&get_not_required get_outdated get_uptodateoutput_package_listingr)r0r5argspackagesr2r2r3runs$          zListCommand.runcCsdd|j||DS)NcSs(g|]}|j|jkr|qSr2)latest_versionparsed_version).0distr2r2r3 s z,ListCommand.get_outdated..)iter_packages_latest_infos)r0rMr5r2r2r3rIszListCommand.get_outdatedcCsdd|j||DS)NcSs(g|]}|j|jkr|qSr2)rOrP)rQrRr2r2r3rSs z,ListCommand.get_uptodate..)rT)r0rMr5r2r2r3rJszListCommand.get_uptodatecsWtx.|D]&}jdd|jDqWtfdd|DS)Ncss|]}|jVqdS)N)key)rQ requirementr2r2r3 sz/ListCommand.get_not_required..cs%h|]}|jkr|qSr2)rU)rQpkg)dep_keysr2r3 s z/ListCommand.get_not_required..)setupdaterequireslist)r0rMr5rRr2)rYr3rHs  $zListCommand.get_not_requiredc #so|jY}|j|fdd}x(t||D]}|dk rI|VqIWWdQRXdS)Ncsd}j|j}js4dd|D}jd|j}|j|}|dkrhdS|j}|jjrd}nd}||_ ||_ |S)NunknowncSs"g|]}|jjs|qSr2)version is_prerelease)rQ candidater2r2r3rSs zOListCommand.iter_packages_latest_infos..latest_info.. project_namewheelsdist) find_all_candidatesrUr;make_candidate_evaluatorrcsort_best_candidater`linkis_wheelrOlatest_filetype)rRtypZall_candidatesZ evaluatorbest_candidateremote_version)finderr5r2r3 latest_infos          z;ListCommand.iter_packages_latest_infos..latest_info)_build_sessionr=r)r0rMr5r<rprRr2)ror5r3rTs  z&ListCommand.iter_packages_latest_infoscCst|ddd}|jdkrU|rUt||\}}|j||n|jdkrxw|D]J}|jdkrtd|j|j|jqktd|j|jqkWn"|jd krtt ||dS) NrUcSs |jjS)N)rclower)rRr2r2r3sz4ListCommand.output_package_listing..r"r$z %s==%s (%s)z%s==%sr%) sortedr!format_for_columnsoutput_package_listing_columnsverboserrcr`locationformat_for_json)r0rMr5dataheaderrRr2r2r3rKs  z"ListCommand.output_package_listingcCst|dkr"|jd|t|\}}t|dkrn|jddjtdd|x|D]}t|quWdS)Nrrt cSsd|S)N-r2)xr2r2r3rssz.)leninsertr joinmapr)r0r{r|Z pkg_stringssizesvalr2r2r3rws( z*ListCommand.output_package_listing_columnsN)__name__ __module__ __qualname____doc__ignore_require_venvusager4r=rNrIrJrHrTrKrwr2r2r2r3r#s  M     # rcCs4|j}|r$ddddg}n ddg}g}|jdks^tdd|Drk|jd|jdkr|jd x|D]}|j|jg}|r|j|j|j|j|jdkst|r|j|j |jdkr|jt ||j|qW||fS) z_ Convert the package data into something usable by output_package_listing_columns. ZPackageVersionZLatestZTypertcss|]}t|VqdS)N)r )rQrr2r2r3rWsz%format_for_columns..ZLocationZ Installer) rCrxanyappendrcr`rOrkr ryr)pkgsr5Zrunning_outdatedr|r{Zprojrowr2r2r3rv s(  (   rvcCsg}x|D]}d|jdtj|ji}|jdkr`|j|ds.  "" &