Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
§

iµµh'1ãóø—dZddlZddlZddlmZddlmZmZm	Z	m
Z
ddlmZm
Z
mZddlmZdZdd	„Zd
„Zd„Z								dd„Zd„Zd„Zd„Zd defd„Zd„Zd„Zd d„Zd!de
e	efdeefd„Zd!d„ZdS)"z~Classes for dealing with git am-style patches.

These patches are basically unified diffs with some extra metadata tacked
on.
éN)ÚSequenceMatcher)ÚBinaryIOÚOptionalÚTextIOÚUnioné)ÚS_ISGITLINKÚBlobÚCommit)ÚObjectContaineri@có —|pt|dd¦«}t|t¦«r| |¦«}|\}}| d|jzdzt
j|j¦« |¦«zdz¦«| d|j	zdz¦«| dt
j
d¦« |¦«zdz¦«| d	||fz |¦«|jzdz¦«| d¦«| d
¦«	ddl}| 
d
g|j|j¬¦«}	|	 |¦«\}
}| |
¦«| d¦«n#t t"f$rYnwxYw| |¦«| d¦«|€ ddlm}| d|z¦«dS| | |¦«dz¦«dS)zºWrite a individual file patch.

    Args:
      commit: Commit object
      progress: Tuple with current patch number and total.

    Returns:
      tuple with filename and contents
    ÚencodingÚasciisFrom ó ó
óFrom: sDate: z%a, %d %b %Y %H:%M:%S %ZzSubject: [PATCH %d/%d] ó---
rNÚdiffstat)ÚstdoutÚstdinó-- 
)Ú__version__sDulwich %d.%d.%d
)ÚgetattrÚ
isinstanceÚstrÚencodeÚwriteÚidÚtimeÚctimeÚcommit_timeÚauthorÚstrftimeÚmessageÚ
subprocessÚPopenÚPIPEÚcommunicateÚImportErrorÚOSErrorÚdulwichr)
ÚfÚcommitÚcontentsÚprogressÚversionrÚnumÚtotalr%ÚprÚ_Údulwich_versions
             ú8/usr/local/lib/python3.11/site-packages/dulwich/patch.pyÚwrite_commit_patchr7&s€ðÐ:7 1 j°'Ñ:Ô:€Hݐ(CÑ Ô ð-Ø—?’? 8Ñ,Ô,ˆØL€Sˆ%؇G‚GØØ
Œ)ñ	à
ñ	õŒ*VÔ'Ñ
(Ô
(×
/Ò
/°Ñ
9Ô
9ñ	:ðñ		ñôðð‡G‚GˆI˜œ
Ñ%¨Ñ-Ñ.Ô.Ð.؇G‚GØ•D”MÐ"<Ñ=Ô=×DÒDÀXÑNÔNÑNÐQVÑVñôðð‡G‚GØ	" c¨5 \Ñ	1×9Ò9¸(ÑCÔCØ
Œ.ñ	à
ñ	ñôðð
‡G‚GˆEN„N€N؇G‚GˆHÑÔÐðØÐÐÐà×ÒØ
ˆL ¤¸
¼ð
ñ
ô
ˆðŸ
š
 hÑ/Ô/‰
ˆ1Ø	ŠÑÔÐØ	Š‰Œˆˆøõ
Ð!ð
ð
ð
Øˆð
øøøð‡G‚GˆHÑÔÐØ‡G‚GˆHÑÔÐØ€Ø:Ð:Ð:Ð:Ð:Ð:à	ŠÐ%¨Ñ7Ñ8Ô8Ð8Ð8Ð8à	Š—’˜xÑ(Ô(¨5Ñ0Ñ1Ô1Ð1Ð1Ð1sÅ'GÇGÇGcó”—|j d¬¦«}| ¦«d dd¦«S)zrDetermine the summary line for use in a filename.

    Args:
      commit: Commit
    Returns: Summary string
    Úreplace)Úerrorsrú ú-)r$ÚdecodeÚ
splitlinesr9)r-Údecodeds  r6Úget_summaryr@\sC€ðŒn×#Ò#¨9Ð#Ñ5Ô5€GØ×ÒÑÔ Ô"×*Ò*¨3°Ñ4Ô4Ð4ócóD—|dz}||z
}|dkr|›S|s|dz}|›d|›S)z!Convert range to the "ed" format.rú,©)ÚstartÚstopÚ	beginningÚlengths    r6Ú_format_range_unifiedrIhsL€ð˜‘	€IØ
E‰\€FØ
‚{€{؈~ÐØðؐQ‰ˆ	ØÐ"Ð"˜&Ð"Ð"Ð"rAÚéú
úutf-8c
#óK—d}
td||¦« |¦«D]_}|
svd}
|rd|›nd}|rd|›nd}
d| |¦«›|›|› |	¦«V—d| |¦«›|
›|› |	¦«V—|d|d	}}t	|d
|d¦«}t	|d|d
¦«}d|›d|›d|› |	¦«V—|D]y\}}}}}|dkr|||…D]	}d|zV—Œ
Œ#|dvr'|||…D]}|d	d…dks|dz
}d|zV—Œ|dvr'|||…D]}|d	d…dks|dz
}d|zV—ŒŒzŒadS)zždifflib.unified_diff that can detect "No newline at end of file" as
    original "git diff" does.

    Based on the same function in Python2.7 difflib.py
    FNTú	rJz--- z+++ réÿÿÿÿrérKéz@@ -z +z @@Úequalr)r9Údeleters
\ No newline at end of file
ó-)r9Úinsertó+)rÚget_grouped_opcodesr=rrI)ÚaÚbÚfromfileÚtofileÚfromfiledateÚ
tofiledateÚnÚlinetermÚ
tree_encodingÚoutput_encodingÚstartedÚgroupÚfromdateÚtodateÚfirstÚlastÚfile1_rangeÚfile2_rangeÚtagÚi1Úi2Új1Új2Úlines                        r6Úunified_diffrqtswèè€ð"€GÝ   q¨!Ñ,Ô,×@Ò@ÀÑCÔCð&ñ&ˆØð		؈GØ.:ÐBÐ*˜LÐ*Ð*Ð*ÀˆHØ*4Ð<Ð&˜*Ð&Ð&Ð&¸"ˆFØM˜Ÿš¨Ñ7Ô7ÐM¸ÐMÀ8ÐMÐM×TÒTØñôð
ð
ð
ðJ˜Ÿš }Ñ5Ô5ÐI°vÐI¸xÐIÐI×PÒPØñôð
ð
ð
ð˜A”h  b¤	ˆtˆÝ+¨E°!¬H°d¸1´gÑ>Ô>ˆÝ+¨E°!¬H°d¸1´gÑ>Ô>ˆØ>[Ð>Ð> KÐ>Ð>°HÐ>Ð>×EÒEÀoÑVÔVÐVÐVÐVà#(ð	&ð	&ÑˆCR˜˜RؐgŠ~ˆ~ؘb ˜eœHð&ð&DØ ™+Ð%Ð%Ð%Ð%ØØÐ+Ð+Ð+ؘb ˜eœHð&ð&DØ   œ9¨Ò-Ð-ØÐ CÑC˜Ø ™+Ð%Ð%Ð%Ð%ØÐ+Ð+Ð+ؘb ˜eœHð&ð&DØ   œ9¨Ò-Ð-ØÐ CÑC˜Ø ™+Ð%Ð%Ð%Ð%øñ	&ð#&ð&rAcó$—d|dt…vS)z}See if the first few bytes contain any null characters.

    Args:
      content: Bytestring to check for binary content
    óN)ÚFIRST_FEW_BYTES©Úcontents r6Ú	is_binaryrw¨s€ðGÐ,_Ð,Ô-Ð-Ð-rAcó—|€dS|dd…S)Ns0000000érD)Úhexshas r6Úshortidr{±s€Ø
€~؈xàbqbŒzÐrAcó—|€dS|dz|zS)Ns	/dev/nulló/rD)r3Úroots  r6Úpatch_filenamer¸s€Ø€y؈|àd‰{˜Q‰ÐrAFÚstorecó‡—|\}}}|\}}	}
t|d¦«}t|d¦«}ˆfd„}
d„}| t||f||	f||
f¦«¦«|
||¦«}|
|	|
¦«}|sMt|j¦«st|j¦«r%d|zdz|zdz}| |¦«dS| t
||¦«||¦«||¦«¦«dS)	aWrite the diff for an object.

    Args:
      f: File-like object to write to
      store: Store to retrieve objects from, if necessary
      old_file: (path, mode, hexsha) tuple
      new_file: (path, mode, hexsha) tuple
      diff_binary: Whether to diff files even if they
        are considered binary files by is_binary().

    Note: the tuple elements should be None for nonexistent files
    óaóbcó’•—|€tjd¦«St|¦«rtjd|zdz¦«S‰|S)NrAsSubproject commit r)r
Úfrom_stringr	)Úmoderzr€s  €r6rvz"write_object_diff.<locals>.contentÑsOø€Øˆ>ÝÔ# CÑ(Ô(Ð(Ý
˜Ñ
Ô
ð	!ÝÔ#Ð$9¸FÑ$BÀUÑ$JÑKÔKÐKà˜”=Ð rAcó2—|sgS| ¦«S©N©r>rus r6Úlinesz write_object_diff.<locals>.linesÙs!€Øð	(؈Ià×%Ò%Ñ'Ô'Ð'rAs
Binary files s and s differ
N)rÚ
writelinesÚgen_diff_headerrwÚdatarrq)r,r€Úold_fileÚnew_fileÚdiff_binaryÚold_pathÚold_modeÚold_idÚnew_pathÚnew_modeÚnew_idÚpatched_old_pathÚpatched_new_pathrvrŠÚold_contentÚnew_contentÚbinary_diffs `                r6Úwrite_object_diffrœ¿s~ø€ð$,Ñ €Xˆx˜Ø#+Ñ €Xˆx˜Ý% h°Ñ5Ô5ÐÝ% h°Ñ5Ô5Ðð!ð!ð!ð!ð!ð(ð(ð(ð‡L‚Lݘ 8Ð,¨x¸Ð.BÀVÈVÐDTÑUÔUñôðð'˜( FÑ+Ô+€Kؐ'˜( FÑ+Ô+€KØð
I kÔ&6Ñ7Ô7ð
½9À[ÔEUÑ;VÔ;Vð
àØñ
àñ
ðñ
ðñ	
ð	ð	
ŠÑÔÐÐÐà	ŠÝؐkÑ"Ô"ؐkÑ"Ô"Ø Ø ñ	
ô
ñ	
ô	
ð	
ð	
ð	
rAc#óäK—|\}}|\}}|\}}|€||}|€||}t|d¦«}t|d¦«}d|zdz|zdzV—||krS|7|d|z d¦«V—d	|z d¦«V—nd
|z d¦«V—dt|¦«zdzt|¦«zV—||d
|z d¦«V—dV—dS)z¤Write a blob diff header.

    Args:
      paths: Tuple with old and new path
      modes: Tuple with old and new modes
      shas: Tuple with old and new shas
    Nr‚rƒsdiff --git rrzold file mode %o
rznew file mode %o
zdeleted file mode %o
sindex s..z %o)rrr{)	ÚpathsÚmodesÚshasr‘r”r’r•Úold_shaÚnew_shas	         r6rŒrŒùs]èè€ð!Ñ€XˆxØ Ñ€XˆxØÑ€WˆgØÐ˜HÐ0؈ØÐ˜HÐ0؈ݘh¨Ñ-Ô-€Hݘh¨Ñ-Ô-€HØ
˜8Ñ
# dÑ
*¨XÑ
5¸Ñ
=Ð=Ð=Ð=à8ÒÐØÐØÐ#Ø+¨hÑ6×>Ò>¸wÑGÔGÐGÐGÐGØ'¨(Ñ2×:Ò:¸7ÑCÔCÐCÐCÐCÐCà+¨hÑ6×>Ò>¸wÑGÔGÐGÐGÐGØ
•g˜gÑ&Ô&Ñ
&¨Ñ
.µ¸Ñ1AÔ1AÑ
AÐAÐAÐAØÐ Ð 4ؐxÑ×'Ò'¨Ñ0Ô0Ð0Ð0Ð0Ø
€K€K€K€K€KrAcój—|\}}}|\}}}t|d¦«}	t|d¦«}
d„}| t||f||ft|dd¦«t|dd¦«f¦«¦«||¦«}||¦«}
| t	||
|	|
¦«¦«dS)aWrite blob diff.

    Args:
      f: File-like object to write to
      old_file: (path, mode, hexsha) tuple (None if nonexisting)
      new_file: (path, mode, hexsha) tuple (None if nonexisting)

    Note: The use of write_object_diff is recommended over this function.
    r‚rƒcó2—|| ¦«SgSrˆr‰)Úblobs r6rŠzwrite_blob_diff.<locals>.lines)s€ØÐØ—?’?Ñ$Ô$Ð$àˆIrArN)rr‹rŒrrq)r,rŽrr‘r’Úold_blobr”r•Únew_blobr—r˜rŠÚold_contentsÚnew_contentss              r6Úwrite_blob_diffrªsï€ð&.Ñ"€Xˆx˜Ø%-Ñ"€Xˆx˜Ý% h°Ñ5Ô5ÐÝ% h°Ñ5Ô5Ððððð‡L‚LÝØ
xÐ Ø
xÐ Ý
X˜t TÑ
*Ô
*­G°H¸dÀDÑ,IÔ,IÐJñ	
ô	
ñôðð5˜‘?”?€Lؐ5˜‘?”?€L؇L‚Lݐ\ <Ð1AÐCSÑTÔTñôðððrAc	óŠ—| ||¦«}|D])\\}}\}}	\}
}t|||||
f||	|f|¬¦«Œ*dS)zéWrite tree diff.

    Args:
      f: File-like object to write to.
      old_tree: Old tree id
      new_tree: New tree id
      diff_binary: Whether to diff files even if they
        are considered binary files by is_binary().
    )rN)Útree_changesrœ)r,r€Úold_treeÚnew_treerÚchangesÚoldpathÚnewpathÚoldmodeÚnewmodeÚoldshaÚnewshas            r6Úwrite_tree_diffr¶=s€ð× Ò  ¨8Ñ4Ô4€GØDKð
ð
Ñ@ш'Ñ.˜W gÑ0@°¸ÝØ
ØØ
g˜vÐ&Ø
g˜vÐ&Ø#ð	
ñ	
ô	
ð	
ð	
ð
ð
rAr,rcóp—|pt|dd¦«}|pd}| ¦«}t|t¦«r4tj ¦«}| |¦«}n3tj ¦«}| 	|¦«}t||¦«S)zçParse a git-am-style patch and split it up into bits.

    Args:
      f: File-like object to parse
      encoding: Encoding to use when creating Git objects
    Returns: Tuple with commit object, diff contents and git version
    rr)rÚreadrÚbytesÚemailÚparserÚBytesParserÚ
parsebytesÚParserÚparsestrÚparse_patch_message)r,rr.ÚbparserÚmsgÚuparsers      r6Úgit_am_patch_splitrÄRs¡€ðÐ:7 1 j°'Ñ:Ô:€HØÐ"˜7€H؏vŠv‰xŒx€Hݐ(EÑ"Ô"ð)Ý”,×*Ò*Ñ,Ô,ˆØ× Ò  Ñ*Ô*ˆˆå”,×%Ò%Ñ'Ô'ˆØ×Ò˜xÑ(Ô(ˆÝ˜s HÑ-Ô-Ð-rAcóЗt¦«}|d |¦«|_|d |¦«|_	|d d¦«}|d d|¦«}|d|dzd…}n#t
$r|d}YnwxYw| dd¦«dz |¦«|_d	}| d	¬
¦«}| 	d	¦«}t|¦«}	|	D]v}
|
dkrnm|rZ|
 d¦«r/|
td¦«d… 
¦«|_n|xjd
|
zz
c_d}Œf|xj|
z
c_Œwd}|	D]}
|
dkrn||
z
}Œ	t|	¦« 
d
¦«}n#t$rd}YnwxYw|||fS)zøExtract a Commit object and patch from an e-mail message.

    Args:
      msg: An email message (email.message.Message)
      encoding: Encoding to use to encode Git commits
    Returns: Tuple with commit object, diff contents and git version
    ÚfromÚsubjectz[PATCHz] rQNrLrJT)r=rrrFrAr)rrr"Ú	committerÚindexÚ
ValueErrorr9r$Úget_payloadr>ÚiterÚ
startswithÚlenÚrstripÚnextÚ
StopIteration)
rÂrÚcÚpatch_tag_startÚcloserÇrgÚbodyrŠÚ	line_iterrpÚdiffr0s
             r6rÀrÀfs$€õ	‰Œ€Aؐ6Œ{×!Ò! (Ñ+Ô+€A„Hؐf”+×$Ò$ XÑ.Ô.€A„Kð.ؘiœ.×.Ò.¨xÑ8Ô8ˆðI”×$Ò$ T¨?Ñ;Ô;ˆØi”. ¨¡  Ô-ˆˆøõ	ð!ð!ð!ؐi”.ˆˆˆð!øøøð
—’  rÑ*Ô*¨TÑ1×9Ò9¸(ÑCÔC€A„IØ€Eà?Š? $ˆ?Ñ'Ô'€DØOŠO˜DÑ!Ô!€EݐU‘”€Iàð
ð
ˆØ8ÒÐØˆEØð	ØŠ˜yÑ)Ô)ð
*Ø¥ I¡¤Ð 0Ð 0Ô1×8Ò8Ñ:Ô:”à	”	˜U T™\Ñ)	”	؈EˆEà
ˆIŒI˜ÑˆIŒIˆIØ€DØððˆØ8ÒÐØˆEØ‰ˆˆðݐy‘/”/×(Ò(¨Ñ/Ô/ˆˆøÝðððØˆˆˆðøøøàˆdGÐÐs$ÁBÂB0Â/B0Æ."GÇG ÇG )NN)rJrJrJrJrKrLrMrM)Frˆ) Ú__doc__Úemail.parserrºrÚdifflibrÚtypingrrrrÚobjectsr	r
rÚpackrrtr7r@rIrqrwr{rrœrŒrªr¶rrÄrÀrDrAr6ú<module>rÞsÈðð*ððÐÐÐØ€€€Ø#Ð#Ð#Ð#Ð#Ð#Ø4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4à.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ø!Ð!Ð!Ð!Ð!Ð!à€ð32ð32ð32ð32ðl5ð5ð5ð	#ð	#ð	#ðØ
ØØØØ
ØØð1&ð1&ð1&ð1&ðh.ð.ð.ððððððð6
ð6
 ð6
ð6
ð6
ð6
ðtðððB ð ð ðF
ð
ð
ð
ð*.ð.˜% ¨Ð 0Ô1ð.¸XÀc¼]ð.ð.ð.ð.ð(-ð-ð-ð-ð-ð-rA