Viewing File: /opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyo

σ
“tΖ_c@@s0ddlmZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZerγddl
mZddlmZmZmZmZmZmZddlmZdd	lmZnejeƒZejd
„ƒZejd„ƒZde fd
„ƒYZ!dS(i(tabsolute_importN(tcontextlib2(t
TempDirectory(tMYPY_CHECK_RUNNING(t
TracebackType(tDicttIteratortOptionaltSettTypetUnion(tInstallRequirement(tLinkck@s½tj}tƒ}i}xT|jƒD]F\}}y||||<Wntk
r`|||<nX|||<q%Wz	dVWdx:|jƒD],\}}||krͺ||=qˆ|||<qˆWXdS(N(tostenvirontobjecttitemstKeyError(tchangesttargettnon_existent_markertsaved_valuestnamet	new_valuetoriginal_value((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pytupdate_env_context_managers		
	
c	c@s•tjjdƒ}tjƒq}|dkrq|jtddƒƒj}|jt	d|ƒƒt
jd|ƒnt|ƒ}|VWdQXWdQXdS(NtPIP_REQ_TRACKERtkindsreq-trackers Initialized build tracking at %s(
R
RtgetRt	ExitStacktNonet
enter_contextRtpathRtloggertdebugtRequirementTracker(troottctxttracker((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pytget_requirement_tracker2sR#cB@sYeZd„Zd„Zd„Zd„Zd„Zd„Zd„Ze	j
d„ƒZRS(cC@s,||_tƒ|_tjd|jƒdS(NsCreated build tracker: %s(t_roottsett_entriesR!R"(tselfR$((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyt__init__Ds	cC@stjd|jƒ|S(NsEntered build tracker: %s(R!R"R((R+((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyt	__enter__JscC@s|jƒdS(N(tcleanup(R+texc_typetexc_valtexc_tb((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyt__exit__OscC@s4tj|jjƒƒjƒ}tjj|j|ƒS(N(	thashlibtsha224turl_without_fragmenttencodet	hexdigestR
R tjoinR((R+tlinkthashed((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyt_entry_pathXscC@sΫ|j|jƒ}y%t|ƒ}|jƒ}WdQXWn+tk
rd}|jtjkr†‚q†n"Xdj|j|ƒ}t|ƒ‚t|dƒ}|j	t
|ƒƒWdQX|jj|ƒt
jd||jƒdS(s5Add an InstallRequirement to build tracking.
        Ns{} is already being built: {}twsAdded %s to build tracker %r(R;R9topentreadtIOErrorterrnotENOENTtformattLookupErrortwritetstrR*taddR!R"R((R+treqt
entry_pathtfptcontentstetmessage((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyRF]s
cC@sCtj|j|jƒƒ|jj|ƒtjd||jƒdS(s:Remove an InstallRequirement from build tracking.
        s Removed %s from build tracker %rN(	R
tunlinkR;R9R*tremoveR!R"R((R+RG((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyRN~scC@s>x$t|jƒD]}|j|ƒqWtjd|jƒdS(NsRemoved build tracker: %r(R)R*RNR!R"R((R+RG((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyR.Šscc@s#|j|ƒdV|j|ƒdS(N(RFRN(R+RG((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyttrack‘s
(t__name__t
__module__R,R-R2R;RFRNR.t
contextlibtcontextmanagerRO(((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyR#Bs						!		("t
__future__RRRR@R3tloggingR
tpip._vendorRtpip._internal.utils.temp_dirRtpip._internal.utils.typingRttypesRttypingRRRRR	R
tpip._internal.req.req_installRtpip._internal.models.linkRt	getLoggerRPR!RSRR'RR#(((sN/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/req/req_tracker.pyt<module>s".
Back to Directory File Manager