\x89\x50\x4E\x47\x0D\x0A\x1A\x0A PNG  \x89\x50\x4E\x47\x0D\x0A\x1A\x0A  13\c@@sddlmZddlZddlZddlmZddlmZmZddl m Z m Z m Z m Z mZmZmZmZdZdZd Zed Zd Zd Zd ZdZdZedZdS(i(tabsolute_importNi(t_(tnullidtshort(t bookmarksterrortmdifft narrowspectphasestpycompatt repositoryt setdiscoveryc @s|j}|j}t|}|rZ|jd"t|||jdtWdQXn|jj}tj |j |j pdh|j }|j s|j ri}|j rt |j |discS@stS(N(tTrue(R((s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyRlstlinkrevstshallow(+trepotremotet_checkuserawstorefiledatat transactiont_fetchrawstorefilest invalidateRt trmanagerRtmatchtroott includepatst excludepatstsortedtNonet_pullchangesetdiscoverytheadstforcet_fetchchangesetsRt registernewtdraftt phasenamestadvanceboundarytindexRtupdatefromremotetuiturltgettransactiontexplicitbookmarkst_fetchmanifeststdepthtsett changelogtnodetrevstaddt manifestnodetappendt_derivefilesfrommanifestst_fetchfilesfromcsetstbool(tpullopRRtusingrawchangelogandmanifestttrt narrowmatchert pathfiltertcommontfetcht remoteheadst pullheadstcsetrestphasetmanrestclnodetrevtcsetrelevantfiltert csetsforfilestmnodesforfilestmanifestlinkrevstctxR;tmnodeRtfnodes((Rs:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pytpullsx        $               )  cC@s]|j}|j}d|jdkr)tS|js6tSt|rFtSd|jkrYtStS(sFCheck whether we should use rawstorefiledata command to retrieve data.trawstorefiledatatcommandstrevlogv1(RRt apidescriptortFalsetstreamclonerequestedtlent requirementsR(RCRR((s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyRs    c C@s^|jL}|jdiddgd6j}t|}|jjtdd|ddtd }||jd xtrMyt|}Wnt k rPnXx6dD].}||krt j td|qqW|d dkr|j }nt j td|d |d } |j |d d} xtryt|} Wnt k rrPnX| t| 8} | d krt j td|d n|jdt| | j| y| jrPnWqHtk r t j tdqHXqHWWdQX| rt j td|d |d | fqqWWdQXWdQXdS(NRYR:t manifestlogtfilesR ttotalt totalsizetunittbytesitlocationtpathtsizes remote file data missing key: %ststores&invalid location for raw file data: %stwbsFreceived invalid number of bytes for file data; expected %d, got extratsteps:did not receive indefinite length bytestring for file datasAreceived invalid number of bytes forfile data; expected %d got %d(RgRhRi(tcommandexecutort callcommandtresulttnextR3t makeprogressRtupdateRt StopIterationRtAborttsvfstopenR_t incrementtwritetislasttAttributeError( RRtetobjstoveralltprogresstfilemetatktvfstbytesremainingtfhtchunk((s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyR sZ                 c@s|r>|jjtfd|Dr>|t|fSntj|j||d|\}}}t|}t|}|r|r|jjj |fd|DO}t|j |rg}qn|j t |||fS(s-Determine which changesets need to be pulled.c3@s|]}|VqdS(N((t.0thead(t knownnode(s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pys sRc@s"h|]}|kr|qS(((RR(tnodemap(s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pys s ( R:thasnodetallR]R tfindcommonheadsR3R9t unfilteredRtissubsettdiscardR(RRR*RRHRIRJ((RRs:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyR)s !     c C@s|jm}|jdiidd6t|d6t|d6gd6ddd d hd 6j}t|||SWdQXdS( Nt changesetdatatchangesetdagrangettypetrootsR*t revisionsRtparentsRMtrevisiontfields(RmRnR'Rot_processchangesetdata(RRERRHRIRJR{R|((s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyR,s  c @s,jddttj|jj}|jj|t}j j t ddt dd|j difd}fd }d t jDifd }j||tj|d |}ji|d 6d6d6d6S(Ntprechangegrouptthrowt changesetsRetchunksRct totalitemsc@s$jjdt|tS(Nsadd changeset %s (R3tdebugRR_(R;(tclR(s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pytlinkrev.sc@s3j|j|}|j|j|<s c 3@sxD]}|d}d|kr;|dj|nx$|jdgD]}||}|s\q&n|j|}|jdidd 6|d 6ddhd6td6j}t||j|j| || |jtj|WdQXq&W| ji|d6|d6S(Ntc s@sx|D]}|d}i}x0|jdgD]\}}t|||tmtmdRhtfnode((s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyR@s     c @sd}|jjtddtddtd|jD}d}gt|jD] }|^qb} xZtjdt | |D]=} g| | | |!D] }|^q} | sqn|j } g} i}x{| D]s\}}| j || j d i|d 6t|d 6d d hd6t d6ffd|jD||$si'itfiledataRhRRRRRc@s#i|]\}}||qS(((RR;R>(R(s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pys <s N(R3RqRtsumt itervaluesR'RR RR_RmR?RnRRRoRptfileRRRR(RRERRWRRR~Rtxt fnodeslistRRR{tfst locallinkrevsRhRtfR|Rj((Rs:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyt _fetchfiless: %"$       c @s2d}|jjtddtddtd|jD} |jdd} | jd d } tj|j k} d d h} |j j | p| }|s| j d nxrt jdt|| D]U}g|||| !D] }|^q}|s qn|j}iidd6|d6gd6| d6|d6}|rY||dysRZt filesdataRiPRRRitchangesetexplicitRRRRRRGt totalpathsRhc@s#i|]\}}||qS(((RRRV(t manlinkrevs(s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pys s c@s"|kr|S|SdS(N((R;(RR(s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyt getlinkrevs RtmaybemissingparentsN(R3RqRRRR\RR t!REPO_FEATURE_SHALLOW_FILE_STORAGEtfeaturesR:RPR=R RR_RmRnRoRpRRRRR(RRERRGRWtcsetsRRRR~RRt shallowfilesRRRRRR{targsR|R}theaderRhRjR((RRRs:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyRAKsN (    "$      (t __future__RRRti18nRR;RRRRRRRRR R R RXRR RR)R,RR7R@RR]RA(((s:/usr/lib64/python2.7/site-packages/mercurial/exchangev2.pyts  : p  B   Z k L