
ó
èRac               s    d  d l  m Z g  d „ Z d S(   iÿÿÿÿ(   t   defaultdictc         C  s›  d |  k r d S|  d } g  } g  } xR | d D]F } d | k rW | É  | d Ê n  d | k rw | É  | d Ê q1 q1 Wt t ƒ } d | k rÔ x; | d É Ê  D]) \ } } | d É  d É | | Ê Ê q¤ Wn  d	 | k r!x; | d	 É Ê  D]) \ } } | d
 É  d É | | Ê Ê qñ Wn  d | k r¯x| | d É Ê  D]j \ }	 }
 |	 d k rnt d É |	 Ê ƒ ‚ n  x7 |
 É Ê  D]) \ } } | |	 É  d É | | Ê Ê q{Wq>Wn  xz | D]r } | | k } | | É d g  Ê k } | r| rt d É | Ê ƒ ‚ n  | s(| s(t d É | Ê ƒ ‚ q¶q¶Wi  | d d 6| É d Ê d 6| É d Ê d 6d É | Ê d 6d É | Ê d 6| É d g  Ê d 6t | ƒ d 6S(   sC   
    Get PEP 621 metadata if available, return None otherwise.
    t   projectNt   authorst   namet   emailt   scriptst   console_scriptss   {} = {}s   gui-scriptst   gui_scriptst   entrypoints(   R   R   s   {} forbidden in entrypointst   dynamics.   Key {} declared both statically and as dynamics7   Key {} must be declared either statically or as dynamict   versiont   descriptions   , t   authort   author_emailt   classifierst   entry_points(	   t   appendR    t   listt   itemst   formatt
   ValueErrort   gett   joint   dict(   t   datat   allow_dynamict   metadataR   t   author_emailst   aR   R   t   contentt
   group_namet   group_contentt   patht   keyt
   has_statict   has_dynamic(    (    t?   /home/mgorny/git/pyproject2setup.py/pyproject2setuppy/pep621.pyt   get_pep621_metadata	   sd    
  
 
 	 
 		N(   t   collectionsR    R%   (    (    (    R$   t   <module>   s   