K iVdZddlmZddlZddlZddlZddlZddlZddlZddl Z ddl m Z m Z ddl mZddlmZddlmZmZddlmZmZdd lmZmZdd lmZd d lmZmZm Z d d l!m"Z"d dl#m$Z$d dl m%Z%ddl&m&Z'ddl(m)Z)ddZ*e+ejXddZ-dZ.ddZ/d dZ0d!dZ1 d" d#dZ2d$dZ3ddZ4GddeZ5y)%zI Create a wheel (.whl) distribution. A wheel is a built archive format. ) annotationsN)IterableSequence)BytesGenerator)iglob)Literalcast) ZIP_DEFLATED ZIP_STORED)tagsversion) WheelFile)Command __version___shutil)_safe_license_file) safer_name)SetuptoolsDeprecationWarning)egg_info)logc ttj|S#tj$r,|j dd}t j dd|cYSwxYw)zB Convert an arbitrary string to a standard version string  .z[^A-Za-z0-9.]+-)str_packaging_versionVersionInvalidVersionreplaceresubr s d/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/setuptools/command/bdist_wheel.py safe_versionr&"sW6%--g677  , ,6//#s+vv&W556s >#s ##r-ctj|}|$|r tjd|dtd|S||k(S)zfUse a fallback value for determining SOABI flags if the needed config var is unset or unavailable.zConfig variable 'z+' is unset, Python ABI tag may be incorrectr stacklevel)r;get_config_varwarningswarnRuntimeWarning)varfallbackexpectedrFvals r%get_flagrLOsL  " "3 'C {  MM#C5(ST   (?r-cztjd}tj}|sW|dvrSt t drCd}d}t dt t d|dk(rd }|tj||}|S|r/|dk(r*|jd rd|jd d z}|S|rA|dk(r<|jdr+|jd d }t t dr|d z }|S|rL|dk(rGd j|jd dd}|jddjd d}|S|rL|dk(rGd j|jd dd}|jddjd d}|S|r$|jddjd d}|Sd}|S)zJReturn the ABI tag based on SOABI (if available) or emulate SOABI (PyPy2).SOABI)cppp maxunicodePy_DEBUGgettotalrefcountrO)rFdcpythonrrrrPNrrr:graalpy) r;rDr interpreter_namehasattrr1rLinterpreter_versionr=splitjoinr!)soabiimplrUuabis r% get_abi_tagrb`s))'2E  "D T\)gc<.H   J-? @PT VAt//121#aS9, J+ 44)|j>ddjAs tCdyy)Nbdistwheelrz.data)rzrvr~rqz=The [wheel] section is deprecated. Use [bdist_wheel] instead.r)1trueyesTz#bdist_wheel.universal is deprecatedaj With Python 2.7 end-of-life, support for building universal wheels (i.e., wheels that support both Python 2 and Python 3) is being obviated. Please discontinue using this option, or if you still need it, file an issue with pypa/setuptools describing your use case. )i)due_datez1Build tag (build-number) must start with a digit.)"rtget_finalized_command bdist_baseospathr]r{r egg_info_cls distributionget_command_objensure_finalizedwheel_dist_nameruboolrvrset_undefined_optionsrshas_ext_moduleshas_c_librariesr}_validate_py_limited_apiget_option_dictrrFstriplowerrqremitrisdigit ValueError)rrr need_optionsrrKs r%finalize_optionszbdist_wheel.finalize_optionss~~33G<GGJWW\\*g>DN    %L$*;*;*K*KJ*WXH  % % ',,w6 "&t~~"6> """7MS|-LM    - - / V43D3D3T3T3V  %%'!!11': %  HHT U $Q'--/Cyy{22!% >> ( - -5'     (1B1B2A1F1N1N1PPQ Q2Q (r-c|jsytjt|jst dtdt j drt d|jdy)Nzpy-limited-api must match ''Py_GIL_DISABLEDz`py_limited_api=z` not supported. `Py_LIMITED_API` is currently incompatible with `Py_GIL_DISABLED`. See https://github.com/python/cpython/issues/111506.)rr"matchPY_LIMITED_API_PATTERNrr;rDrs r%rz$bdist_wheel._validate_py_limited_apisv"" xx.0C0CD:;Q:RRSTU U  # #$5 6"4#6#6"9:GG  7r-ct|jjt|jj g}|j r|j |j dj|S)z4Return distribution full name with - replaced with _r)rrget_namerd get_versionrappendr])r componentss r%rzbdist_wheel.wheel_dist_name$sg t((113 4 $++779 :       d// 0xx ##r-c|jr|jr |j}nn|jrd}n_|jr(|jjds |j}nt |j }t r |dvrd}|dvrd}|jjddjd djd d}|jr"|jrd }n |j}|d |f}|Stj}tj}||z}|jr#||zjd r|j}d}n!tt!j}|||f}tj"Dcgc]}|j$|j&|f}}||vs Jd||Scc}w)Nanyr6)r8 linux_x86_64 linux_i686)r9 linux_aarch64 linux_armv7lrr:rrzpy2.py3nonecp3abi3z'would build wheel with unsupported tag )rrvr}r=r<rtr.rr!rqr4r rYr[rrrbsys_tags interpreterra) rrvr_tag impl_nameimpl_verabi_tagtsupported_tagss r%get_tagzbdist_wheel.get_tag/s  " "t~~I   I~~dnn&?&?&I NN )8 $& @@ ,I BB!/I OO  % %c3 / 7 7S A I I#s S    ~~ +C& #--/I//1Hx'D"" H(<'H'H'O** km,224),C<@==?67y1N.( 9#? ( s G c ~ |jd}d|_d|_|jd}d|_|js|j d|jdd}|j |_d|_|j|_d|_ |jd }d|_ d D]:}t|d |ztjj|j|<d }tj d k(rUtjj#tjj|jd}|x|_|_t||j(rdnd|t+j,d|j |j d|j/\}}} |j0d|d|d| } |j2s |j } nCtjj|j |j5|j6} |j9ddt;|j<j?dtA|j<jCd} tjj|j | } |jDrbt+jFd|jDtIjJ|jD| tMjN|jPn|jS|jP| |jU| tjjW|jXstjZ|jXtjj|jX| dz}t]|d|j_5}|ja| dddtc|j<dgjedtfjhjjdtfjhjl|f|jnsOt+j,d|j |jps tMjN|j yyy#1swYxYw)N build_scriptspythonT build_extFbuildinstall)reinit_subcommandsinstall_scripts)headersscriptsdatapurelibplatlibinstall_rRntz..install_purelibinstall_platlibzinstalling to rinstall_egg_info)targetr|z .dist-infozreusing z.whlw dist_filesrfrz removing )9reinitialize_command executableforceinplacer~ run_commandrtrootcompilewarn_dirno_epsetattrrrr]runamenormpathinstall_libbase install_libr}rinforrro_ensure_relative install_baserrrrrdrr{debugshutilcopytreerrmtreer|egg2distwrite_wheelfileexistsrzmakedirsr_zip_compression write_filesgetattrrr1r2r3minorrydry_run)rrrrrkeybasedir_observedimpl_tagrrwarchive_basenamer?distinfo_dirname distinfo_dir wheel_pathwfs r%runzbdist_wheel.runis11/B #+  " --k: !    W %++I$+O~~ !__  334EF $H QC GZ#-rww||DMM3/O P Q 77d? "ww// T]]D0QR 6F FD 4#3 !%!2!2 8I  >$..!123 #&*lln#'8"2231XJay(T}}>>L77<< 5 5g6J6J KL ""#57PQ$++44678T..::<=>j J ww||DNN4DE    II!3!3 45 6 OOD.. = NN4++ , MM$**L 9 \*ww~~dmm, KK &WW\\$--1AF1JK z3(=(=(? @ )B NN< ( ) !!<4;; %%&a(8(8(>(>'? @ =  ~~ HHy 01 2<<t~~.  ) )s R33R<z setuptools ()cxddlm}|}d|d<||d<t|jj |d<|j |j |d<|j \}}}|jdD]E}|jdD]/} |jdD]} d j|| | f|d <1Gtjj|d } tjd | t| d 5} t| dj|dddy#1swYyxYw)Nr)Messagez1.0z Wheel-Version GeneratorzRoot-Is-PurelibBuildrrTagWHEELz creating wb) maxheaderlen) email.messagerrr}rrrr\r]rrrropenrflatten) rwheelfile_base generatorrmsgrrrwr_raplatwheelfile_pathfs r%rzbdist_wheel.write_wheelfiles1 *i$O$K!$T%6%6!7!=!=!?     (,,CL'+lln#'8NN3' =D}}S) =$NN3/=D!$4d*;! 9^,-. .$ ' ;1 11 - 5 5c : ; ; ;s D00D9ctjj|\}}|ddtjk(r||ddz}|S)Nrr)rr splitdrivesep)rrdrives r%rzbdist_wheel._ensure_relativesAgg((. t !9 48#D r-c 2tdk\r$|jjjxsdSt t }|jj d}tdk\r6ttt |jjj}nd|vr|ddj}nd}d|vr3tjdtd |j|dd|s|st|tsd }|D]}t!|D]}|j#d rt%j&d |d.||vs3t(j*j-|sSt%j.d|d|d|j||S)N9r,metadata* license_filesr license_filezEThe "license_file" option is deprecated. Use "license_files" instead.rrB)z LICEN[CS]E*zCOPYING*zNOTICE*zAUTHORS*~zignoring license file "z" as it looks like a backupzadding license file "z" (matched pattern "z"))setuptools_major_versionrrrsetrrr rr\rErFDeprecationWarningadd isinstancelistrendswithrrrrisfiler)rfilesrpatternspatternrs r% license_pathszbdist_wheel.license_pathssx #r )$$--;;Ar AC $$44Z@ #r )HSM4+<+<+E+E+S+STH(*#O4Q7==? X % MMW"  IIh~.q1 2Xj4.HIH $Gg $==%II1$7RSu$)=HH/v5I'RTUIIdO $ $ r-cdd}||tjj|sddl}tjj tjj |d}|j|}d|d}|r+tjj |d}|d|dz }t|tjj |d } tj||d tjj |d } t| d 5} | jj} ddd s|| tjj |d} tj| | tjj |d}|jD]w}t|}tjj ||}tj tjj |dtj||y||y#1swYxYw)z:Convert an .egg-info directory into a .dist-info directorycTtjj|rTtjj|s5tjj |rt j |ytjj|rtj|yy)z-Appropriately delete directory, file or link.N)rrrislinkisdirrrunlink)rjs r%adiosz#bdist_wheel.egg2dist..adioss\ww~~a ):rww}}Q?Oq!" ! #r-rNz *.egg-infozEgg metadata expected at z but not foundz (z) found - possible misnamed archive file?)PKG-INFOc hdS)N> SOURCES.txt not-zip-safe requires.txtr.r,)xys r%z&bdist_wheel.egg2dist..6s !r-)ignorezdependency_links.txtzutf-8)encodingMETADATAlicensesT)exist_ok)rjrreturnNone)rrrglobr]dirnamebasenamerrrr readrcopyr'rr)r egginfo_path distinfo_pathr-r=patpossibleerralt pkginfo_pathdependency_links_pathdependency_links_filedependency_links metadata_pathlicenses_folder_path license_path safe_pathdist_info_license_paths r%rzbdist_wheel.egg2dists  mww~~l+ '',,rww|JCgg&&x{3C5 IJJS/ !ww||L*=     !# ]S499;AAC  D ' ( ]J?  L-0!ww||M:F .. >L*<8I%'WW\\2F %R " KK(>?$ O KK &< =  > l D Ds "H88Ic.t|jtr2|j|jj vr |jS|jj t |j}||Std|j)NzUnsupported compression: )r rintsupported_compressionsvaluesgetrr)rrs r%rzbdist_wheel._zip_compressionQs t'' -  D$?$?$F$F$HH## #1155c$:J:J6KL  " 4T5E5E4HIJJr-)r;r<r;r)r;ztuple[str, str, str])r rr rr;r<)rrr;r)r;z Iterable[str])rBrrCrr;r<)r;rR)__name__ __module__ __qualname__ descriptionr r rSr<r]r4 user_optionsboolean_optionsrrrpropertyrrrrrrr'rrr,r-r%rfrfsD/K  Q   %d+,A /  LR   T  +DII6L,M+NNe f  A*,r R    m=L~KO(,-R^ $$8t\/~7C;-q4Q;!;.1; ;0**X<| Kr-rf)r rr;r)r;rrV)r? str | Noner;r)TT) rHrrIrrJrrFrr;r)r;r^)6__doc__ __future__rrr"rr*r1r;rEcollections.abcrremail.generatorrr=rtypingrr zipfiler r packagingr r rwheel.wheelfilerrRrrr_core_metadatar_normalizationrrrr distutilsrr&rRr\rrr.r4r<rLrbrdrfr,r-r%rjs # .* ,9%,,/'3. 60{005a89!%)$*CG (,;? " F3UK'UKr-