^c"ddlmZddlmZddlmZmZddlmZm Z ddl m Z ddl mZmZe jejGddZGd d eZd S) )_)nullrev)errorrevlog) repositoryutil) storageutil) constantsrewriteceZdZdZdZdZdZd&dZdZd Z d Z d Z d Z d Z dZdZd'dZdZdZd(dZd(dZdddejdfdZdejdfdZ d)dZdZdZd*dZdZdZ d'dZ!d Z"d!Z#d"Z$d#Z% d+d$Z&d%Z'dS),filelogctj|tj|fdd|fdd|_||j_|jj|_|j}|dd|_ dS)N/sdataTF)targetradix censorablecanonical_parent_ordersissue6528.fix-incoming) rrevlog_constants KIND_FILELOGjoin_revlogfilenamenullidoptionsget_fix_issue6528)selfopenerpathoptss 3/usr/lib/python3/dist-packages/mercurial/filelog.py__init__zfilelog.__init__s}} $148))WdO,,#(     !% l) ~"hh'@$GGc*t|jSN)lenrrs r!__len__zfilelog.__len__,s4<   r#c4|jSr%)r__iter__r's r!r*zfilelog.__iter__/s|$$&&&r#c||jtfvrdS |j|dS#tt t tjf$rYdSwxYw)NFT) rrrrev TypeError ValueError IndexErrorr LookupErrorrnodes r!hasnodezfilelog.hasnode2sg DK) ) )5  L  T " " "4:z53DE   55 s0"AANc:|j||S)N)startstop)rrevsrr6r7s r!r8z filelog.revs<s|  u4 888r#c6|j|Sr%)rparentsr1s r!r;zfilelog.parents?s|##D)))r#c6|j|Sr%)r parentrevsrr,s r!r=zfilelog.parentrevsB|&&s+++r#c6|j|Sr%)rr,r1s r!r,z filelog.revEs|%%%r#c6|j|Sr%)rr2r>s r!r2z filelog.nodeHs|  %%%r#cLtj|j||jjSr%)r fileidlookupr display_idr1s r!lookupzfilelog.lookupKs%' L$ 7   r#c6|j|Sr%)rlinkrevr>s r!rGzfilelog.linkrevPs|##C(((r#c8|j||Sr%)rcommonancestorsheads)rnode1node2s r!rIzfilelog.commonancestorsheadsSs|00>>>r#c6|j|Sr%)r descendants)rr8s r!rMzfilelog.descendantsWs|''---r#c8|j||Sr%)rheadsr9s r!rOz filelog.headsZs|!!%...r#c6|j|Sr%)rchildrenr1s r!rQzfilelog.children^s|$$T***r#c6|j|Sr%)r iscensoredr>s r!rSzfilelog.iscensoredar?r#c:|j||SN)_df)rrevisionrr2rVs r!rWzfilelog.revisionds|$$Ts$333r#c:|j||SrU)rrawdatarXs r!rZzfilelog.rawdatags|##Dc#222r#FcB|j||||||S)N) nodesorder revisiondataassumehaveparentrevisions deltamodesidedata_helpers)r emitrevisions)rnodesr\r]r^r_r`s r!razfilelog.emitrevisionsjs5|)) !%&?- *   r#c F|j||||||||S)N)r2flags cachedelta)r addrevision) rr] transactionrGp1p2r2rdres r!rfzfilelog.addrevision|s;|''     !(   r#c0|r!tjtd|j|5|jrt j|j|}|j|||||cdddS#1swxYwYdS)Ns:revlog storage does not support missing parents write mode) addrevisioncbduplicaterevisioncb) rAbortrr_writingrr filter_delta_issue6528addgroup)rdeltas linkmapperrgrkrlmaybemissingparentss r!rpzfilelog.addgroups  +* \ " "; / /  " N 7 fMM<((+$7 )                  sAB  BBc6|j|Sr%)r getstrippoint)rminlinks r!ruzfilelog.getstrippoints|))'222r#c8|j||Sr%)rstrip)rrvrgs r!rxz filelog.strips|!!';777r#r#c<|j|||S)N) tombstone)rcensorrevision)rtrr2rzs r!r{zfilelog.censorrevisions|**2ty*IIIr#c4|jSr%)rfilesr's r!r~z filelog.filess|!!###r#cPtj||Sr%)r filtermetadatarWr1s r!readz filelog.reads)$--*=*=>>>r#c|s|drtj||}||||||}||S)Ns ) startswithr packmetarfr2)rtextmetarglinkrhrir,s r!addz filelog.addsZ  44??7++ 4'd33Dt[$B??yy~~r#c,tj||Sr%)r filerevisioncopiedr1s r!renamedzfilelog.renameds-dD999r#c||}||rdS||r"t||S|j|S)z#return the size of a given revisionr4)r2rSrr&rrsize)rr,r2s r!rz filelog.sizespyy~~ ??3   1 <<   (tyy'' '|  %%%r#c0tj||| S)zpcompare text with a given file revision returns True if text is different than what is stored. )r filedataequivalentrr2rs r!cmpz filelog.cmps 1$dCCCCr#c6|j|Sr%)rverifyintegrity)rstates r!rzfilelog.verifyintegritys|++E222r#c@|j|||||S)N)exclusivefiles sharedfilesrevisionscount trackedsize storedsize)r storageinfo)rrrrrrs r!rzfilelog.storageinfos2|'')#)#! (   r#c t|tsd}||z}tj||jj||jfi|S)Ns#expected filelog to clone(), not %r) isinstancer rProgrammingErrorrclone)rr| destrevlogkwargsmsgs r!rz filelog.clonesV*g.. .8C : C(-- -!t|!"j&8CCFCCCr#)r4N)NNr%)NNF)r#)FFFFF)(__name__ __module__ __qualname__r"r(r*r3r8r;r=r,r2rErGrIrMrOrQrSrWrZrCG_DELTAMODE_STDrarREVIDX_DEFAULT_FLAGSrfrprurxr{r~rrrrrrrrr#r!r r sHHH !!!'''9999***,,,&&&&&&   )))???...////+++,,,44443333 "'-    2)    6 !<333888JJJJ$$$??? ::: & & &DDD333      "DDDDDr#r c<eZdZdZfdZfdZfdZdZxZS) narrowfilelogz0Filelog variation to be used with narrow stores.chtt|||||_dSr%)superrr" _narrowmatch)rrr narrowmatch __class__s r!r"znarrowfilelog.__init__s1 mT""++FD999'r#ctt||}|r||dsdS|S)Nr4)rrrr)rr2resrs r!rznarrowfilelog.renamedsMM4((0066  t((Q00 4 r#c||}tt||r"t ||Stt||Sr%)r2rrrr&rr)rr,r2rs r!rznarrowfilelog.sizesjyy~~  % % - -d 3 3 8tyy'' '--22377 7r#c|||r|dkS|||kS)Nr#)rSr,rrs r!rznarrowfilelog.cmp sA ??488D>> * * 3; yy$&&r#) rrr__doc__r"rrr __classcell__)rs@r!rrs::(((((,88888 ' ' ' ' ' ' 'r#rN)i18nrr2rrr interfacesrr interfaceutilutilsr revlogutilsr rr implementer ifilestorager rrr#r!rsA :233\D\D\D\D\D\D\D43\D~/'/'/'/'/'G/'/'/'/'/'r#