<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>

$YfL                 @   s   d  d l  Z  d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l	 Z	 d  d l
 Z
 d  d l Z d d   Z d d   Z d d   Z d d	   Z d
 d   Z d S)    Nc              C   s   t  j d d  }  |  j d d d |  j d d d d d	 d
 d t j j |  j   } d } y t t t	 |     Wn> t
 k
 r } z t d j |   d } WYd  d  } ~ Xn Xt j d  d  S)Ndescriptionz,Recreate wheel of package with given RECORD.record_pathhelpzPath to RECORD filez-oz--output-dirz>Dir where to place the wheel, defaults to current working dir.destoutdirdefaultr   z
Failed: {}   )argparseArgumentParseradd_argumentospathcurdir
parse_argsprintrewheel_from_recordvarsBaseExceptionformatsysexit)parsernsretcodee r   -/opt/alt/python35/lib64/python3.5/__init__.pyrun   s    r   c                s  g  } t  j t j t j g  } d d   | D } x |  D] } d  } x | D]  t j j  |  d j t j	     f d d   t j
   D }   f d d   | D } t |  d k rN | d } qN W| d  k	 r | j t j j | d   q; | j d   q; W| S)	Nc             S   s(   g  |  ] } t  j j |  r |  q Sr   )r   r   exists).0spr   r   r   
<listcomp>(   s   	 z'find_system_records.<locals>.<listcomp>z-[^\{0}]+\.dist-infoc                s%   g  |  ] } t  j j   |   q Sr   )r   r   join)r   p)r    r   r   r!   .   s   	 c                s(   g  |  ] } t  j   |  r |  q Sr   )rematch)r   c)dist_info_rer   r   r!   0   s   	 r   r   ZRECORD)sitegetsitepackagesr   base_prefixbase_exec_prefixr   r   r"   r   seplistdirlenappend)ZprojectsrecordsZsys_sitepackZprojectr   Z
candidatesZfilteredr   )r'   r    r   find_system_records   s    %"r1   c             C   sE  t  j j t  j j |    } |  t |  d   j t  j j  } t | |  \ } } t |   } t  j j | | d  } t	 j
 | d d d t	 j } t j   }	 t j |	  }
 xO | D]G \ } } } | j t  j j | |  d | |
 j | | | g  q W|
 j | d d g  | j | |	 j    | j   | j S)Nz.whlmodewcompressionZarcname )r   r   dirnamer.   stripr,   get_records_to_packget_wheel_namer"   zipfileZipFileZIP_DEFLATEDioStringIOcsvwriterwriteZwriterowZwritestrgetvalueclosefilename)r   r   site_dirrecord_relpathto_writeto_omitZnew_wheel_nameZnew_wheel_pathZ	new_wheelZ
new_recordr@   fZsha_hashsizer   r   r   r   :   s    %"
r   c             C   s  t  j j t  j j |   d  } t j | d d % } t j j   j	 | j
    } Wd  QRXt  j j t  j j |   d  } t j | d d % } t j j   j	 | j
    } Wd  QRX| j d  } | j d  } d }	 g  }
 x1 | j d  D]  } |
 j | j d	  d
  q Wd j |
  }
 | j d  j d	  d d  \ } } t d  | | |	 |
 | | g  } d	 j t |   S)NZWHEELencodingzutf-8ZMETADATANameZVersionr5   ZTag-r   .r      )r   r   r"   r6   codecsopenemailr   ZParserZparsestrreadgetZget_allr/   splitfilterlist)r   Zwheel_info_pathZwheel_info_fileZ
wheel_infoZmetadata_pathZmetadata_fileZmetadataZdistributionversionZ	build_tagZlang_tagtZabi_tagZplat_tagZto_joinr   r   r   r9   V   s     !%!%(!r9   c       
      C   s\  t  j j |  |  } t j | d d  } | j   } Wd  QRXt  j j |  j t  j j  } | d  t	 d   d } g  } g  } x | j
   D] } | j d  }	 t	 |	  d k r t  j j |	 d  s.|	 d j d  s.|	 d j d	  s.|	 d j d
  s.|	 d | k s.|	 d j |  r>| j |	  qN| j |	  q q W| | f S)NrK   zutf-8z	dist-infodata,rO   r   z..z.pycz.pyo)r   r   r"   rP   rQ   rS   r6   r7   r,   r.   
splitlinesrU   isabs
startswithendswithr/   )
rE   rF   Zrecord_file_pathZrecord_fileZrecord_contentsZdata_dirrG   rH   lZsplr   r   r   r8   n   s"    !)&#r8   )r	   rP   r?   Zemail.parserrR   r   r=   r$   r(   
subprocessr   r:   r   r1   r   r9   r8   r   r   r   r   <module>   s   