Y@sddlmZddlmZddlZddlZddlmZddlm Z m Z ddl m Z ddl mZejeZGdd d eZd d Zd d d dZdS))absolute_import) FeedParserN)Command)SUCCESSERROR) pkg_resources)canonicalize_namecsFeZdZdZdZdZdZfddZddZS) ShowCommandz6Show information about one or more installed packages.showz$ %prog [options] ...z*Show information about installed packages.c s^tt|j|||jjddddddddd d |jjd |jdS) Nz-fz--filesdestfilesaction store_truedefaultFhelpz7Show the full list of installed files for each package.r)superr __init__cmd_opts add_optionparserinsert_option_group)selfargskw) __class__0/tmp/pip-build-3puug3g5/pip/pip/commands/show.pyrs  zShowCommand.__init__cCsO|stjdtS|}t|}t|d|jd|jsKtStS)Nz.ERROR: Please provide a package name or names. list_filesverbose)loggerwarningrsearch_packages_info print_resultsr rr)roptionsrqueryresultsrrrrun"s  zShowCommand.run) __name__ __module__ __qualname____doc__nameusagesummaryrr&rr)rrr s  r c #six$tjD]}|t|j:s z(search_packages_info..cs&g|]}|kr|qSrr)r.pkg) installedrrr/<s r+versionlocationrequirescSsg|]}|jqSr) project_name)r.deprrrr/As NRECORDcSs#g|]}|jddqS),r)split)r.lrrrr/Is cs(g|]}tjjj|qSr)ospathjoinr3)r.p)distrrr/Js cs(g|]}tjj|jqSr)r;r<relpathr3)r.r>)r?rrr/Ks METADATAzinstalled-files.txtcs(g|]}tjjj|qSr)r;r<r=egg_info)r.r>)r?rrr/Ss cs(g|]}tjj|jqSr)r;r<r@r3)r.r>)r?rrr/Ts zPKG-INFOzentry_points.txt entry_points INSTALLER installermetadata-versionr- home-pageauthor author-emaillicensez Classifier: classifiersr )rFzsummaryrGzauthorrIzlicense)r working_setrr5r2r3r4 isinstanceDistInfoDistribution has_metadataget_metadata_lines get_metadatastriprfeedcloseget splitlines startswithappendlensorted)r$r> query_namespackage file_listmetadatalinespathsrCline feed_parser pkg_info_dictkeyrKr)r?r1rr!/s^          ! r!Fc Csbd}xUt|D]G\}}d}|dkr>tjdtjd|jddtjd|jd dtjd |jd dtjd |jd dtjd|jddtjd|jddtjd|jddtjd|jddtjddj|jdg|rtjd|jddtjd|jddtjdx*|jdgD]}tjd|qWtjd x0|jd!gD]}tjd|jqW|rtjd"x0|jd#gD]}tjd|jq!Wd#|krtjd$qW|S)%zD Print the informations from installed distributions found. FTrz---zName: %sr+z Version: %sr2z Summary: %sr-z Home-page: %sz home-pagez Author: %srHzAuthor-email: %sz author-emailz License: %srJz Location: %sr3z Requires: %sz, r4zMetadata-Version: %szmetadata-versionz Installer: %srEz Classifiers:rKz %sz Entry-points:rCzFiles:r z!Cannot locate installed-files.txt) enumeraterinforUr=rR) distributionsrrresults_printedir? classifierentryrarrrr"xs>  %     r") __future__r email.parserrloggingr;pip.basecommandrpip.status_codesrr pip._vendorrpip._vendor.packaging.utilsr getLoggerr'rr r!r"rrrrs   I