
    ,hK                       U d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlmZ ddlZddlmZ ddlmZ ddlmZ ddlmZmZmZ dd	lmZ d
dlmZ d
dlmZ ddl m!Z! ddl"m#Z# de$fddddddddfddddddddfddddddddfddd d!d"d#d$dffZ%ejL                  jO                  d%e%e%D  cg c]  } | d   	 c} &      d'        Z(ejR                  dd(       Z*d) Z+d* Z,d+ Z-d, Z. G d- d.      Z/ e0d/d0d1d2ii e0d0g3       e,d4g d5d1gd6i      7       e0d8 e0d9:      ;       e0d<d= ed>      i e0d?d=gfg@       e,d4g d5d=gdAi      7       e0dBdC edD      i e0 e/dEdBdCgF      gG       e,dHdIdJg d5igi      7       e0dKdL edM      i e0dLgN       e,d4dLdJg d5igi      7       e0dO edP       edQ      dR e0dSdTgU       e,d4dJdVdWdXdYdZdSdTgigii      7       e0d[d\ e,d4dJg d]ii       ed^      _       e0d`daejb                  db edc      d       e0dedfejb                  dgh       e0didjdkdli edm      n       e0dodkdpejb                  dqi edr      s       e0dtdudkdvi edw      n       e0dxd0dyd1d2iii e0d0gdzg{       e,d4d|dJg d}id0d1dyd1gigigi      7       e0d~dd1dii e0dgdg{       e,d4d|dJg d}idd1gigi      7       e0dd0d2d= ed      idi e0d0gddgfg       e,d4g d5d1d?d=gigd6i      7      fZ2de3d<   ejL                  jO                  de2e2D cg c]  }|d   	 c}&      d        Z4d Z5d Z6d Z7d Z8yc c} w c c}w )zwheel tests    )annotationsN)Any)path)	parse_tag)canonicalize_name)PY_MAJORDistributionPathMetadata)Wheel   )tempdir)DALS)get_config_var)get_platformzinvalid.whlz&simplewheel-2.0-1-py2.py3-none-any.whlsimplewheelz2.01zpy2.py3noneany)project_nameversionbuild
py_versionabiplatformz$simple.dist-0.1-py2.py3-none-any.whlzsimple.distz0.1z example_pkg_a-1-py3-none-any.whlexample_pkg_apy3z9PyQt5-5.9-5.9.1-cp35.cp36.cp37-abi3-manylinux1_x86_64.whlPyQt5z5.9z5.9.1zcp35.cp36.cp37abi3manylinux1_x86_64)filenameinfo)idsc                   t        j                  |      r*t        j                  |      5  t	        |        d d d        y t	        |       }|j                         D ci c]  }|t        ||       c}|k(  sJ y # 1 sw Y   y xY wc c}w N)inspectisclasspytestraisesr   keysgetattr)r    r!   wks       ]/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/setuptools/tests/test_wheel.pytest_wheel_infor.   P   sn     t]]4  	(O	hA&*iik2Awq!}2d:::		2s   A:B:Bc              +    K   dt        d      |z  j                  d      i}| r|j                  |        t               5 }t	        j
                  ||       t        j                  t        j                  dddf|       t        j                  t        j                  j                  |dd            d	    d d d        y # 1 sw Y   y xY ww)
Nsetup.pyz
            # -*- coding: utf-8 -*-
            from setuptools import setup
            import setuptools
            setup(**%r)
            utf-8-qbdist_wheelcwddist*.whlr   )r   encodeupdater   r   r   
subprocess
check_callsys
executableglobosjoin)extra_file_defskwargs	file_defs
source_dirs       r-   build_wheelrE   \   s      	  &/I )	 Fj

9j)^^Z}=:	
 iiZAB1EEF F Fs   =CA9C8	CC
Cc           
         t               }t        j                  |       D ]Z  \  }}}|D ]O  }|j                  t        j                  j                  t        j                  j                  ||       |             Q \ |S r$   )setr?   walkaddr   r@   relpath)rootcontentsdirpathdirnames	filenamesr    s         r-   tree_setrP   u   sk    uH(* Q$9! 	QHLLbggoogt&DhOP	QQ O    c           
        t               }| j                         D ]  \  }}t        |t              rt	        |      }|D ]|  }t        |t              r;|t	        |      D ch c]"  }t
        j                  j                  ||      $ c}z  }N|j                  t
        j                  j                  ||             ~  |S c c}w )z8Flatten nested dicts and lists into a full list of paths)	rG   items
isinstancedictflatten_treer?   r   r@   rI   )treeoutputnoderL   elemvals         r-   rV   rV   }   s    UF**, 5hh%#H-H 	5D$%l4>PQs277<<c2QQ

277<<d34		5	5 M Rs   'C
c           
         | D ch c]8  }|j                  t        t               t        d      xs t        d            : c}S c c}w )N
EXT_SUFFIXSO)r   r   	shlib_ext)formatr   r   r   )rW   xs     r-   format_install_treerb      sN       	
!^$\2JnT6J 	 	
  s   =Ac                8   t        |       }t        j                  j                  ||j	                               }|j                  |       |1t        |      }t        |      }	|j                  |	      s
J ||	z
         t        |t        j                  j                  |d            }
t        j                  ||
      }|j                  |k(  sJ |j                  |k(  sJ ||j                  d      rJ y ||j                  d      j!                         k(  sJ y )NEGG-INFO)metadatarequires.txt)r   r?   r   r@   egg_nameinstall_as_eggrb   rP   issubsetr
   r	   from_filenamer   r   has_metadataget_metadatalstrip)r    install_dirinstall_tree_includesr   r   requires_txtr+   egg_pathinstall_treeexpre   r6   s               r-   _check_wheel_installrt      s     	hAww||K6HX(*+@A{#$$S)=<#+==Hbggll8Z&HIH%%hBD,,<<7""$$^444 t00@GGIIIIrQ   c                      e Zd Zd ZddZy)Recordc                     || _         || _        y r$   _id_fields)selfidrB   s      r-   __init__zRecord.__init__   s    rQ   c                :    | j                    d| j                  dS )Nz(**)rx   )r{   s    r-   __repr__zRecord.__repr__   s    ((3t||.a00rQ   N)returnstr)__name__
__module____qualname__r}   r    rQ   r-   rv   rv      s    1rQ   rv   basicfoo__init__.py )packagesfoo-1.0-py{py_version}.egg)PKG-INFORECORDWHEELtop_level.txt)rd   r   r|   rC   setup_kwargsrr   r1   u   Description accentuée)description)r|   r   datazdata.txtz.
                Some data...
                data_dir)
data_files)rd   r   	extensionzextension.can  
                #include "Python.h"

                #if PY_MAJOR_VERSION >= 3

                static struct PyModuleDef moduledef = {
                        PyModuleDef_HEAD_INIT,
                        "extension",
                        NULL,
                        0,
                        NULL,
                        NULL,
                        NULL,
                        NULL,
                        NULL
                };

                #define INITERROR return NULL

                PyMODINIT_FUNC PyInit_extension(void)

                #else

                #define INITERROR return

                void initextension(void)

                #endif
                {
                #if PY_MAJOR_VERSION >= 3
                    PyObject *module = PyModule_Create(&moduledef);
                #else
                    PyObject *module = Py_InitModule("extension", NULL);
                #endif
                    if (module == NULL)
                        INITERROR;
                #if PY_MAJOR_VERSION >= 3
                    return module;
                #endif
                }
                zsetuptools.Extension)namesources)ext_modulesz%foo-1.0-py{py_version}-{platform}.eggzextension{shlib_ext}rd   headerzheader.hz
                )headersscriptX
                #/usr/bin/python
                print('hello world!')
                N
                #/bin/sh
                echo 'hello world!'
                	script.py	script.shr   r   scriptsr   r   r   r   r   	requires1zfoobar==2.0)r   r   r   rf   r   z%
            foobar==2.0
            )r|   install_requiresrr   rp   	requires2z
        bar
        foo<=2.0; z in sys_platform
        z2
            bar
            foo<=2.0
            )r|   r   rp   	requires3z
        bar; z != sys_platform
        )r|   r   	requires4z
        foo
        extrazfoobar>3zG
            foo

            [extra]
            foobar>3
            )r|   r   extras_requirerp   	requires5zfoobar; z != sys_platformz!
            [extra]
            )r|   r   rp   requires_ensure_orderz9
        foo
        bar
        baz
        qux
        za
            foobar>3
            barbaz>4
            bazqux>5
            quxzap>6
            z
            foo
            bar
            baz
            qux

            [extra]
            foobar>3
            barbaz>4
            bazqux>5
            quxzap>6
            namespace_packagebarzfoo.bar)namespace_packagesr   z foo-1.0-py{py_version}-nspkg.pth)r   r   r   znamespace_packages.txtr   empty_namespace_packagefoobarz7__import__('pkg_resources').declare_namespace(__name__)data_in_packagez>
                        Some data...
                        )r   r   zfoo/data_dirzfoo/data_dir/data.txt)r   r   ztuple[dict[str, Any], ...]WHEEL_INSTALL_TESTSparamsr|   c           
        | j                  dd      }| j                  dd      }| j                  dg       }| j                  di       }| j                  dd       }| j                  d      }| j                  d	i       }| j                  d
i       }t        d|||||d|5 }	t               5 }
t        |	|
||||       d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   r   r   1.0r   r   rp   rr   rC   r   r   r   r   r   rA   r   )getrE   r   rt   )r   r   r   r   r   rp   rr   rC   r   r    rn   s              r-   test_wheel_installr   '  s     ::fe,LjjE*Gzz"4b9ZZ 0"5N::nd3L::n-L

;+I::nb1L 	
-)%	
 	

 	
 !k<w	

 
 
 
 
 
s$   !C,C=CC	CC#c            
     "   d} d}t        | |      5 }t               5 }|j                  | t        |             }t	        j
                  ||       t        ||d t        |       |d        d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)NFoo_Barr   )r   r   )rE   r   replacer   shutilmovert   )r   r   r    rn   new_filenames        r-   test_wheel_install_pep_503r   E  s    LG	

 	

 !''6G6UVHl+l+	

 
 
 
 
 
s#   BAA9(B9B	>BBc                    d} d}|  d| d}t               5 }t        j                  j                  ||      }t	        j
                  |d      j                          t               5 }t        j                  t              5  t        ||d | |d        d d d        d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w)N
nodistinfor   -z-py2.py3-none-any.whlr+   )r   r?   r   r@   zipfileZipFilecloser'   r(   
ValueErrorrt   )r   r   
wheel_namerD   
wheel_pathrn   s         r-   test_wheel_no_dist_dirr   [  s    LG >7)+@AJ	 jWW\\*j9

C(..0Y 	+z* $T<$		 
 	 		 s<   AC&B6 B*B6C*B3/B66B?	;CCc                d    d }| j                  d|       t        d      j                         sJ y )Nc                     t        d      D  ch c]%  } | j                  | j                  | j                  f' c} S c c} w )Nzcp36-cp36m-manylinux1_x86_64)r   interpreterr   r   )ts    r-   sys_tagsz*test_wheel_is_compatible.<locals>.sys_tagsk  s=     =>
 ]]AEE1::.
 	
 
s   *;z$setuptools.wheel._get_supported_tagsz2onnxruntime-0.1.2-cp36-cp36m-manylinux1_x86_64.whl)setattrr   is_compatible)monkeypatchr   s     r-   test_wheel_is_compatibler   j  s2    
 >IEFTTVVVrQ   c                 L   t         j                  dd       } t        dt        d      t        d      dt        ddg      t	        d	d
dddddddgigii            }|j                  dd      }|j                  dd      }|j                  d      }|j                  di       }|j                  di       } | d||g i |d|5 }t               5 }t        |||||d        t        |      }	t        j                  |      |	j                         z  }
|
d
z  dz  dz  }|j                         sJ t        j                  dk7  r;t        t!        j"                  |j!                         j$                              dk(  sJ d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nc              ;    K   dt        d      |z  j                  d      i}| r|j                  |        t               5 }t	        j
                  ||       t        j                  |      dz  }t        j                  |d       t        j                  t        j                  dddf|       t        j                  t        j                  j                  |d	d
            d    d d d        y # 1 sw Y   y xY ww)Nr0   z
                # -*- coding: utf-8 -*-
                from setuptools import setup
                import setuptools
                setup(**%r)
                r1   r   i  r2   r3   r4   r6   r7   r   )r   r8   r9   r   r   r   pathlibPathr?   chmodr:   r;   r<   r=   r>   r@   )rA   rB   rC   rD   runshs        r-   rE   z$test_wheel_mode.<locals>.build_wheelv  s        fWo
	 _-Y 	J*JJy*-LL,{:EHHUE"!!T=Az ))BGGLLVWEFqII	J 	J 	Js   =C;B'C/&	C;/C84C;r   r   r   r   r   r   r   r   rd   r   r   r   r   r   r   r   r   r   r   rr   rC   r   r   win320o777r$   r   )
contextlibcontextmanagerrU   r   rV   r   r   rt   r   r   r   rg   existsr<   r   octstatS_IMODEst_mode)rE   r   r   r   rr   rC   r   r    rn   r+   base	script_shs               r-   test_wheel_moder   u  s   J J2  
  +.
 "(#k :;+
#
 
'F@ ::fe,LjjE*G::n-L

;+I::nb1L 	 	
%	
 	
J 	J !k<w	
 (O||K(1::<7:%	1K?	!!<<7"t||INN$4$<$<=>'II)J J J J J Js%   FB-F=FF	FF#r$   )9__doc__
__future__r   r   r>   r%   r?   r   r   r   r:   r<   r   typingr   r'   jaracor   packaging.tagsr   packaging.utilsr   pkg_resourcesr   r	   r
   setuptools.wheelr   contextsr   textwrapr   distutils.sysconfigr   distutils.utilr   r   WHEEL_INFO_TESTSmarkparametrizer.   r   rE   rP   rV   rb   rt   rv   rU   r   r   __annotations__r   r   r   r   r   )r   r   s   00r-   <module>r      s_    "    	     
     $ - > > "   . ' J0)#	

 	/)#	

 	++	

 	D#*+	

G. b *?O0P!10P  ;; F F0J,1 1 	="-.W
 "(L%+#
  	0
 	
 #j\23
 "(L'L+#
 & 	4(*,
Z *}o
 "3& !
6#
 mCH 	
 L
 "( !
+#
 2 	 
  +.
 "(#k :;+
#
 
'> 	&!( +
#
 
 
( 	<<" #	 
 	ll 	 	 Z
 
" 	x//?@
 

 	"  
 
!> 	r*

  %w[
 "(2 ! %0+#
 @ 	$M
  (zZ
 "(2 ! %+#
  B 	!!	
 W'*A)BCD
 "( ""&%+#
 %$M
k3 / k\ $78&8  



2
,WUJI 1Qr 	9s   >M(M-