ó vÆ_c@sydZddlZddlZddlmZddlmZddlm Z e r—ddl m Z m Z m Z mZmZmZmZedƒZndZejd ƒZd d d d dgZd efd„ƒYZdd„Zdd„Zd„Zd„Zdefd„ƒYZd efd„ƒYZ d efd„ƒYZ!e r_ee e!efZ"nd efd„ƒYZ#dS(s PEP 610 iÿÿÿÿN(tsix(tparse(tMYPY_CHECK_RUNNING(tAnytDicttIterabletOptionaltTypetTypeVartUniontTsdirect_url.jsons.^\$\{[A-Za-z0-9-_]+\}(:\$\{[A-Za-z0-9-_]+\})?$t DirectUrltDirectUrlValidationErrortDirInfot ArchiveInfotVcsInfocBseZRS((t__name__t __module__(((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR scCsl||kr|S||}tjr;|tkr;tj}nt||ƒshtdj|||ƒƒ‚n|S(s3Get value from dictionary and verify expected type.s-{!r} has unexpected type for {} (expected {})(RtPY2tstrt string_typest isinstanceR tformat(tdt expected_typetkeytdefaulttvalue((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt_get"s   cCs=t||||ƒ}|dkr9tdj|ƒƒ‚n|S(Ns{} must have a value(RtNoneR R(RRRRR((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt _get_required3s cCscg|D]}|dk r|^q}|s:tdƒ‚nt|ƒdkr[tdƒ‚n|dS(Ns/missing one of archive_info, dir_info, vcs_infois1more than one of archive_info, dir_info, vcs_infoi(RR tlen(tinfostinfo((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt_exactly_one_of;s%  cKsd„|jƒDƒS(s Make dict excluding None values.cSs+i|]!\}}|dk r||“qS(N(R(t.0tktv((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pys Ms (titems(tkwargs((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt _filter_noneJscBs8eZdZdddd„Zed„ƒZd„ZRS(tvcs_infocCs1||_||_||_||_||_dS(N(tvcstrequested_revisiont commit_idtresolved_revisiontresolved_revision_type(tselfR*R,R+R-R.((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt__init__Ss     cCsq|dkrdS|dt|tdƒdt|tdƒdt|tdƒdt|tdƒdt|tdƒƒS(NR*R,R+R-R.(RRRR(tclsR((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt _from_dictas c Cs4td|jd|jd|jd|jd|jƒS(NR*R+R,R-R.(R(R*R+R,R-R.(R/((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt_to_dictns     N(RRtnameRR0t classmethodR2R3(((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyRPs   cBs2eZdZdd„Zed„ƒZd„ZRS(t archive_infocCs ||_dS(N(thash(R/R7((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR0|scCs)|dkrdS|dt|tdƒƒS(NR7(RRR(R1R((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR2‚s cCstd|jƒS(NR7(R(R7(R/((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR3‰sN(RRR4RR0R5R2R3(((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyRys cBs2eZdZed„Zed„ƒZd„ZRS(tdir_infocCs ||_dS(N(teditable(R/R9((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR0‘scCs/|dkrdS|dt|tddtƒƒS(NR9R(RRtbooltFalse(R1R((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR2—s cCstd|jpdƒS(NR9(R(R9R(R/((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR3 s(RRR4R;R0R5R2R3(((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR Žs  cBseeZdd„Zd„Zed„ƒZd„Zed„ƒZ d„Z ed„ƒZ d„Z RS( cCs||_||_||_dS(N(turlR!t subdirectory(R/R<R!R=((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR0«s  cCssd|kr|S|jddƒ\}}t|jtƒr\|jjdkr\|dkr\|Stj|ƒro|S|S(Nt@itgit(tsplitRR!RR*t ENV_VAR_REtmatch(R/tnetloct user_passtnetloc_no_user_pass((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt_remove_auth_from_netlocµs  cCsRtj|jƒ}|j|jƒ}tj|j||j|j|j fƒ}|S(s¯url with user:password part removed unless it is formed with environment variables as specified in PEP 610, or it is ``git`` in the case of a git URL. ( t urllib_parseturlsplitR<RFRCt urlunsplittschemetpathtquerytfragment(R/tpurlRCtsurl((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt redacted_urlÄs $cCs|j|jƒƒdS(N(t from_dicttto_dict(R/((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pytvalidateÒscCstdt|tdƒdt|tdƒdttjt|tdƒƒtjt|tdƒƒt jt|tdƒƒgƒƒS(NR<R=R!R6R8R)( R RRRR"RR2tdictR R(R1R((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyRQÖscCs8td|jd|jƒ}|jjƒ||jj<|S(NR<R=(R(RPR=R!R3R4(R/tres((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyRRås   cCs|jtj|ƒƒS(N(RQtjsontloads(R1ts((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyt from_jsonîscCstj|jƒdtƒS(Nt sort_keys(RVtdumpsRRtTrue(R/((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pytto_jsonósN( RRRR0RFtpropertyRPRSR5RQRRRYR](((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyR ©s    ($t__doc__RVtret pip._vendorRtpip._vendor.six.moves.urllibRRGtpip._internal.utils.typingRttypingRRRRRRR R tDIRECT_URL_METADATA_NAMEtcompileRAt__all__t ExceptionR RRRR"R(tobjectRRR tInfoTypeR (((sP/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/models/direct_url.pyts4  4     )