Ë /ÈÒqg�àãóÀ—ddlmZddlmZddlmZmZddlmZm Z ddl m Z ddl mZmZe j"ej$«Gd„d««ZGd „d e«Zy ) é)Ú_)Únullrev)ÚerrorÚrevlog)Ú repositoryÚutil)Ú storageutil)Ú constantsÚrewritecó<—eZdZd%d„Zd„Zd„Zd„Zd„Zd&d„Zd „Z d „Z d „Z d „Z d „Z d„Zd„Zd„Zd'd„Zd„Zd„Zd(d„Zd(d„Zdddej.ddfd„Zdej4dfd„Z d)d„Zd„Zd„Zd*d„Zd„Z d„Z!d'd„Z"d„Z#d „Z$d!„Z%d"„Z& d+d#„Z'd$„Z(y),ÚfilelogFcó$—tj|tj|fdjd|f«dd|¬«|_||j_|jj |_|j}|jdd«|_ y)Nó/sdataTF)ÚtargetÚradixÚ censorableÚcanonical_parent_orderÚ try_splitsissue6528.fix-incoming) rÚrevlog_constantsÚ KIND_FILELOGÚjoinÚ_revlogÚfilenameÚnullidÚoptionsÚgetÚ_fix_issue6528)ÚselfÚopenerÚpathrÚoptss ú5usr/lib/python3.12/site-packages/mercurial/filelog.pyÚ__init__zfilelog.__init__sx€Ü—}‘}Ø ä$×1Ñ1°4Ð8Ø—)‘)˜W d˜OÓ,ØØ#(Øô ˆŒ ð!%ˆ� ‰ ÔØ—l‘l×)Ñ)ˆŒ Ø�~‰~ˆØ"Ÿh™hÐ'@À$ÓGˆÕócó—|jS)zõreturn an actual revlog instance if any This exist because a lot of code leverage the fact the underlying storage is a revlog for optimization, so giving simple way to access the revlog instance helps such code. )r©rs r"Ú get_revlogzfilelog.get_revlog-s€ð�|‰|Ðr$có,—t|j«S©N)Úlenrr&s r"Ú__len__zfilelog.__len__6s€Ü�4—<‘<Ó Ð r$có6—|jj«Sr))rÚ__iter__r&s r"r-zfilelog.__iter__9s€Ø�|‰|×$Ñ$Ó&Ð&r$có¸—||jtfvry |jj|«y#tt t tjf$rYywxYw)NFT) rrrÚrevÚ TypeErrorÚ ValueErrorÚ IndexErrorrÚ LookupError©rÚnodes r"Úhasnodezfilelog.hasnode<sQ€Ø �D—K‘K¤Ð)Ñ )Øð Ø �L‰L× Ñ ˜TÔ "ØøÜœ:¤z´5×3DÑ3DÐEò Ùð ús—3³#AÁANcó<—|jj||¬«S)N)ÚstartÚstop)rÚrevs©rr8r9s r"r:z filelog.revsFs€Ø�|‰|× Ñ  u°4Ð Ó8Ð8r$có8—|jj|«Sr))rÚparentsr4s r"r=zfilelog.parentsIs€Ø�|‰|×#Ñ# DÓ)Ð)r$có8—|jj|«Sr))rÚ parentrevs©rr/s r"r?zfilelog.parentrevsLó€Ø�|‰|×&Ñ& sÓ+Ð+r$có8—|jj|«Sr))rr/r4s r"r/z filelog.revOs€Ø�|‰|×Ñ Ó%Ð%r$có8—|jj|«Sr))rr5r@s r"r5z filelog.nodeRs€Ø�|‰|× Ñ  Ó%Ð%r$cól—tj|j||jj«Sr))r Ú fileidlookuprÚ display_idr4s r"Úlookupzfilelog.lookupUs*€Ü×'Ñ'Ø �L‰L˜$ § ¡ × 7Ñ 7ó ð r$có8—|jj|«Sr))rÚlinkrevr@s r"rIzfilelog.linkrevZs€Ø�|‰|×#Ñ# CÓ(Ð(r$có:—|jj||«Sr))rÚcommonancestorsheads)rÚnode1Únode2s r"rKzfilelog.commonancestorsheads]s€Ø�|‰|×0Ñ0°¸Ó>Ð>r$có8—|jj|«Sr))rÚ descendants)rr:s r"rOzfilelog.descendantsas€Ø�|‰|×'Ñ'¨Ó-Ð-r$có:—|jj||«Sr))rÚheadsr;s r"rQz filelog.headsds€Ø�|‰|×!Ñ! %¨Ó.Ð.r$có8—|jj|«Sr))rÚchildrenr4s r"rSzfilelog.childrenhs€Ø�|‰|×$Ñ$ TÓ*Ð*r$có8—|jj|«Sr))rÚ iscensoredr@s r"rUzfilelog.iscensoredkrAr$có<—|jj||¬«S©N)Ú_df)rÚrevision©rr5rXs r"rYzfilelog.revisionns€Ø�|‰|×$Ñ$ T¨sÐ$Ó3Ð3r$có<—|jj||¬«SrW)rÚrawdatarZs r"r\zfilelog.rawdataqs€Ø�|‰|×#Ñ# D¨cÐ#Ó2Ð2r$c óF—|jj|||||||¬«S)N)Ú nodesorderÚ revisiondataÚassumehaveparentrevisionsÚ deltamodeÚsidedata_helpersÚ debug_info)rÚ emitrevisions)rÚnodesr^r_r`rarbrcs r"rdzfilelog.emitrevisionsts5€ð�|‰|×)Ñ)Ø Ø!Ø%Ø&?ØØ-Ø!ð*ó ð r$c óH—|jj||||||||¬«S)N)r5ÚflagsÚ cachedelta)rÚ addrevision) rr_Ú transactionrIÚp1Úp2r5rgrhs r"rizfilelog.addrevisionˆs8€ð�|‰|×'Ñ'Ø Ø Ø Ø Ø ØØØ!ð(ó  ð r$c ó@—|rtjtd««‚|jj |«5|j r t j|j|«}|jj|||||||¬«cddd«S#1swYyxYw)Ns:revlog storage does not support missing parents write mode)Ú addrevisioncbÚduplicaterevisioncbrcÚdelta_base_reuse_policy) rÚAbortrrÚ_writingrr Úfilter_delta_issue6528Úaddgroup) rÚdeltasÚ linkmapperrjrnroÚmaybemissingparentsrcrps r"rtzfilelog.addgroupžs�€ñ Ü—+‘+Üð*óóð ð�\‰\× "Ñ " ;Õ /à×"Ò"Ü ×7Ñ7¸¿ ¹ ÀfÓM�à—<‘<×(Ñ(ØØØØ+Ø$7Ø%Ø(?ð)ó÷ 0× /Ò /ús ¼ABÂBcó8—|jj|«Sr))rÚ getstrippoint)rÚminlinks r"ryzfilelog.getstrippointÀs€Ø�|‰|×)Ñ)¨'Ó2Ð2r$có:—|jj||«Sr))rÚstrip)rrzrjs r"r|z filelog.stripÃs€Ø�|‰|×!Ñ! '¨;Ó7Ð7r$có>—|jj|||¬«S)N)Ú tombstone)rÚcensorrevision)rÚtrr5r~s r"rzfilelog.censorrevisionÆs€Ø�|‰|×*Ñ*¨2¨t¸yÐ*ÓIÐIr$có6—|jj«Sr))rÚfilesr&s r"r‚z filelog.filesÉs€Ø�|‰|×!Ñ!Ó#Ð#r$cóJ—tj|j|««Sr))r ÚfiltermetadatarYr4s r"Úreadz filelog.readÌs€Ü×)Ñ)¨$¯-©-¸Ó*=Ó>Ð>r$có —|s|jd«rtj||«}|j|||||«}|j |«S)Ns )Ú startswithr Úpackmetarir5)rÚtextÚmetarjÚlinkrkrlr/s r"Úaddz filelog.addÏsH€Ù �4—?‘? 7Ô+Ü×'Ñ'¨¨dÓ3ˆDØ×јt [°$¸¸BÓ?ˆØ�y‰y˜‹~Ðr$có.—tj||«Sr))r Úfilerevisioncopiedr4s r"Úrenamedzfilelog.renamedÕs€Ü×-Ñ-¨d°DÓ9Ð9r$cóÔ—|j|«}|j|«ry|j|«rt|j |««S|j j |«S)z#return the size of a given revisioné)r5rUr�r*r…rÚsize)rr/r5s r"r’z filelog.sizeØsV€ð�y‰y˜‹~ˆØ �?‰?˜3Ô ØØ �<‰<˜Ô Ü�t—y‘y “Ó'Ð 'ð�|‰|× Ñ  Ó%Ð%r$có2—tj|||« S)zpcompare text with a given file revision returns True if text is different than what is stored. )r Úfiledataequivalent©rr5r‰s r"Úcmpz filelog.cmpæs€ô ×1Ñ1°$¸¸dÓCÐCÐCr$có8—|jj|«Sr))rÚverifyintegrity)rÚstates r"r˜zfilelog.verifyintegrityís€Ø�|‰|×+Ñ+¨EÓ2Ð2r$cóB—|jj|||||¬«S)N)ÚexclusivefilesÚ sharedfilesÚrevisionscountÚ trackedsizeÚ storedsize)rÚ storageinfo)rr›rœr�ržrŸs r"r zfilelog.storageinfoðs/€ð�|‰|×'Ñ'Ø)Ø#Ø)Ø#Ø!ð (ó ð r$c óª—t|t«sd}||z}tj|«‚|jj ||jfi|¤ŽS)Ns#expected filelog to clone(), not %r)Ú isinstancer rÚProgrammingErrorrÚclone)rr€Ú destrevlogÚkwargsÚmsgs r"r¤z filelog.clonesP€Ü˜*¤gÔ.Ø8ˆCØ �:Ñ ˆCÜ×(Ñ(¨Ó-Ð -à!ˆt�|‰|×!Ñ! " j×&8Ñ&8ÑC¸FÑCÐCr$©F)r‘N)NNr))NNFNN)r$)FFFFF))Ú__name__Ú __module__Ú __qualname__r#r'r+r-r6r:r=r?r/r5rGrIrKrOrQrSrUrYr\rÚCG_DELTAMODE_STDrdrÚREVIDX_DEFAULT_FLAGSrirtryr|rr‚r…rŒr�r’r–r˜r r¤©r$r"r r sþ„óHò"ò!ò'òó9ò*ò,ò&ò&ò ò )ò?ò.ó/ò+ò,ó4ó3ð ØØ"'Ø×-Ñ-ØØó ð6Ø×)Ñ)Øó ð6Ø Ø!ØØ $ó òD3ò8óJò$ò?óò :ò &òDò3ð ØØØØó  ó"Dr$r có>‡—eZdZdZdˆfd„ Zˆfd„Zˆfd„Zd„ZˆxZS)Ú narrowfilelogz0Filelog variation to be used with narrow stores.có@•—tt|� |||¬«||_y)N)r)Úsuperr°r#Ú _narrowmatch)rrr Ú narrowmatchrÚ __class__s €r"r#znarrowfilelog.__init__ s!ø€Ü Œm˜TÑ+¨F°DÀIÐ+ÔNØ'ˆÕr$có\•—tt|� |«}|r|j|d«sy|S)Nr‘)r²r°r�r³)rr5Úresrµs €r"r�znarrowfilelog.renameds2ø€Ü”M 4Ñ0°Ó6ˆñ �t×(Ñ(¨¨Q©Ô0Øàˆ r$c󦕗|j|«}tt|�|«rt |j |««Stt|�|«Sr))r5r²r°r�r*r…r’)rr/r5rµs €r"r’znarrowfilelog.size'sFø€ð�y‰y˜‹~ˆÜ ” Ñ -¨dÔ 3Ü�t—y‘y “Ó'Ð '䜨Ñ2°3Ó7Ð 7r$cót—|j|j|««r|dk7S|j|«|k7S)Nr$)rUr/r…r•s r"r–znarrowfilelog.cmp0s5€ð �?‰?˜4Ÿ8™8 D›>Ô *ؘ3‘;Ð à�y‰y˜‹ $Ñ&Ð&r$r¨) r©rªr«Ú__doc__r#r�r’r–Ú __classcell__)rµs@r"r°r° sø„Ù:õ(ôô,8ö 'r$r°N)Úi18nrr5rÚrrÚ interfacesrrÚ interfaceutilÚutilsr Ú revlogutilsr rr Ú implementerÚ ifilestorager r°r®r$r"ÚrÄs`ðõÝ÷÷õ÷ð €×ј:×2Ñ2Ó3÷lDðlDó4ðlDô^/'�Gõ/'r$