
    ?e!                     v    d dl Z d dlZ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Zd Z	 dd	Z	 dd
Zd ZdS )    N   )UserException)	PyProject)SIP_VERSION_STRz1.0c                    |d}t          |          5 }|                                                                }|r|                    d          ng }ddd           n# 1 swxY w Y   t	          j                    }t	          j        |           t                      }t	          j        |           |                                }|j|D ]g}|                    dd          }|d                                         }t          |          dk    r|d                                         nd}|||<   ht          | |
|||	||||||	           dS )
zD Create and populate a .dist-info directory from an inventory file. N 
=   )maxsplitr   r   )
prefix_dir	generatorgenerator_version)openreadstripsplitosgetcwdchdirr   get_metadatalencreate_distinfo)nameconsole_scriptsgui_scriptsr   r   	inventorymetadata_overridesprefixproject_rootrequires_dists	wheel_taginventory_finstalled_lines	installedsaved	pyprojectmetadataoridepartsor_nameor_values                        :lib/python3.11/site-packages/sipbuild/distinfo/distinfo.pydistinfor.   '   s   
 ~ 
i KK%**,,22443BJO))$///	K K K K K K K K K K K K K K K
 IKKEH\IHUOOO %%''H%' 	) 	)EKKaK00EAhnn&&G+.u::??uQx~~'''H (HW D)Y./;63DF F F F F Fs   A A  A$'A$r   c                 \   |	d}	|
t           }
|| z   }t          j                            |          rX	 t	          j        |           nB# t          $ r5}t          d                    |          t          |                    d}~ww xY w	 t          j
        |           nB# t          $ r5}t          d                    |          t          |                    d}~ww xY w|                                 |st          j                            | d          }|                    |           t          ||z   d          5 }t          |	|           ddd           n# 1 swxY w Y   nV|s|rt          j                            | d          }|                    |           t          ||z   d          5 }|r.|                    d	d
                    |          z   d
z              |r.|                    dd
                    |          z   d
z              ddd           n# 1 swxY w Y   d}t          j                            | d          }|                    |           t          ||z   d          5 }|                    |                    t"          |	|
|                     ddd           n# 1 swxY w Y   t          j                            | d          }t%          |||||           |                    |           t          j                            | d          }t          j                            |           \  }}t          j                            ||z             }t          ||z   d          5 }|D ]f}||z   }t          j                            |          rg }t          j        |          D ]\  }}}|                                 |                                 |D ]5} |                    t          j                            ||                      6d|v r|                    d           n|g}|D ]}!t          j                            |!          }"|"                    |          r/|!t3          |          dz   d                             dd          }#nn|"                    |t6          j        z             r5t          j                            |!|                              dd          }#n|!t3          |          d         }#t          |!d          }$|$                                }%|$                                 tA          j!        tE          j#        |%          $                                          %                    d          &                    d          }&|                    d                    |#|&t3          |%                               h|                    d                    |                     ddd           dS # 1 swxY w Y   dS )z- Create and populate a .dist-info directory. Nsipbuildz*unable remove old dist-info directory '{}'z&unable create dist-info directory '{}'	INSTALLERw)filezentry_points.txtz[console_scripts]
r	   z[gui_scripts]
zBWheel-Version: {}
Generator: {} {}
Root-Is-Purelib: false
Tag: {}
WHEELMETADATA)r   RECORD__pycache__r   \/rb   =asciiz{},sha256={},{}
z{}/RECORD,,
)'r   r   pathexistsshutilrmtree	Exceptionr   formatstrmkdirsortjoinappendr   printwriteWHEEL_VERSIONwrite_metadatar   normcaseisdirwalkremove
startswithr   replacesysr   relpathr   closebase64urlsafe_b64encodehashlibsha256digestrstripdecode)'distinfo_dirr"   r%   r(   r!   r    r   r   r   r   r   real_distinfo_direinstaller_fninstaller_feps_fneps_fr4   wheel_fnwheel_fmetadata_fn	record_fndistinfo_pathdistinfo_basereal_distinfo_pathrecord_fr   	real_nameall_fnsrootdirsfilesffnnorm_fnfn_namefn_fdatarY   s'                                          r-   r   r   J   sH   
 	 + #\1 
w~~'(( 	M+,,,, 	 	 	@GG-/ /FF  	
"####   8??)+ +A  	 NNw||L+>>&&&*|+S11 	/[)+....	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/  	Ok 	OW\\,0BCCFV$$$j6)3// O5" =KK1DII$355 55 57;<= = =  OKK-		+0F0FFMO O OO O O O O O O O O O O O O O O 7<<g66"""*x'-- 	(MMLL	;L%' '( ( (	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( ',,|Z88K8^[,!# # # #[!!! \844I#%7==#>#> M=))*}*DEE	j9$c	*	* (>h %	P %	PD"T)Iw}}Y'' &)+);); 	3 	3%D$IIKKKJJLLL" > >rw||D!'<'<====$,,M222	3 %+ P P'**2..%%&899 3 %7!8!81!<!=!=>FFtSQQGG''
SZ(?@@ 3 goo 24 44;GD#4F4F G !Z!1!12GB~~yy{{

1t,,33557 77=vd||FF7OO  +227FCIINNP P P P%P* 	--m<<===Q(> (> (> (> (> (> (> (> (> (> (> (> (> (> (> (> (> (>sy   A 
B0BBB   
C*0CC EE"%E"7A!H$$H(+H(91J66J:=J:JX!!X%(X%c                    |r6|                      dg           }t          |t                    r|g}||z   | d<   t          ||z   d          5 }d}dD ]&}t	          ||                     |          |           '|                                 D ]\  }}	|dk    r|	}t	          ||	|            ||                    d           |                    dt          j
                  }t          t          j                            ||                    5 }
|                    |
                                           ddd           n# 1 swxY w Y   ddd           dS # 1 swxY w Y   dS )z> Write the meta-data, with additional requirements to a file. zrequires-distr2   N)zmetadata-versionr   versionzrequires-pythonzdescription-filer	   r9   )get
isinstancerC   r   _write_metadata_itempopitemsrI   rQ   r   sepr=   rF   r   )r(   r!   re   r    r   rd
metadata_fdescriptionr   valuedescription_fs              r-   rK   rK      s     8\\/2..b# 	B$2R$7!	j;&	,	, 7
 O 	G 	GD x||D'9'9:FFFF#>>++ 	> 	>KD%)))#$T5*===="T""" &--c26::Kbgll<==>> 7-  !3!3!5!56667 7 7 7 7 7 7 7 7 7 7 7 7 7 7'7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7s7   CE(E8EE	EE	EE #E c                     t          |t                    r|g}|D ]=}|                    d                    |                                 |                     >dS )z Write a single metadata item. z{}: {}
N)ry   rC   rI   rB   title)r   r   r   vs       r-   rz   rz      se     %  = =**4::<<;;<<<<= =    )r   NN)r   )rU   rW   r   r?   rR   
exceptionsr   r'   r   rw   r   rJ   r.   r   rK   rz    r   r-   <module>r      s   0   				  



 & & & & & & ! ! ! ! ! ! % % % % % %  F  F  FJ :>~> ~> ~> ~>D 7 7 7 7D= = = = =r   