
    =eI	                         d dl Z ddlmZ  e j        d          Z G d d          Z G d d          Z G d	 d
          ZeeegZdS )    N   )	yaml_loadzbinstar.authc                       e Zd Zd Zd ZdS )ProjectFilesInspectorc                     || _         d S Npfilesselfr
   s     Hlib/python3.11/site-packages/binstar_client/utils/projects/inspectors.py__init__zProjectFilesInspector.__init__   s        c                 .    d | j         D             |d<   |S )Nc                 6    g | ]}|                                 S  )to_dict).0pfiles     r   
<listcomp>z0ProjectFilesInspector.update.<locals>.<listcomp>   s     FFFU]]__FFFr   filesr	   )r   metadatas     r   updatezProjectFilesInspector.update   s!    FF$+FFFr   N)__name__
__module____qualname__r   r   r   r   r   r   r   
   s2              r   r   c                   (    e Zd Zg dZd Zd Zd ZdS )DocumentationInspector)z	README.mdz
README.rstz
README.txtREADMEc                 "    || _         d | _        d S r   )r
   	doc_pfiler   s     r   r   zDocumentationInspector.__init__   s    r   c                     |                                  rHt          | j        j                  5 }|                                |d<   d d d            n# 1 swxY w Y   |S )Nreadme)has_docopenr!   fullpathread)r   r   docfiles      r   r   zDocumentationInspector.update   s    <<>> 	4dn-.. 4'%,\\^^"4 4 4 4 4 4 4 4 4 4 4 4 4 4 4s   AAAc                 p      fd} j         D ] }|                    |          r	| _         n! j        d uS )Nc                 "    | |k    o| j         v S r   valid_namesbasenamerelativepathr&   r   s      r   	is_readmez1DocumentationInspector.has_doc.<locals>.is_readme&       |+LD<L0LLr   )r
   validater!   )r   r0   r   s   `  r   r$   zDocumentationInspector.has_doc%   sh    	M 	M 	M 	M 	M [ 	 	E~~i(( !& ~T))r   N)r   r   r   r,   r   r   r$   r   r   r   r   r      sR          K    	* 	* 	* 	* 	*r   r   c                   (    e Zd ZddgZd Zd Zd ZdS )ConfigurationInspectorzproject.ymlzproject.yamlc                 "    || _         d | _        d S r   )r
   config_pfiler   s     r   r   zConfigurationInspector.__init__7   s     r   c                    	 |                                  rCt          | j        j                  5 }t	          |          |d<   d d d            n# 1 swxY w Y   n*# t
          $ r t                              d           Y nw xY w|S )Nconfigurationz#Could not parse configuration file.)
has_configr%   r6   r&   r   	Exceptionloggerwarning)r   r   
configfiles      r   r   zConfigurationInspector.update;   s    	B   F$+455 F09*0E0EH_-F F F F F F F F F F F F F F F 	B 	B 	BNN@AAAAA	Bs4   -A AA AA AA $B Bc                 p      fd} j         D ] }|                    |          r	| _         n! j        d uS )Nc                 "    | |k    o| j         v S r   r+   r-   s      r   	is_configz4ConfigurationInspector.has_config.<locals>.is_configE   r1   r   )r
   r2   r6   )r   r@   r   s   `  r   r9   z!ConfigurationInspector.has_configD   sj    	M 	M 	M 	M 	M [ 	 	E~~i(( $)!  ,,r   N)r   r   r   r,   r   r   r9   r   r   r   r4   r4   1   sN        K
! ! !  	- 	- 	- 	- 	-r   r4   )	loggingyamlr   	getLoggerr;   r   r   r4   
inspectorsr   r   r   <module>rE      s          		>	*	*       * * * * * * * *<- - - - - - - -@ 


r   