Your IP : 3.133.122.95
3
\� � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZdddgZdZej j
d�rXdZnej� ZG dd� de
�Ze jd d
� �Zdd� Zdd
d�Zddd�Zdd� Zddd�Zedkr�e� dS )� N�ZipAppError�create_archive�get_interpreterz8# -*- coding: utf-8 -*-
import {module}
{module}.{fn}()
�winzutf-8c @ s e Zd ZdS )r N)�__name__�
__module__�__qualname__� r r �/usr/lib64/python3.6/zipapp.pyr ! s c c sF t | tj�rt| �} t | t�r<t| |��}|V W d Q R X n| V d S )N)�
isinstance�pathlib�Path�str�open)�archive�mode�fr r r
�_maybe_open% s
r c C s$ |r d|j t� d }| j|� d S )Ns #!�
)�encode�shebang_encoding�write)r �interpreterZshebangr r r
�_write_file_prefix0 s r c C s� t | d��Z}|jd�}|dkr*d}|j� t |d��&}t||� |j|� tj||� W d Q R X W d Q R X |r�t|t�r�t j
|t j|�jtj
B � d S )N�rb� s #!� �wb)r �read�readliner r �shutilZcopyfileobjr r �os�chmod�stat�st_mode�S_IEXEC)r Znew_archiver �srcZfirst_2�dstr r r
�
_copy_archive7 s
r( c C s� d}t | d�rt | d�rd}ntj| �} | j� r4d}|rHt| ||� d S | j� sXtd��| d j� }|rt|rttd��|pz|s�td��d }|r�|jd �\}}} td
d� |j d�D ��}
td
d� | j d�D ��}|d ko�|
o�|s�td| ��t
j|| d�}|d k�r| jd�}nt |d��s"tj|�}t
|d��~}t||� tj|d��\}
tj| �}x2|jd�D ]$}t|j|��}|
jt|�|� �q\W |�r�|
jd|jd�� W d Q R X W d Q R X |�r�t |d� �r�|j|j� jtjB � d S )NFr r TzSource does not existz__main__.pyz8Cannot specify entry point if the source has __main__.pyzArchive has no entry point�:c s s | ]}|j � V qd S )N)�isidentifier)�.0�partr r r
� <genexpr>| s z!create_archive.<locals>.<genexpr>�.c s s | ]}|j � V qd S )N)r* )r+ r, r r r
r- } s zInvalid entry point: )�module�fnz.pyzr r �w�*zutf-8)�hasattrr r
�is_filer( �existsr � partition�all�split�
MAIN_TEMPLATE�formatZwith_suffixr r �zipfileZZipFileZrglobr Zrelative_tor Zwritestrr r"