£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

Re8                 @   s   d  d l  Z  d  d l Z d  d l Z d  d l m Z d  d l m Z d  d l m Z d  d l	 m
 Z
 d  d l m Z Gd d   d e  Z d S)	    N)InstallRequirement)logger)Command)get_installed_distributions)pkg_resourcesc                   sR   e  Z d  Z d Z d Z d Z d Z   f d d   Z d d   Z d d	   Z	   S)
FreezeCommandz1Output installed packages in requirements format.freezez
      %prog [options]c                s   t  t |   j | |   |  j j d d d d d d d d  d d	 d
 d |  j j d d d d d d d g  d d d
 d |  j j d d d d d d d d d
 d |  j j d |  j  d  S)Nz-rz--requirementdestrequirementactionstoredefaultmetavarfilehelpzVUse the order in the given requirements file and it's comments when generating output.z-fz--find-links
find_linksappendURLz<URL for finding packages, which will be added to the output.z-lz--locallocal
store_trueFzUIf in a virtualenv that has global access, do not output globally-installed packages.r   )superr   __init__cmd_opts
add_optionparserinsert_option_group)selfargskw)	__class__ ./tmp/pip-ztkk0jow-build/pip/commands/freeze.pyr      s,    						zFreezeCommand.__init__c             C   s   t  j   d  S)N)r   move_stdout_to_stderr)r   r    r    r!   setup_logging-   s    zFreezeCommand.setup_loggingc             C   s  | j  } | j p g  } | j } d } d  } | j } | rN t j |  } n  g  }	 t j }
 x9 t j	 D]. } | j
 d  rg |	 j | j d   qg qg Wx* | D]" } d | k r |	 j |  q q Wx | D] } |
 j d |  q Wi  } x? t d |  D]. } t j j | |	 d | } | | | j <q W| rrt |  } x| D]} | j   sq| j   j d  r|
 j |  qIn  | r| j |  r|
 j |  qIn/| j d  s| j d	  r2| j d  r| d
 d   j   } n% | t d	  d   j   j d  } t j | d | j } n | j d  s| j d  s| j d  s| j d  s| j d  s| j d  s| j d  s| j d  s| j d  r|
 j |  qIn t j |  } | j st j d | j    t j d  qIn  | j | k r:t j  d | j    qIn  |
 j t! | | j   | | j =qIW|
 j d  n  x9 t" | j#   d d d   D] } |
 j t! |   qWd  S)NFzdependency_links.txtz#egg=z-f %s

local_only	find_tags#z-ez
--editable   =default_vcsz-rz--requirementz-Zz--always-unzipz-fz-iz--extra-index-urlz--find-linksz--index-urlz>Skipping line because it's not clear what it would install: %sz9  (add #egg=PackageName to the URL to avoid this warning)z?Requirement file contains %s, but that package is not installedz:## The following requirements were added by pip --freeze:
keyc             S   s   |  j  S)N)name)xr    r    r!   <lambda>q   s    z#FreezeCommand.run.<locals>.<lambda>)$r
   r   r   skip_requirements_regexrecompilesysstdoutr   working_sethas_metadataextendget_metadata_linesr   writer   pipFrozenRequirement	from_distr+   openstrip
startswithsearchlenlstripr   from_editabler)   	from_liner   notifywarnstrsortedvalues)r   optionsr   r
   r   r$   r%   
skip_match
skip_regexdependency_linksfdistlinkinstallationsreqreq_flineline_reqinstallationr    r    r!   run0   sv    				"%			%zFreezeCommand.run)
__name__
__module____qualname____doc__r+   usagesummaryr   r#   rU   r    r    )r   r!   r      s   r   )r/   r1   r8   pip.reqr   pip.logr   pip.basecommandr   pip.utilr   pip._vendorr   r   r    r    r    r!   <module>   s   