
    vKg-W                       S r SSKJr  SSKrSSKrSSKrSSKrSSKrSSKrSSK	r	SSK
JrJr  SSKJr  SSKJr  SSKJrJr  SSKJrJr  SS	KJrJr  SS
KJr  SSKJrJrJ r   SSK	J!r!  SSK"J"r#  SSK$J%r%  SS jr&SS jr'\(" \RR                  " S5      S   5      r*Sr+S S jr,S!S jr-S"S jr. S#         S$S jjr/S%S jr0SS jr1SS jr2 " S S\5      r3g)&zI
Create a wheel (.whl) distribution.

A wheel is a built archive format.
    )annotationsN)IterableSequence)BytesGenerator)iglob)Literalcast)ZIP_DEFLATED
ZIP_STORED)tagsversion)	WheelFile   )Command__version___shutil)SetuptoolsDeprecationWarning   )egg_info)logc                2    [         R                  " SSU 5      $ )zConvert an arbitrary string to a standard distribution name
Any runs of non-alphanumeric/. characters are replaced with a single '-'.
[^A-Za-z0-9.]+-)resubnames    ^/var/www/highfloat_scraper/venv/lib/python3.13/site-packages/setuptools/command/bdist_wheel.py	safe_namer       s     66"C..    c                     [        [        R                  " U 5      5      $ ! [        R                   a-    U R	                  SS5      n [
        R                  " SSU 5      s $ f = f)z:
Convert an arbitrary string to a standard version string
 .r   r   )str_packaging_versionVersionInvalidVersionreplacer   r   r   s    r   safe_versionr*   '   sW    6%--g677,, 6//#s+vv&W556s   ! >A"!A"r#   zcp3\dc                 4    [         R                  " S5      S:H  $ )NP   )structcalcsize r    r   _is_32bit_interpreterr1   8   s    ??31$$r    c                 <    S[         R                  R                   3$ )Npy)sysversion_infomajorr0   r    r   
python_tagr7   <   s      &&'((r    c                    [         R                  " 5       nUR                  S5      (       a  U b  SSKJn  U" X5      nO [        5       (       a  US:X  a  SnOUS:X  a  SnUR                  SS	5      $ )
z0Return our platform name 'win32', 'linux_x86_64'macosxr   )calculate_macosx_platform_taglinux-x86_64z
linux-i686linux-aarch64zlinux-armv7lr   _)	sysconfigget_platform
startswithwheel.macosx_libfiler:   r1   r(   )archive_rootresultr:   s      r   r?   r?   @   si    ##%F""|'?F.|D		 	 ^#!F& $F>>#s##r    c                    [         R                  " U 5      nUc'  U(       a  [        R                  " SU  S3[        SS9  U$ XB:H  $ )zbUse a fallback value for determining SOABI flags if the needed config
var is unset or unavailable.zConfig variable 'z+' is unset, Python ABI tag may be incorrectr   
stacklevel)r>   get_config_varwarningswarnRuntimeWarning)varfallbackexpectedrI   vals        r   get_flagrO   T   sJ    
 
"
"3
'C
{MM#C5(ST
 ?r    c                    [         R                  " S5      n [        R                  " 5       nU (       da  US;   a[  [	        [
        S5      (       aF  SnSn[        S[	        [
        S5      US:H  S9(       a  S	nU [        R                  " 5        U U 3nU$ U (       a5  US:X  a/  U R                  S
5      (       a  SU R                  S5      S   -   nU$ U (       aL  US:X  aF  U R                  S5      (       a0  U R                  S5      S   n[	        [
        S5      (       a  US	-  nU$ U (       aM  US:X  aG  SR                  U R                  S5      SS 5      nUR                  SS5      R                  SS5      nU$ U (       aM  US:X  aG  SR                  U R                  S5      SS 5      nUR                  SS5      R                  SS5      nU$ U (       a$  U R                  SS5      R                  SS5      nU$ SnU$ )zJReturn the ABI tag based on SOABI (if available) or emulate SOABI (PyPy2).SOABI)cppp
maxunicode Py_DEBUGgettotalrefcountrR   )rI   dcpythonr   r   r   rS   Nr   r#   r=   graalpy   )r>   rG   r   interpreter_namehasattrr4   rO   interpreter_versionr@   splitjoinr(   )soabiimplrX   uabis        r   get_abi_tagre   e   s   ))'2E  "DT\)gc<.H.HJ-? @PTVAt//121#aS9, J+ 
44<E$4$4Y$?$?U[[%a((& J% 
44<E$4$4T$:$:kk#q!3*++3JC J 
44<hhu{{3'+,kk#s#++C5 J 
49$hhu{{3'+,kk#s#++C5 J 
mmC%--c37 J Jr    c                8    [        U 5      R                  SS5      $ Nr   r=   )r   r(   r   s    r   
safer_namerh      s    T?""3,,r    c                8    [        U 5      R                  SS5      $ rg   )r*   r(   r)   s    r   safer_versionrj      s     ((c22r    c                  T   \ rS rSrSr\\S.rSSSS\" S5       S	34S
SSSSSSSSSR                  SR                  \5      5      4SSS\" 5        S34SSS/r/ SQrS)S jrS)S jrS)S jr\S*S j5       rS+S jrS  rS!\ S"34     S,S# jjrS-S$ jr\S.S% j5       rS/S& jrS0S' jrS(rg)1bdist_wheel   zcreate a wheel distribution)storeddeflated)z
bdist-dir=bz1temporary directory for creating the distributionz
plat-name=pz8platform name to embed in generated filenames [default: N])	keep-tempkzPkeep the pseudo-installation tree around after creating the distribution archive)z	dist-dir=rX   z-directory to put final built distributions in)
skip-buildNz2skip rebuilding everything (for testing/debugging))relativeNz7build the archive using relative paths [default: false])zowner=rc   z@Owner name used when creating a tar file [default: current user])zgroup=gzAGroup name used when creating a tar file [default: current group])	universalNz4*DEPRECATED* make a universal wheel [default: false]zcompression=z6zipfile compression (one of: {}) [default: 'deflated']z, zpython-tag=z3Python implementation compatibility tag [default: 'z'])zbuild-number=NzqBuild number for this particular version. As specified in PEP-0427, this must start with a digit. [default: None])zpy-limited-api=Nz?Python tag (cp32|cp33|cpNN) for abi3 wheel tag [default: false])zdist-info-dir=Nzdirectory where a pre-generated dist-info can be found (e.g. as a result of calling the PEP517 'prepare_metadata_for_build_wheel' method))rs   ru   rv   rx   c                ,   S U l         SU l        S U l        S U l        SU l        SU l        S U l        S U l        S U l        S U l	        SU l
        SU l        S U l        S U l        SU l        SU l        [!        5       U l        S U l        SU l        SU l        g )NrU   zipFro   )	bdist_dirdata_dir	plat_nameplat_tagformat	keep_tempdist_dirdist_info_diregginfo_dirroot_is_pure
skip_buildrv   ownergrouprx   compressionr7   build_numberpy_limited_apiplat_name_suppliedselfs    r   initialize_optionsbdist_wheel.initialize_options   s    %)%)$($(!'+)-

&0$,(,49"'r    c                   U R                   (       d@  U R                  S5      R                  n[        R                  R                  US5      U l         U R                  c9  [        [        U R                  R                  S5      5      nUR                  5         U R                  S-   U l        [        U R                  5      U l        SnU R"                  " S/[%        X35      Q76   U R                  R'                  5       =(       d    U R                  R)                  5       (       + U l        U R-                  5         U R                  R/                  S5      nSU;   aG  [0        R2                  " S5        US   S   R5                  5       nUR7                  5       S	;   a  S
U l        U R8                  (       a  [:        R<                  " SSSS9  U R>                  b.  U R>                  S S RA                  5       (       d  [C        S5      eg g )Nbdistwheelr   z.data)r   r}   r   rx   z=The [wheel] section is deprecated. Use [bdist_wheel] instead.r   )1trueyesTz#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.)"r{   get_finalized_command
bdist_baseospathr`   r   r	   egg_info_clsdistributionget_command_objensure_finalizedwheel_dist_namer|   boolr}   r   set_undefined_optionsrz   has_ext_moduleshas_c_librariesr   _validate_py_limited_apiget_option_dictr   rI   striplowerrx   r   emitr   isdigit
ValueError)r   r   r   need_optionsr   rN   s         r   finalize_optionsbdist_wheel.finalize_options   s   ~~33G<GGJWW\\*g>DN%L$*;*;*K*KJ*WXH%%',,w6"&t~~"6>""7MS-LM --/V43D3D3T3T3V
 	%%' !!11':%HHTU$Q'--/Cyy{22!%>>(--5 '
 (1B1B2A1F1N1N1P1PPQQ 2Q(r    c                0   U R                   (       d  g [        R                  " [        U R                   5      (       d  [	        S[         S35      e[
        R                  " S5      (       a,  [	        SU R                   < S[        R                  < S35      eg )Nzpy-limited-api must match ''Py_GIL_DISABLEDz`py_limited_api=za` not supported. `Py_LIMITED_API` is currently incompatible with `Py_GIL_DISABLED` (sys.abiflags=z7). See https://github.com/python/cpython/issues/111506.)	r   r   matchPY_LIMITED_API_PATTERNr   r>   rG   r4   abiflagsr   s    r   r   $bdist_wheel._validate_py_limited_api   s    ""xx.0C0CDD:;Q:RRSTUU##$566"4#6#6"9 :4&)ll%6 7GG  7r    c                   [        U R                  R                  5       5      [        U R                  R	                  5       5      /nU R
                  (       a  UR                  U R
                  5        SR                  U5      $ )z4Return distribution full name with - replaced with _r   )rh   r   get_namerj   get_versionr   appendr`   )r   
componentss     r   r   bdist_wheel.wheel_dist_name/  sg     t((1134$++779:

 d//0xx
##r    c                   U R                   (       a  U R                  (       a  U R                  nOU R                  (       a  SnOrU R                  (       a-  U R                  R                  S5      (       d  U R                  nO[	        U R
                  5      n[        5       (       a  US;   a  SnUS;   a  SnUR                  5       R                  SS5      R                  S	S5      R                  S
S5      nU R                  (       a'  U R                  (       a  SnOU R                  nUSU4nU$ [        R                  " 5       n[        R                  " 5       nXE-   nU R                  (       a'  XE-   R                  S5      (       a  U R                  nSnO![        [!        5       5      R                  5       nX&U4n[        R"                  " 5        Vs/ sH  owR$                  UR&                  U4PM     nnX8;   d
   SU 35       eU$ s  snf )Nanyr9   )r;   linux_x86_64
linux_i686)r<   linux_aarch64linux_armv7lr   r=   r#   r"   zpy2.py3nonecp3abi3z'would build wheel with unsupported tag )r   r}   r   r@   r?   r{   r1   r   r(   rx   r7   r   r\   r^   r   r$   re   sys_tagsinterpreterrd   )	r   r}   rb   tag	impl_nameimpl_verabi_tagtsupported_tagss	            r   get_tagbdist_wheel.get_tag:  s    ""t~~II ~~dnn&?&?&I&I NN	 )8	$&& @@ ,I BB !/I OO%%c3/77SAII#sS 	 ~~ +C& 
# --/I//1H'D""	(<'H'H'O'O** km,224),C <@==?;Jay1?   ( 9#?( 
s   !Hc           	     	   U R                  S5      nSUl        SUl        U R                  S5      nSUl        U R                  (       d  U R                  S5        U R                  SSS9nU R                  Ul        SUl        U R                  Ul        SUl	        U R                  S	5      nSUl
        S
 H;  n[        USU-   [        R                  R                  U R                  U5      5        M=     Sn[        R                   S:X  aU  [        R                  R#                  [        R                  R                  U R                  S5      5      nU=U l        U l        [        UU R(                  (       a  SOSU5        [*        R,                  " SU R                   35        U R                  S5        U R/                  5       u  pxn	U R0                   SU SU SU	 3n
U R2                  (       d  U R                  nOC[        R                  R                  U R                  U R5                  UR6                  5      5      nU R9                  SS5        [;        U R<                  R?                  5       5       S[A        U R<                  RC                  5       5       S3n[        R                  R                  U R                  U5      nU RD                  (       ae  [*        RF                  " SU RD                   35        [H        RJ                  " U RD                  U5        [L        RN                  " U RP                  5        OU RS                  U RP                  U5        U RU                  U5        [        R                  RW                  U RX                  5      (       d   [        RZ                  " U RX                  5        [        R                  R                  U RX                  U
S-   5      n[]        USU R_                  5       5       nURa                  U5        S S S 5        [c        U R<                  S/ 5      Re                  S[f        Rh                  Rj                   S[f        Rh                  Rl                   3U45        U Rn                  (       dV  [*        R,                  " SU R                   35        U Rp                  (       d!  [L        RN                  " U R                  5        g g g ! , (       d  f       N= f)Nbuild_scriptspythonT	build_extFbuildinstall)reinit_subcommandsinstall_scripts)headersscriptsdatapurelibplatlibinstall_rU   ntz..install_purelibinstall_platlibzinstalling to r   install_egg_info)targetr   z
.dist-infozreusing z.whlw
dist_filesrl   r#   z	removing )9reinitialize_command
executableforceinplacer   run_commandr{   rootcompilewarn_dirno_epsetattrr   r   r`   r|   r   normpathinstall_libbaseinstall_libr   r   infor   r   rv   _ensure_relativeinstall_baser   rh   r   r   rj   r   r   debugshutilcopytreer   rmtreer   egg2distwrite_wheelfileexistsr   makedirsr   _zip_compressionwrite_filesgetattrr   r4   r5   r6   minorr   dry_run)r   r   r   r   r   keybasedir_observedimpl_tagr   r~   archive_basenamerB   distinfo_dirnamedistinfo_dir
wheel_pathwfs                   r   runbdist_wheel.runt  s   11/B#+ "--k:	!	W%++I$+O~~!__ 
 334EF $ HCGZ#-rww||DMM3/OP H 77d?  "ww//T]]D0QR6FFD 4#3!%!2!28I	
 	>$..!123#&*lln#8"2231XJay(T}}>>L77<< 5 5g6J6J KL 	""#57PQ$++44678T..::<=>jJ 	 ww||DNN4DEII!3!3 456OOD..= NN4++, MM$**L9\* ww~~dmm,,KK&WW\\$--1AF1JK
z3(=(=(?@BNN<( A 	!!<4;;%%&a(8(8(>(>'?@=
 	 ~~HHy 012<<t~~.    A@s   <S
S*zsetuptools ()c                   SSK Jn  U" 5       nSUS'   X$S'   [        U R                  5      R	                  5       US'   U R
                  b  U R
                  US'   U R                  5       u  pVnUR                  S5       HI  nUR                  S5       H1  n	UR                  S5       H  n
S	R                  XU
45      US
'   M     M3     MK     [        R                  R                  US5      n[        R                  " SU 35        [        US5       n[        USS9R                  U5        S S S 5        g ! , (       d  f       g = f)Nr   )Messagez1.0zWheel-Version	GeneratorzRoot-Is-PurelibBuildr#   r   TagWHEELz	creating wb)maxheaderlen)email.messager  r$   r   r   r   r   r_   r`   r   r   r   r   openr   flatten)r   wheelfile_base	generatorr  msgr  r   r~   rb   rd   platwheelfile_pathfs                r   r   bdist_wheel.write_wheelfile  s    	*i$O$K!$T%6%6!7!=!=!?(,,CL '+lln#8NN3'D}}S)$NN3/D!$4d*;!<CJ 0 * (
 ng>9^,-..$'111-55c: (''s   D22
E c                    [         R                  R                  U5      u  p!USS [         R                  :X  a  X!SS  -   nU$ )Nr   r   )r   r   
splitdrivesep)r   r   drives      r   r   bdist_wheel._ensure_relative  s=    gg((.!98#Dr    c           	     |   [         S:  a)  U R                  R                  R                  =(       d    S$ [	        5       nU R                  R                  S5      n[         S:  a6  [        [        [           U R                  R                  R                  5      nOSU;   a  US   S   R                  5       nOSnSU;   a1  [        R                  " S[        S	S
9  UR                  US   S   5        U(       d  U(       d  [        U[        5      (       d  SnU H  n[!        U5       H  nUR#                  S5      (       a  [$        R&                  " SU S35        M5  XQ;  d  M<  [(        R*                  R-                  U5      (       d  Mb  [$        R.                  " SU SU S35        UR                  U5        M     M     U$ )N9   r0   metadata*   license_filesr   license_filezEThe "license_file" option is deprecated. Use "license_files" instead.r   rE   )zLICEN[CS]E*zCOPYING*zNOTICE*zAUTHORS*~zignoring license file "z" as it looks like a backupzadding license file "z" (matched pattern "z"))setuptools_major_versionr   r&  r(  setr   r	   r   r$   r_   rH   rI   DeprecationWarningadd
isinstancelistr   endswithr   r   r   r   isfiler   )r   filesr&  patternspatternr   s         r   license_pathsbdist_wheel.license_paths  sq   #r)$$--;;ArA%$$44Z@#r)HSM4+<+<+E+E+S+STH (*#O4Q7==?X%MMW"
 IIh~.q12Xj4.H.HIHGg==%%II1$7RS $)=)=HH/v5I'RTU IIdO '   r    c                (   SS jnU" U5        [         R                  R                  U5      (       d  SSKn[         R                  R	                  [         R                  R                  U5      S5      nUR                  U5      nSU S3nU(       a+  [         R                  R                  US   5      nUSU S3-  n[        U5      e[         R                  R	                  US	5      n	[        R                  " UUS
 S9  [         R                  R	                  US5      n
[        U
SS9 nUR                  5       R                  5       nSSS5        W(       d  U" U
5        [         R                  R	                  US5      n[        R                  " X5        U R                   HV  n[         R                  R                  U5      n[        R                  " U[         R                  R	                  X/5      5        MX     U" U5        g! , (       d  f       N= f)z:Convert an .egg-info directory into a .dist-info directoryc                   [         R                  R                  U 5      (       a_  [         R                  R                  U 5      (       d;  [         R                  R	                  U 5      (       a  [
        R                  " U 5        g[         R                  R                  U 5      (       a  [         R                  " U 5        gg)z-Appropriately delete directory, file or link.N)r   r   r   islinkisdirr   r   unlink)rq   s    r   adios#bdist_wheel.egg2dist.<locals>.adios!  sh    ww~~a  ):):rww}}Q?O?Oq!""		! #r    r   Nz
*.egg-infozEgg metadata expected at z but not foundz (z) found - possible misnamed archive file?)PKG-INFOc                
    1 Sk$ )N>   r?  SOURCES.txtnot-zip-saferequires.txtr0   )xys     r   <lambda>&bdist_wheel.egg2dist.<locals>.<lambda>A  s     !r    )ignorezdependency_links.txtzutf-8)encodingMETADATA)rq   r$   returnNone)r   r   r   globr`   dirnamebasenamer   r   r   r  readr   copyr6  )r   egginfo_pathdistinfo_pathr=  rM  patpossibleerraltpkginfo_pathdependency_links_pathdependency_links_filedependency_linksmetadata_pathlicense_pathfilenames                   r   r   bdist_wheel.egg2dist  s   	 	mww~~l++
 '',,rww|<lKCyy~H-l^>JCgg&&x{3C5 IJJS/! ww||L*= 			
 !#]<R S'':>S499;AAC ;'(]J?L0 ..Lww''5HKKbggll=&KL / 	l ;:s   (H
Hc                @   [        U R                  [        5      (       a4  U R                  U R                  R	                  5       ;   a  U R                  $ U R                  R                  [        U R                  5      5      nUb  U$ [        SU R                  < 35      e)NzUnsupported compression: )r/  r   intsupported_compressionsvaluesgetr$   r   )r   r   s     r   r   bdist_wheel._zip_compressionY  s    t''--  D$?$?$F$F$HH###1155c$:J:J6KL"4T5E5E4HIJJr    )r{   r   r   r|   r   r   r   r   r   r   r   r   r   r}   r   r~   r   r7   rv   r   r   rx   )rK  rL  rK  r$   )rK  ztuple[str, str, str])r  r$   r  r$   rK  rL  )r   r$   rK  r$   )rK  zIterable[str])rR  r$   rS  r$   rK  rL  )rK  ra  )__name__
__module____qualname____firstlineno__descriptionr   r
   rb  r?   r   r`   r7   user_optionsboolean_optionsr   r   r   propertyr   r   r
  r   r   r   r6  r   r   __static_attributes__r0   r    r   rl   rl      sG   /K   	Q%d+,A/	
	
 	LR	

	

	

 	TDKK		01	
 A*,rR	

	
	

	
q?LB KO(,-R^ $ $8t\/~ 7C;-q4Q;!;.1;	;0 * *X9vKr    rl   )r   r$   rK  r$   )r   r$   rK  r$   )rK  r   rf  )rB   
str | NonerK  r$   )TT)
rK   r$   rL   r   rM   r   rI   r   rK  r   )rK  rp  )4__doc__
__future__r   r   r   r   r.   r4   r>   rH   collections.abcr   r   email.generatorr   rM  r   typingr   r	   zipfiler
   r   	packagingr   r   r%   wheel.wheelfiler   rU   r   r   r   r   r   r   	distutilsr   r   r*   ra  r_   r+  r   r1   r7   r?   rO   re   rh   rj   rl   r0   r    r   <module>rz     s    # 	 	   
   . *    , 9 % , , 3 . /	6 {005a89 ! %)$* CG	(,;?	" F-3TK' TKr    