2bimSrSSKrSSKrSSKrSSKJr SSKJrJrJ r J r SSK J r SSK Jr SSKJr SSKJrJrJrJrJrJrJr SS KJr SS KJrJr SS KJr SS K J!r! SS K"J#r# SSK$J%r%J&r& SSK'J(r(J)r) SSK*J+r+ SSK,J-r- SSK.J/r/ SSK0J1r1 SSK2J3r3J4r4 SSK5J6r6J7r7 SSK8J9r9 SSK:J;r;Jr> SSK?J@r@ SSKAJBrB SSKCJDrD \1"\E5rFS\/S\-S\S\GS\GS \4 S!jrHS"\!S#\IS$\JS S4S%jrK"S&S'5rLS2S"\!S(\&S)\ \IS*\ \6S \L4 S+jjrMS2S"\!S)\ \IS*\ \6S \L4S,jjrNS2S"\!S#\IS(\&S$\JS)\ \IS*\ \6S \ \L4S-jjrOS3S"\!S)\IS*\ \6S.\GS \ \I4 S/jjrP"S0S15rQg)4z)Prepares a distribution for installation N)Path)DictIterableListOptional)canonicalize_name))make_distribution_for_install_requirement)InstalledDistribution)DirectoryUrlHashUnsupported HashMismatch HashUnpinnedInstallationErrorMetadataInconsistentNetworkConnectionErrorVcsHashUnsupported) PackageFinder)BaseDistributionget_metadata_distribution) ArchiveInfo)Link)Wheel)BatchDownloader Downloader)HTTPRangeRequestUnsupporteddist_from_wheel_url) PipSession) BuildTracker)InstallRequirement) getLogger)direct_url_for_editabledirect_url_from_link)Hashes MissingHashes) indent_log) display_path hash_filehide_urlredact_auth_from_requirement) TempDirectory) unpack_file)vcsreq build_trackerfinderbuild_isolationcheck_build_depsreturnc[U5nURnUb<URX5 URX#U5 SSS5 UR 5$UR 5$!,(df  UR 5$=f)z(Prepare a distribution for installation.N)r build_tracker_idtrackprepare_distribution_metadatar)r,r-r.r/r0 abstract_dist tracker_ids ڒ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_internal/operations/prepare.py_get_prepared_distributionr9;s>cBM//J   1  7 7)9 2  2 2 44= 2 2 44 2 1  2 2 44s A'' Blinklocation verbosityc[R"UR5nUceURU[ UR 5US9 g)N)urlr<)r+get_backend_for_schemeschemeunpackr'r>)r:r;r< vcs_backends r8unpack_vcs_linkrCMs@,,T[[9K  "" "xXdhh%79Mc0\rSrSrS\S\\SS4SjrSrg)FileSpath content_typer1Nc`XlUc[R"U5SUlgX lg)Nr)rH mimetypes guess_typerI)selfrHrIs r8__init__ File.__init__Ts+   ) 4 4T :1 =D  , rD)rIrH)__name__ __module__ __qualname____firstlineno__strrrN__static_attributes__rDr8rFrFSs -S- -$-rDrFdownload download_dirhashesc[SSS9nSnU(a [XU5nU(aUnSnO,U"XR5upgU(aURU5 [ Xg5$)NrATkindglobally_managed)r)_check_download_dirrHcheck_against_pathrF)r:rWrXrYtemp_diralready_downloaded_path from_pathrIs r8 get_http_urlrc\sb (TBH""5d&"Q+  #+4"?   % %i 0  ((rDcSnU(a [XU5nU(aUnO URnU(aURU5 [US5$)z'Get file and optionally check its hash.N)r^ file_pathr_rF)r:rXrYrarbs r8 get_file_urlrftsK #"5d&"Q+ NN !!),  4  rDcUR(a [XUS9 gUR5(aeUR(a [ XUS9nO [ UUUUS9nUR (d [URXR5 U$)aKUnpack link into location, downloading if required. :param hashes: A Hashes object, one of whose embedded hashes must match, or HashMismatch will be raised. If the Hashes is empty, no matches are required, and unhashable types of requirements (like VCS ones, which would ordinarily raise HashUnsupported) are allowed. )r<NrY) is_vcsrCis_existing_diris_filerfrcis_wheelr*rHrI)r:r;rWr<rXrYfiles r8 unpack_urlrns|  {{)<##%%% % ||Dv>      ==DIIx):):; KrDwarn_on_hash_mismatchc[RRXR5n[RR U5(dg[ R SU5 U(aURU5 U$U$![a6 U(a[ RSU5 [R"U5 gf=f)zyCheck download_dir for previously downloaded file with correct hash If a correct file is found return its path else None NzFile was already downloaded %sz;Previously-downloaded file %s has bad hash. Re-downloading.) osrHjoinfilenameexistsloggerinfor_r warningunlink)r:rXrYro download_paths r8r^r^sGGLL}}=M 77>>- ( ( KK0-@    % %m 4 = $Q! IIm $ s-B=CCc^\rSrSrSrS\S\\S\S\S\S\S \ S \S \ S \S \S\S\ S\SS4U4Sjjr S\ SS4SjrS\ S\SS4SjrS\ S\4SjrS\ S\\4SjrS\ S\\4SjrS\S\\4SjrS(S\\ S\SS4SjjrS(S\ S\S\4SjjrS(S \\ S\SS4S!jjrS\ S\S\4S"jrS\ SS4S#jrS\ S\4S$jrS\ S%\S\4S&jrS'rU=r $))RequirementPreparerzPrepares a Requirement build_dirrXsrc_dirr/r0r-session progress_barr.require_hashes use_user_site lazy_wheelr<legacy_resolverr1Nc>[TU]5 X0lXlX`lXpl[ Xx5Ul[Xx5Ul Xl X l X@l XPl XlXlXlXlXl0UlSUlg)N)r)superrNr~r}r-_sessionr _downloadr_batch_downloadr.rXr/r0rruse_lazy_wheelr<r _downloaded_previous_requirement_header)rMr}rXr~r/r0r-rrr.rrrr<r __class__s r8rNRequirementPreparer.__init__s"  "* #G:.wE ) /!1-+)# /,.-5)rDr,c$URR(a<UR(d+Sn[[ URR 55nO3SnUR (a[UR 5O [U5nUR (agUR(aV[UR[5(a URnOURR5nU(a USUS3- nX#4UR:waX#4Ul [RX#5 UR(a>[5 [RSURR5 SSS5 gg!,(df  g=f)z3Provide context for the requirement being prepared.z Processing %sz Collecting %sz (from )zUsing cached %sN)r:rkis_wheel_from_cacherTr%rer,r( comes_from isinstancerbrrurvr$rs)rMr,message informationrs r8_log_preparing_link'RequirementPreparer._log_preparing_links  88  C$;$;%Gl388+=+=>?K%GCF776sww?PSTWPXK 77s~~#..#..,/NN  ^^557  A66  !T%F%F F180FD - KK -  " " -sxx/@/@A #s +F Fparallel_buildsc&URR(agURbeURR5(aURRUlgUR UR SUS9 UR5 g)z1Ensure source_dir of a linked InstallRequirement.NT) autodeleter)r:rl source_dirrjreensure_has_source_dirr}ensure_pristine_source_checkout)rMr,rs r8_ensure_link_req_src_dir,RequirementPreparer._ensure_link_req_src_dir-s} 88   ~~%%% 88 # # % % XX//CN  !! NN+ " ++-rDcvUR(dURSS9$URR(a [ 5eURR 5(a [ 5eUR(dUR(d [5eURSS9=(d [5$)NT)trust_internetF) rrYr:rirrjr is_direct is_pinnedr r#rMr,s r8_get_linked_req_hashes*RequirementPreparer._get_linked_req_hashesDs ""::T:2 2 88??$& & 88 # # % %-/ /}}S]]. zzz/B=?BrDcUR(a[RS5 gUR(a[RS5 gUR U5=(d UR UR 5$)Nz9Metadata-only fetching is not used in the legacy resolverz?Metadata-only fetching is not used as hash checking is required)rrudebugr$_fetch_metadata_using_link_data_attr _fetch_metadata_using_lazy_wheelr:rs r8_fetch_metadata_only(RequirementPreparer._fetch_metadata_onlydsk    LLK     LLQ 88  =  2 2388 < =rDcURR5nUcgURce[R SURU5 [ UUR UR5S9n[URS5nUR5nSSS5 [WURRURR5n[UR5[URR5:wa,[!USURRUR5eU$!,(df  N=f)zGFetch metadata from the data-dist-info-metadata attribute, if possible.Nz/Obtaining dependency information for %s from %srhrbName)r: metadata_linkr,ruverbosercr as_hashesopenrHreadrrsnamerraw_namer)rMr,r metadata_filefmetadata_contents metadata_dists r8r8RequirementPreparer._fetch_metadata_using_link_data_attrws ..0  ww""" = GG  %  NN **, -$$d +q ! ,2  HH   GGLL  ]33 48I#'',,8W W&VSWW\\=+A+A %, +s D:: Er:cUR(dgUR(dUR(d[R SU5 g[ UR 5n[UR5n[RSUUR5 URRSS5Sn[X4UR5$![a [R SU5 gf=f)z-Fetch metadata using lazy wheel, if possible.Nz=Lazy wheel is not used as %r does not point to a remote wheelz+Obtaining dependency information from %s %s#rz"%s does not support range requests)rrkrlrurrrsrrrvversionr>splitrrr)rMr:wheelrr>s r8r4RequirementPreparer._fetch_metadata_using_lazy_wheels "" <Download any requirements which were only fetched by metadata.rATr[zDownloading link %s to %sN)r)rHr:rkeysrurlocal_file_pathrr>rlneeds_unpacked_archiver_prepare_linked_requirement) rMrrr`links_to_fully_downloadr,batch_downloadr:filepath_s r8_complete_partial_requirements2RequirementPreparer._complete_partial_requirementss!hFKK CE,C88O803CHH ---- # ( ( *  $2 D-8 LL4d E)/C#+ .6  SXX\\ * <<<**4>:$2&-C  , ,S B-rDc"UR(deURU5 [5 SnURb[URR(a@UR U5n[ URURUUR(+S9nUb#X0RURR'O&URU5nUbSUl UsSSS5 $URX5sSSS5 $!,(df  g=f)z3Prepare a requirement to be obtained from req.link.N)roT) r:rr$rXrlrr^rrr>rneeds_more_preparationr)rMr,rrerYrs r8prepare_linked_requirement.RequirementPreparer.prepare_linked_requirementsxxx   % \I  ,1B1B44S9/HH%%/2.E.E*E  $1:  .!% 9 9# >  ,15C.(7\<33CI=\\sB-D&D Dreqsc UVs/sHo3R(dMUPM nnUHnURcMURR(dM/UR U5n[ URURU5nUcMfXPR URR'SUlM /nUH8nUR(aURU5 M'URX25 M: URUUS9 gs snf)z,Prepare linked requirements more, if needed.NF)r) rrXr:rlrr^rr>appendrr)rMrrr,rYrers r8 prepare_linked_requirements_more4RequirementPreparer.prepare_linked_requirements_mores $Bt'A'AtBC  ,1B1B1B44S9/$:K:KVT (5>$$SXX\\216C.?A!C)))00500F  ++ %+ , +Cs D D c|UR(deURnURU5nU(aUR(aURceUR(deUR (de[ URR[5(a\URRR(a7URURRR5(aSnO2[RS5 URUlURnURX5 UR5(aSnOUR UR";a:[%UUR&UR(UR*UR,U5nO;UR"UR nU(aUR5U5 [7USS9nURcUR8(ae[;X1R&5Ul[ URR[5(apURRR(dKU(aD[=UR>5SRA5nSU3URRl!U(aUR>Ul"[GUURHURJURLURN5n U $![.a n[1SR3XU55eSnAff=f)NzyThe hashes of the source archive found in cache entry don't match, ignoring cached built wheel and re-downloading source.zDCould not install requirement {} because of HTTP error {} for URL {})rIrzsha256=)(r:rr download_inforlrkrrvrrY has_one_ofrurwcached_wheel_source_linkrrjr>rrnrrr<rXrrformatr_rFeditabler!r&rH hexdigesthashrr9r-r.r/r0) rMr,rr:rY local_fileexcrerdists r8r/RequirementPreparer._prepare_linked_requirement-sxxxxx,,S1 c--$$0 00== =<< <3,,11;??%%**11%%c&7&7&<&<&C&CDD 1 77xx %%c;    ! !J XXT-- - 'NNNNNN%%  ((2I)))4id;J    $|| ## 4T>> JC  3,,11;??))..55 1!4>>@18v.>!!&&+ ",//C )     KK   ! !   W* '**0&4*@ s98L L;L66L;cURceURceURnUR(d&UR5(a-UR(aUR UR5 gUR5(a[ RSU5 gURcg[RRURUR5n[RRU5(dC[R"URU5 [!U5n[ R#SU5 gg)NzENot copying link to destination directory since it is a directory: %szSaved %s)rXr:rirjrarchiverurrrqrHrrrsrtshutilcopyr%rv)rMr,r:download_locationrys r8save_linked_requirement+RequirementPreparer.save_linked_requirements  ,,,xx###xx ;;4//11cll KK)) *     ! ! LL.      & GGLL):):DMMJww~~/00 KK++-> ?():;M KK M 21rDcVUR(dS5e[RSU5 [5 UR(a[ SR U55eURUR5 UR5 UR(de[UR5Ul [UURUR UR"UR$5nUR'UR(5 SSS5 U$!,(df  W$=f)z Prepare an editable requirement.z-cannot prepare a non-editable req as editablez Obtaining %szoThe editable requirement {} cannot be installed when requiring hashes, because there is no single file to hash.N)rrurvr$rrrrr~update_editablerr unpacked_source_directoryrr9r-r.r/r0check_if_existsr)rMr,rs r8prepare_editable_requirement0RequirementPreparer.prepare_editable_requirements ||LLL| NC( \""'"F3K  % %dll 3    !>> !> 78U8U VC -"" $$%% D    2 2 3), -\, s CD D( skip_reasoncUR(dS5eUc SRUR55e[RSX!URR5 [ 5 UR (a[RS5 [U5R5sSSS5 $!,(df  g=f)z)Prepare an already-installed requirement.z(req should have been satisfied but isn'tNzAdid not get skip reason skipped but req.satisfied_by is set to {}zRequirement %s: %s (%s)zSince it is already installed, we are trusting this package without checking its hash. To ensure a completely repeatable environment, install into an empty virtualenv.) satisfied_byrrurvrr$rrr r)rMr,rs r8prepare_installed_requirement1RequirementPreparer.prepare_installed_requirements K!KK&  !6#"2"23 &  %{9I9I9Q9Q \"" ( )-GGI\\s 1?B:: C)rrrrrr}r/r-r0rXr.rrr~rrr<)F)!rPrQrRrS__doc__rTrboolrrrintrNrrrr"rrrrrrrrrrrrrrrU __classcell__)rs@r8r{r{sF 8585sm85 85  85  85$858585858585858585 !85tB'9BdB6.%.8<. ..C*<CC@= = " #=&' ' " #'R " #@!&*C#+,>#?*C*C  *CZ@E$J%$J8<$J $JNKP /0 CG  rs  119QG=N7*,F5E<.=2 75! 8 5 55 5 5  5  5$N$N#N#N$N --#'# ) ))3-) V  )  )2PT! !&sm!