File: //usr/lib/python3/dist-packages/mercurial/__pycache__/exchange.cpython-310.pyc
o
�]Lb�z � @ s� d dl mZ d dlZd dlZddlmZ ddlmZmZ ddl m
ZmZm
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z ddl!m"Z"m#Z#m$Z$ ddl%m&Z& ej'Z'ej(Z(d Z)d�d
d�Z*dd
� Z+dd� Z,dd� Z-dd� Z.G dd� de/�Z0ed�ed�fed�ed�fed�ed�fd�Z1 d�dd �Z2g Z3i Z4d!d"� Z5d#d$� Z6d%d&� Z7e5d'�d(d)� �Z8e5d*�d+d,� �Z9e5d-�d.d/� �Z:e5d0�d1d2� �Z;d3d4� Z<d5d6� Z=g Z>i Z?d�d7d8�Z@d9d:� ZAd;d<� ZBe@d=�d>d?� �ZCe@d@�dAdB� �ZDe@d'�dCdD� �ZEe@d*�dEdF� �ZFdGdH� ZGdIdJ� ZHe@dK�dLdM� �ZIe@d0�dNdO� �ZJdPdQ� ZKdRdS� ZLdTdU� ZMdVdW� ZNe@dXd dY�dZd[� �ZOd\d]� ZPd^d_� ZQd`da� ZRejSfdbdc�ZTddde� ZUdfdg� ZVG dhdi� die/�ZWG djdk� dkejX�ZYdldm� ZZdndo� Z[dpdq� Z\ d�drds�Z]g Z^i Z_dtdu� Z`dvdw� Zae`dx�dydz� �Zbe`d{�d|d}� �Zcd~d� Zdd�d�� Zed�d�� Zfd�d�� Zgd�d�� Zhd�d�� Zid�d�� Zjd�d�� Zkd�d�d��Zld�d�� Zmg Zni Zod�d�d��Zpd�d�� Zq d�d�d��Zrepd��d�d�� �Zsepd{� d�d�d���Ztepd0� d�d�d���Zuepd�� d�d�d���ZvepdK� d�d�d���Zwepd�� d�d�d���Zxepd�� d�d�d���Zyepd�� d�d�d���Zzd�d�� Z{d�d�� Z|d�d�� Z}d�d�� Z~dS )�� )�absolute_importN� )�_)�hex�nullrev)� bookmarks�bundle2�bundlecaches�changegroup� discovery�error�lock�logexchange�
narrowspec�obsolete�obsutil�phases�pushkey�pycompat�requirements�scmutil�streamclone�url�util�wireprototypes)�hashutil�
stringutil�urlutil)�
repositorys narrowaclc C s� t �|d�}d }|s!d}|�d�s |�d�r t �||�}d}d}n|r(|�|�}|dd� |dd� }}|dkrBt�td �| ��|d
krV|d u rPt �|d�}t �||�S |�d�ret j
| ||| d�S |d
krnt�|�S t�td�||f ��)N� � streams HG� s HG10s UNr � s %s: not a Mercurial bundles 10� 2)�magicstrings S1s %s: unknown bundle version %s)
r
�readexactly�
startswith�headerlessfixup�joinr �Abortr �cg1unpackerr �getunbundlerr �streamcloneapplier)�ui�fh�fname�vfs�header�alg�magic�version� r5 �4/usr/lib/python3/dist-packages/mercurial/exchange.py�
readbundle5 s2 �
�r7 c C s� dd� }t | |d�}t|tj�r,|j}|dkrd}||�}|s(t�td�| ��d| S t|tj �r�d|j
v rJ||j
d �}|sIt�td�| ��nd }d}|�� D ]@}|jd
krr|j
d }|dv red
}qRtjtd�| td�d��|jdkr�|du r�t
�|j
d �}|�� } t�| �}
d|
S qR|s�t�td���d||f S t|tj�r�t�|�d }t�|�}d| S t�td�| ��)z�Infer the bundlespec from a bundle file handle.
The input file handle is seeked and the original seek position is not
restored.
c S s, zt j�| ��� d W S ty Y d S w �Nr )r �compengines�
forbundletype�
bundletype�KeyError)r2 r5 r5 r6 �speccompression[ s
�z&getbundlespec.<locals>.speccompressionNs _truncatedBZs BZs! unknown compression algorithm: %ss %s-v1s Compressions none� changegroup� version)� 01s 02s v2s7 changegroup version %s does not have a known bundlespecs# try upgrading your Mercurial client��hint� stream2s requirementss none-v2;stream=v2;%ss0 could not identify changegroup version in bundles %s-%sr"