
}«‘_6  ã               @   s(   d  d „  Z  d d „  Z d d „  Z d S)c             C   s‡   i  } i  } xn |  D]f } d | j  | j f } t t | |  ƒ ƒ } | rT | | | <t t | |  ƒ ƒ } | r | | | <q W| | f S)Nz%s==%s)Úproject_nameÚversionÚlistÚget_missing_reqsÚget_incompatible_reqs)Úinstalled_distsÚmissing_reqs_dictÚincompatible_reqs_dictÚdistÚkeyÚmissing_reqsÚincompatible_reqs© r   ú3/tmp/pip-build-3_sjtvrs/pip/pip/operations/check.pyÚcheck_requirements   s    
r   c             c   sd   t  d d „  | Dƒ ƒ } t  ƒ  } x; |  j ƒ  D]- } | j j ƒ  | k r/ | j | ƒ | Vq/ Wd S)z\Return all of the requirements of `dist` that aren't present in
    `installed_dists`.

    c             s   s   |  ] } | j  j ƒ  Vq d  S)N)r   Úlower)Ú.0Údr   r   r   ú	<genexpr>   s    z#get_missing_reqs.<locals>.<genexpr>N)ÚsetÚrequiresr   r   Úadd)r	   r   Úinstalled_namesÚmissing_requirementsÚrequirementr   r   r   r      s    	r   c             c   sn   i  } x | D] } | | | j  <q WxC |  j ƒ  D]5 } | j | j  ƒ } | r1 | | k r1 | | f Vq1 Wd S)zyReturn all of the requirements of `dist` that are present in
    `installed_dists`, but have incompatible versions.

    N)r   r   Úget)r	   r   Úinstalled_dists_by_nameÚinstalled_distr   Úpresent_distr   r   r   r   $   s    r   N)r   r   r   r   r   r   r   Ú<module>   s   