%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib/python3.9/site-packages/cockpit/_vendor/bei/__pycache__/
Upload File :
Create Path :
Current File : //lib/python3.9/site-packages/cockpit/_vendor/bei/__pycache__/beipack.cpython-39.pyc

a

��h��@s�ddlZddlZddlZddlZddlZddlZddlZddlmZm	Z	m
Z
mZmZm
Z
ddlmZeed�dd�Zeed�dd	�Zeed�d
d�Zeeeed�d
d�Zeeeed�dd�Zeeefeeed�dd�Zd(eeefeeeed�dd�Zd)e
eeeeeefd�dd�Zeeeeefd�dd�Zeeeefd�dd �Zeeeefd!�d"d#�Zdd$�d%d&�Zed'k�r�e�dS)*�N)�Dict�Iterable�List�Optional�Set�Tuple�)�read_data_file)�data�returncCs8d}||vrd|||Sd|vr0d|dSt|�S)Nz'''�rz"""zr""")�repr)r
Ztriplequote�r�?/usr/lib/python3.9/site-packages/cockpit/_vendor/bei/beipack.py�
escape_stringsrcCsdt|�d��S)N�b�ascii�r�decode�r
rrr�ascii_bytes_repr(srcCst|�d��dS)N�utf-8z.encode('utf-8')rrrrr�utf8_bytes_repr,sr)r
�importsrcCs*|�d�t�|��d���}d|�d�S)Nzfrom binascii import a2b_base64rza2b_base64("z"))�add�binasciiZ
b2a_base64r�strip)r
rZencodedrrr�base64_bytes_repr0s
rcCsFz
t|�WStyYn0z
t|�WSty:Yn0t||�S)N)r�UnicodeDecodeErrorrr)r
rrrr�
bytes_repr8s

r)�contentsrrcs$dd��fdd�|��D��dS)Nz{
�c3s.|]&\}}dt|��dt|���d�VqdS)z  z: z,
N)r
r)�.0�k�v�rrr�	<genexpr>Ps�zdict_repr.<locals>.<genexpr>�})�join�items)r rrr%r�	dict_reprNs���r*r!)r �
entrypoint�argsrc	Cs�td�}dd�|��D�}|�d�dh}t||�}|�|�|�d|�d��|r�|�d�\}}|�d	|�d
|�d��|�d|�d
��d�dd�|D��S)a�Creates a beipack with the given `contents`.

    If `entrypoint` is given, it should be an entry point which is run as the
    "main" function.  It is given in the `package.module:func format` such that
    the following code is emitted:

        from package.module import func as main
        main()

    Additionally, if `args` is given, it is written verbatim between the parens
    of the call to main (ie: it should already be in Python syntax).
    zbeipack_loader.pycSsg|]}|r|�qSrr�r"�linerrr�
<listcomp>f�zpack.<locals>.<listcomp>r!z
import sysz&sys.meta_path.insert(0, BeipackLoader(z))�:zfrom z import z as mainzmain(�)css|]}|�d�VqdS)�
Nrr-rrrr&sr0zpack.<locals>.<genexpr>)r	�
splitlines�appendr*�extend�splitr()	r r+r,�loader�linesrZcontents_txt�package�mainrrr�packUs


r<)�	filenames�relative_torc	CsTi}|D]F}t|d��(}|��|tjj||d�<Wd�q1sD0Yq|S)N�rb)�start)�open�read�os�path�relpath)r=r>r �filename�filerrr�collect_contentsvs
8rH)�name�	recursivercsVddl}ddlm}t|ttttfd���fdd��t�|�dd�|j	�
|���S)Nr)�Traversable)rD�entryrc3sX|��D]J}|�d|j��}|��r4||��fVq�r|jdkr�||�EdHqdS)N�/�__pycache__)�iterdirrI�is_file�
read_bytes)rDrL�itemZitemname�rJ�walkrrrT�szcollect_module.<locals>.walk�.rM)Zimportlib.resourcesZimportlib.resources.abcrK�strrr�bytes�dict�replaceZ	resources�files)rIrJ�	importlibrKrrSr�collect_module�s$r\)rFrcCsZi}t�|��8}|jD] }d|jvr&q|�|�||j<qWd�n1sL0Y|S)Nz.dist-info/)�zipfile�ZipFileZfilelistrFrB)rFr rGrLrrr�collect_zip�s

0r_)rDrcCsRt���6}ddl}|�|�}|�d|�}t|�Wd�S1sD0YdS)Nr�wheel)�tempfileZTemporaryDirectory�buildZProjectBuilderr_)rDZtmpdirrbZbuilderr`rrr�collect_pep517�s


rc)rcCs�t��}|jdddd�|jddddd	�|jd
dd�|jdd
dd�|jddddd�|jddddd�|jddgdd�|jdddgdd�|jd d!dgd"d#�|jd$d%d&d'�|��}t|j|jd(�}|jD]}|�t	|��q�|j
D]}|�t|d)d*��q�|jD]}|�t
|���qt||j|j��d+�}|j�rXd,|j�d-�d.|}|j�rptj|tjd/�}|j�r�t|jd0��}|�|�Wd�n1�s�0Yn,|j�r�t�d1��r�t�d2�tjj�|�dS)3Nz--pythonz-pz5add a #!python3 interpreter line using the given path)�helpz--xzz-J�
store_truezcompress the output with `xz`)�actionrdz--topdirz6toplevel directory (paths are stored relative to this)z--outputz-oz(write output to a file (default: stdout)z--mainz-mzMODULE:FUNCz)use FUNC from MODULE as the main function)�metavarrdz--main-argsZARGSz$arguments to main() in Python syntaxr!)rgrd�defaultz--moduler5z'collect installed modules (recursively))rfrhrdz--zipz-zz'include files from a zipfile (or wheel)z--build�DIRz%PEP-517 from a given source directory)rgrfrhrdrZ�*zfiles to include in the beipack)�nargsrd)r>T)rJrs#!r�
)�preset�wbrz1refusing to write compressed output to a terminal) �argparse�ArgumentParser�add_argument�
parse_argsrHrZZtopdir�zip�updater_�moduler\rbrcr<r;Z	main_args�encodeZpython�xz�lzma�compress�PRESET_EXTREME�outputrA�writerC�isatty�sys�exit�stdout�buffer)�parserr,r rGrIrD�resultrrrr;�sd�
���
��
����


,
r;�__main__)Nr!)N) rorrxrCr~rar]�typingrrrrrrr
r	rVrrWrrrrr*r<rH�boolr\r_rcr;�__name__rrrr�<module>s< 
��"��4


Zerion Mini Shell 1.0