\x89\x50\x4E\x47\x0D\x0A\x1A\x0A PNG  \x89\x50\x4E\x47\x0D\x0A\x1A\x0A  13\c @@sHddlmZddlZddlZddlZddlmZddlmZm Z m Z m Z m Z m Z ddlmZddlmZmZmZmZmZmZmZm ZmZmZmZejZejZejZejZej Z ej!Z!ej"Z"ej#Z#ej$Z$ej%Z%ej&Z&ej'Z'ej(Z(ej)Z)ej*Z*da+d Z,d Z-d e!d fd e"d fde*d fde&dfde#d fde'd fde$d fde d fde(d fg Z.de%fde)fgZ/dZ0dZ1de2fdYZ3de2fdYZ4e5e5dZ6dS(i(tabsolute_importN(t_(tencodingterrorthgtpycompattscmutiltutil(tdateutili( tbzrtcommontcvstdarcstfilemaptgittgnuarchRtmonotonetp4t subversiontasciicC@sQt|tjr+|jtjtdS|jdjtjtdSdS(Ntreplacesutf-8(t isinstanceRtunicodetencodetsysstrt orig_encodingtdecode(ts((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pytrecode9scC@s7|j|pd|}|s3|jd|}n|S(s >>> bmap = {b'default': b'branch1'} >>> for i in [b'', None]: ... mapbranch(i, bmap) 'branch1' 'branch1' >>> bmap = {b'None': b'branch2'} >>> for i in [b'', None]: ... mapbranch(i, bmap) 'branch2' 'branch2' >>> bmap = {b'None': b'branch3', b'default': b'branch4'} >>> for i in [b'None', b'', None, b'default', b'branch5']: ... mapbranch(i, bmap) 'branch3' 'branch4' 'branch4' 'branch4' 'branch5' tdefaulttNone(tget(tbrancht branchmap((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyt mapbranch@sR t branchsortRtsvnRt sourcesortR tmtnRR Rc C@sg}|rK|gtD]}|d^qkrKtjtd|nxptD]h\}}}y0| sw||kr||||||fSWqRttfk r} |j| qRXqRW|jsx+|D] } |jdt j | qWntjtd|dS(Nis"%s: invalid source repository types%s s%%s: missing or unsupported repository( tsource_convertersRtAbortRtNoRepot MissingTooltappendtquiettwriteRtbytestr( tuitpathttypetrevst exceptionsRtnametsourcetsortmodetinst((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyt convertsourcers)  !cC@s|rE|gtD]}|d^qkrEtjtd|nxtD]\}}y'| sn||kr~||||SWqLtk r}|jtd|qLtk r}tjd|qLXqLWtjtd|dS(Nis'%s: invalid destination repository types convert: %s s%s s%s: unknown repository type(tsink_convertersRR(RR)tnoteR*(R/R0R1RR4tsinkR7((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyt convertsinks)tprogresssourcecB@s5eZdZdZdZdZdZRS(cC@s@||_||_|jtddtdd||_dS(Ns getting filestunittfilesttotal(R/R5t makeprogressRtprogress(tselfR/R5t filecount((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyt__init__s  cC@s&|jjd||jj||S(Ntitem(RBt incrementR5tgetfile(RCtfiletrev((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyRHscC@s|jj|S(N(R5ttargetfilebelongstosource(RCttargetfilename((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyRKscC@s|jj|S(N(R5t lookuprev(RCRJ((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyRMscC@s|jjdS(N(RBtcomplete(RC((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pytcloses(t__name__t __module__RERHRKRMRO(((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyR=s     t convertercB@skeZdZdZdZdZdZdZdZdZ dZ d Z d Z RS( cC@s||_||_||_||_i|_i|_d|_t|||_ |jj}|rt j j |r|j |n|jdr|j |jd|jj|_n|j|jd|_t||jd|_dS(Nt authormapt splicemapR!(R5tdestR/toptst commitcachetauthorsRt authorfiletmapfiletmaptosR0texistst readauthormapRtparsesplicemapRTR!(RCR/R5RUt revmapfileRVRY((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyREs        c C@ss|s iSi}y2t|d}xttj|D]\}}|jdj}|sfq8ntjd|dd}t|}dt |kodknst j t d||d fnx|D]}|j j|qW|d|d d!|d}} } | | kr/| ||t|}t}i}|jj}|jjtddtdd|}x|r/|jd}||kr~qWn||jkr|j|}|t ksW|j j |rqWqn|j ||j t||j|} g||t revisionsR@i(RktsetR5t numcommitsR/RARtpopR[tSKIPREVRUthascommitfrommaptaddtupdateRlt cachecommittparentsR+RN( RCtheadstvisittknownRR{RBtnRotcommittp((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pytwalktrees.  !        cC@sxt|D]}||krc|jj|jj||s |jjtd|q q ng}xn||D]b}|jj|jj||rqtn||krtj td|n|j |qtW|||Tsc@st|ddS(Ntkeyi(R(R(tkeyfn(s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyRUs((R(RC(Rs;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pytmakesourcesorterRsc@s"fdfd}|S(sClose order sort.c@s$dj|jkj|jfS(NRO(RWtextraR(R(RC(s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyR[sc@st|ddS(NRi(R(R(R(s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyR]s((R(RC(Rs;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pytmakeclosesorterYsc@s+ifdfd}|S(sSort revisions by date.c@s4|kr,tjj|j|siii(RWRVRR5t getchangesRtbytesR}R[RRR+R RUt setbranchRTR/RRtjointKeyErrortextendt optparentsRlRzR=t putcommitROt converted(RCRJRRtchangesRUR?tcopiestcleanp2t pbranchesRRRtbR5tnewnode((RCs;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pytcopysL       ,  ! cC@sIz7|jj|jj|jj|j|jjtd|jj}|j |}|j ||j |jjtd|j ||}t |}d}|jjtd|jjtddtddt |}xt|D]\}}|d8}|j|j} d | krI| jd } n|jjd |t| f|jjtd t||j||j|qW|j|jjd ds|jj} i} xG| D]?} | | } |jj| ttkr|j| | | RyR@is is%d %s s source: %s tconverttskiptags(#R5tbeforeRUt setrevmapR[R/RRtgetheadsRRRTRRlRRARfRWtdescRhRR:RRRNt configbooltgettagsRR}tputtagst iteritemst getbookmarkst putbookmarksRtcleanup(RCR6RRtttnumRRBRqRttagstctagstktvtnrevt tagsparenttet tagsparentst bookmarkst cbookmarks((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyRsb             !   cC@s3z|jjWd|jjX|jjdS(N(RUtafterR5R[RO(RC((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyR0s( RPRQRER_RRRRR^RRRR(((s;/usr/lib64/python2.7/site-packages/hgext/convert/convcmd.pyRRs  *   z   / ?cK@sZtj|}tjadt_|jdsF|jd|dsT   .L                 "