7i.dZddlZddlZddlZddlZddlmZmZm Z m Z ddl m Z m Z ddlmZmZddlmZddlmZmZddlmZmZdd lmZdd lmZdd lmZdd lm Z dd l!m"Z"ddl#m$Z$ddl%m&Z&ddl'm(Z(m)Z)ddl*m+Z+ddl,m-Z-ddl.m/Z/ddl0m1Z1ddl2m3Z3ejhe5Z6ejndejpZ9e ee$ee$fZ:de;dede$dettj|S)zjDetermine whether the string looks like an egg_info. :param s: The string to parse. E.g. foo-2.1 )bool _egg_info_research)rs d/mnt/ssd/data/python-lab/ChefSystem/venv/lib/python3.12/site-packages/pip/_internal/wheel_builder.py_contains_egg_infor%%s  ##A& ''req need_wheelc|jry|jr#|r tjd|jy|ry|j sy|j r|jSy)zBReturn whether an InstallRequirement should be built into a wheel.Fz(Skipping %s, due to already being wheel.T) constraintis_wheelloggerinfoname source_direditablesupports_pyproject_editable)r'r(s r$ _should_buildr2-s^  ~~ ||  KK:  >> ||..00 r&ct|dS)NTr(r2r's r$should_build_for_wheel_commandr7Ns  ..r&ct|dS)NFr4r5r6s r$ should_build_for_install_commandr9Ts  //r&c|js |jsy|jr|jjr{|jrJ|jsJt j |jj }|sJ|j|jj|jryy|jsJ|jj\}}t|ryy)z Return whether a built InstallRequirement can be stored in the persistent wheel cache, assuming the wheel cache is available, and _should_build() has determined a wheel needs to be built. FT) r0r/linkis_vcsrget_backend_for_schemeschemeis_immutable_rev_checkouturlsplitextr%)r' vcs_backendbaseexts r$ _should_cacherEZs ||3>> xxCHHOO<<~~~00A {  0 0s~~ N 88O8!!#ID#$ r& wheel_cachect|j}|jsJ|r(t|r|j |j}|S|j |j}|S)zdReturn the persistent or temporary cache directory where the built wheel need to be stored. )r! cache_dirr;rEget_path_for_linkget_ephem_path_for_link)r'rFcache_availablerHs r$_get_cache_dirrLzsa;001O 88O8=-11#((;   77A r& wheel_pathct|jxsd}ttjj |}t|j|k7rt d|d|jtt||}t|j}t|t|jk7rt d|d|j|j}| td t|}|tdk\r*t!|jtstd|dyy#t$rd|}t|wxYw) Nz)Wheel has unexpected file name: expected z, got zMissing Metadata-VersionzInvalid Metadata-Version: z1.2z+Metadata 1.2 mandates PEP 440 version, but z is not)rr.rospathbasenamer rrstrversionrmetadata_versionr r r isinstance) r'rMcanonical_namewdist dist_verstrmetadata_version_valuerUmsgs r$ _verify_oner]s_&sxx~26N bggz*+A N2"77IJ66*    "/*"=~ NDdll#KK(,@,KK"7 G99- !  "22%9::$"#9:75>)*T\\72S9+ P  3T) $*+A*BCs##$s 5 D99E output_dirverify build_optionsglobal_optionsr0c|rdnd} t||j 5t |||||}dddr|r t|||S|S#t$r,}tjd||j|Yd}~yd}~wwxYw#1swYVxYw#ttf$r,}tjd||j|Yd}~yd}~wwxYw)zaBuild one wheel. :return: The filename of the built wheel, or None if the build failed. r0wheelzBuilding %s for %s failed: %sNzBuilt %s for %s is invalid: %s) rOSErrorr,warningr. build_env_build_one_inside_envr]r r ) r'r^r_r`rar0artifacterMs r$ _build_onerjs&z7H :  * ]NH  f  Z ( :)  +  HH    %&67  NN;XsxxQR S s9 A B B B"A<<BB C "CC c td5}|jsJ|jr|jsJ|jsJ|r t j d|j|r t j d|j|r8t|j|j|j|j}nqt|j|j|j|j}n9t|j|j|j|||j}|tjj|}tjj||} t!|\} } t#j$||t j'd|j|| | j)t j'd||cdddS|js t-|| dddy#t*$r+} t j d |j| Yd} ~ Qd} ~ wwxYw#1swYyxYw) Nrc)kindz7Ignoring --global-option when building %s using PEP 517z6Ignoring --build-option when building %s using PEP 517)r.backendmetadata_directorytempd)r. setup_py_pathr/rar`roz3Created wheel for %s: filename=%s size=%d sha256=%szStored in directory: %sz Building wheel for %s failed: %s)rr. use_pep517rnpep517_backendr,rerrQrrrpunpacked_source_directoryrPrRjoinrshutilmover- hexdigest Exception_clean_one_legacy) r'r^r`rar0temp_dirrM wheel_name dest_path wheel_hashlengthris r$rgrgs G $=xxx >>)) ))%% %%MsxxLchh1..'*'='="--  0..'*'='="--  ,XX!//88-+mm J  !))*5J Z 2{==h 6HH i==s7E'I5A,H +I I!H<7I<III ct|j|}tjd|j t |d|j y#t$r#tjd|jYywxYw)N)razRunning setup.py clean for %szpython setup.py clean) command_desccwdTz Failed cleaning build dir for %sF) rrpr,r-r.rr/rxerror)r'ra clean_argss r$ryrysp+ %J  KK/: %<#..   7BsA)A>=A> requirementsc |sggfStjddjd|Dt5gg}}|D]}|jsJt ||}t ||||||jxr |j} | r|j|j||jtt| |_ |jj|_|jj sJ|j#||j#| dddr=tjddj|Dcgc]}|jc}r=tjddj|Dcgc]}|jc}||fS#1swYxYwcc}wcc}w)zBuild wheels. :return: The list of InstallRequirement that succeeded to build and the list of InstallRequirement that failed to build. z*Building wheels for collected packages: %sz, c34K|]}|jyw)N)r.).0r's r$ zbuild..7s3s#((3sNzSuccessfully built %s zFailed to build %s)r,r-rtrr.rLrjr0permit_editable_wheels download_inforecord_download_originrrr; file_pathlocal_file_pathr+append) rrFr_r`rabuild_successesbuild_failuresr'rH wheel_files r$buildr%s 2v  KK4 3l33 +*,b +C88O8&sK8I# ;!;!; J$$0 66y#BSBST J 78&)hh&8&8#xx((((&&s+%%c*1 ++: # HH/:3chh: ;  HH.93chh9 : N **Q++@; :sC'F/F; G/F8)H__doc__loggingos.pathrPrerutypingrrrrpip._vendor.packaging.utilsrrpip._vendor.packaging.versionr r pip._internal.cacher pip._internal.exceptionsr r pip._internal.metadatarrpip._internal.models.linkrpip._internal.models.wheelr$pip._internal.operations.build.wheelr-pip._internal.operations.build.wheel_editabler+pip._internal.operations.build.wheel_legacyrpip._internal.req.req_installrpip._internal.utils.loggingrpip._internal.utils.miscrr$pip._internal.utils.setuptools_buildrpip._internal.utils.subprocessrpip._internal.utils.temp_dirrpip._internal.utils.urlsrpip._internal.vcsr getLogger__name__r,compile IGNORECASEr" BuildResultrSr!r%r2r7r9rErLr]rjrgryrr&r$rsX 22OA*KJ*,CNJ<2:K:60!   8 $rzz;R]]K D+,d3E.FFG (#($(  B/ / / 0 0 0   d^@        ' S T :# ## #9 # I #  #c]#LD DD9DI D  D c] DN-tCyT"=+-.=+=+ =+9 =+ I =+  =+r&