§
    WŠtj¦  ã            
      ól  — 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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 d	lmZ d d
lmZ d dlZd dlZd dlZd dlmZ d dlmZ d dl m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z( d dl)m*Z* d dl+m,Z, d dl-m.Z. ddl/m0Z0m1Z1 d dl2m3Z3  ej4        ddg¬¦  «        d„ ¦   «         Z5 ed¦  «         ed¦  «         6                    ¦   «         ddd ed¦  «         ed¦  «        ddd œid!œZ7d"Z8ej9         :                    ej        d#k    d$¬%¦  «        ej9         ;                    d&i e7¥d'e8i¥e7g¦  «        d(„ ¦   «         ¦   «         Z<d)„ Z=d*„ Z> G d+„ d,¦  «        Z? G d-„ d.¦  «        Z@d/„ ZA G d0„ d1¦  «        ZBd2„ ZC G d3„ d4¦  «        ZD G d5„ d6¦  «        ZEej9         F                    d7¦  «        d8„ ¦   «         ZGej9        jH        d9„ ¦   «         ZI G d:„ d;¦  «        ZJ G d<„ d=¦  «        ZK G d>„ d?¦  «        ZLd@„ ZMej9         F                    dA¦  «        dB„ ¦   «         ZNdC„ ZOdD„ ZPdE„ ZQdOdK„ZRdPdN„ZSdS )Qé    )ÚannotationsN)Údeepcopy)Úimport_module)ÚEXTENSION_SUFFIXES)ÚPath)Údedent)ÚAny)ÚMock)Úuuid4)Ú	resources)Ú_encode_pthÚ_find_namespacesÚ_find_package_rootsÚ_find_virtual_namespacesÚ_finder_templateÚ	_LinkTreeÚ_TopLevelFinderÚeditable_wheel)ÚDistribution)Ú	Extension)ÚSetuptoolsDeprecationWarningé   )ÚcontextsÚ
namespaces)Ú	run_setupÚstrictÚlenient)Úparamsc                ó$   — | j         dk    rddgS g S )Nr   ú--config-settingsúeditable-mode=strict)Úparam)Úrequests    úd/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/setuptools/tests/test_editable_install.pyÚeditable_optsr%   *   s    € à„}˜Ò Ð Ø#Ð%;Ð<Ð<Ø€Ió    aý          [build-system]
        requires = ["setuptools"]
        build-backend = "setuptools.build_meta"

        [project]
        name = "mypkg"
        version = "3.14159"
        license = {text = "MIT"}
        description = "This is a Python package"
        dynamic = ["readme"]
        classifiers = [
            "Development Status :: 5 - Production/Stable",
            "Intended Audience :: Developers"
        ]
        urls = {Homepage = "https://github.com"}

        [tool.setuptools]
        package-dir = {"" = "src"}
        packages = {find = {where = ["src"]}}
        license-files = ["LICENSE*"]

        [tool.setuptools.dynamic]
        readme = {file = "README.rst"}

        [tool.distutils.egg_info]
        tag-build = ".post0"
        zr        global-include *.py *.txt
        global-exclude *.py[cod]
        prune dist
        prune build
        zThis is a ``README``z!---- placeholder MIT license ----Úmypkga                  import sys
                from importlib.metadata import PackageNotFoundError, version

                try:
                    __version__ = version(__name__)
                except PackageNotFoundError:
                    __version__ = "unknown"
                a                  from importlib.resources import read_text
                from . import __version__, __name__ as parent
                from .mod import x

                data = read_text(parent, "data.txt")
                print(__version__, data, x)
                zx = ''zHello World)ú__init__.pyz__main__.pyúmod.pyzdata.txt)úpyproject.tomlúMANIFEST.inz
README.rstzLICENSE.txtÚsrcz __import__('setuptools').setup()Údarwinúpypa/setuptools#4328©ÚreasonÚfilesúsetup.pyc           	     ó  — | dz  }|                      ¦   «          t          j                             ||¬¦  «         ddddddt	          |¦  «        g|¢}t          |                     |¦  «        ¦  «         g d	¢}|                     |¦  «                             ¦   «         d
k    sJ ‚|dz                       dd¬¦  «         |dz                       dd¬¦  «         |                     |¦  «                             ¦   «         dk    sJ ‚d S )Nr'   ©ÚprefixÚpythonú-mÚpipÚinstallú--no-build-isolationú-e)r6   r7   r'   z3.14159.post0 Hello Worldzsrc/mypkg/data.txtÚfoobarúutf-8©Úencodingzsrc/mypkg/mod.pyúx = 42z3.14159.post0 foobar 42)	ÚmkdirÚjaracoÚpathÚbuildÚstrÚprintÚrunÚstripÚ
write_text)Útmp_pathÚvenvr1   r%   ÚprojectÚcmds         r$   Útest_editable_with_pyprojectrN   {   s  € ð ˜Ñ €GØ‡M‚M�O„O€OÝ
„K×Ò�e GÐÑ,Ô,Ð,ð 	ØØØØØÝˆG‰Œð	ð 
ð	€Cõ 
ˆ$�(Š(�3‰-Œ-ÑÔÐà
#Ð
#Ð
#€CØ�8Š8�C‰=Œ=×ÒÑ Ô Ð$?Ò?Ð?Ð?Ð?àÐ#Ñ#×/Ò/°À7Ð/ÑKÔKÐKØÐ!Ñ!×-Ò-¨hÀÐ-ÑIÔIÐIØ�8Š8�C‰=Œ=×ÒÑ Ô Ð$=Ò=Ð=Ð=Ð=Ð=Ð=r&   c           	     óV  — dt          d¦  «        ddiddœi}t          j                             || ¬¦  «         | dz  }dd	d
dddt	          |¦  «        g|¢}t          |                     |¦  «        ¦  «         g d¢}|                     |¦  «                             ¦   «         dk    sJ ‚d S )Nr'   ac                  [build-system]
                requires = ["setuptools", "wheel"]
                build-backend = "setuptools.build_meta"

                [project]
                name = "mypkg"
                version = "3.14159"

                [tool.setuptools]
                packages = ["pkg"]
                py-modules = ["mod"]
                r(   za = 4úb = 2)r*   Úpkgr)   r4   r6   r7   r8   r9   r:   r;   )r6   ú-cz$import pkg, mod; print(pkg.a, mod.b)z4 2©r   rB   rC   rD   rE   rF   rG   rH   ©rJ   rK   r%   r1   rL   rM   s         r$   Útest_editable_with_flat_layoutrU   œ   sÜ   € àÝ$ðñô ð " 7Ð+Øð#
ð 
ð€Eõ* „K×Ò�e HÐÑ-Ô-Ð-Ø˜Ñ €Gð 	ØØØØØÝˆG‰Œð	ð 
ð	€Cõ 
ˆ$�(Š(�3‰-Œ-ÑÔÐØ
BÐ
BÐ
B€CØ�8Š8�C‰=Œ=×ÒÑ Ô  EÒ)Ð)Ð)Ð)Ð)Ð)r&   c           	     óP  — dt          d¦  «        ddœi}t          j                             || ¬¦  «         | dz  }dddd	d
dt	          |¦  «        g|¢}t          |                     |¦  «        ¦  «         g d¢}|                     |¦  «                             ¦   «         dk    sJ ‚d S )Nr'   a>                  [build-system]
                requires = ["setuptools", "wheel"]
                build-backend = "setuptools.build_meta"

                [project]
                name = "mod"
                version = "3.14159"

                [tool.setuptools]
                py-modules = ["mod"]
                rP   )r*   r)   r4   r6   r7   r8   r9   r:   r;   )r6   rR   zimport mod; print(mod.b)Ú2rS   rT   s         r$   Ú test_editable_with_single_modulerX   Ä   sÔ   € àÝ$ðñô ð ð
ð 
ð€Eõ& „K×Ò�e HÐÑ-Ô-Ð-Ø˜Ñ €Gð 	ØØØØØÝˆG‰Œð	ð 
ð	€Cõ 
ˆ$�(Š(�3‰-Œ-ÑÔÐØ
6Ð
6Ð
6€CØ�8Š8�C‰=Œ=×ÒÑ Ô  CÒ'Ð'Ð'Ð'Ð'Ð'r&   c                  óž   — e Zd Zd„ Zej                             dd¦  «        ej                             dd¦  «        d„ ¦   «         ¦   «         ZdS )ÚTestLegacyNamespacesc                ó°  — t          j        t          d¬¦  «        }|dz  }|                     ¦   «          d}|D ]Ø}t	          j        ||d¬¦  «        }|5  |                     ¦   «         5 }|                     |¦  «         t          dd¬	¦  «        }	t          |	¦  «        }
|
 
                    ¦   «          |
                     d
¦  «        j        }|
                     ||¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   ŒÙt          |                     d¦  «        ¦  «        }t!          |¦  «        t!          |¦  «        k    sJ ‚d S )Nz .*namespace_packages parameter.*©Úmatchz.installation_dir)z	myns.pkgAz	myns.pkgBúmyns.n.pkgAúmyns.n.pkgBÚ42)Úversionr2   Úconfig)Ú
stop_afterÚ	dist_infoz*-nspkg.pth)ÚpytestÚwarnsr   rA   r   Úbuild_namespace_packageÚcontextÚchdirr   r   Úfinalize_optionsÚget_finalized_commandÚnameÚ_install_namespacesÚlistÚglobÚlen)ÚselfrJ   ÚmonkeypatchÚdeprecationÚinstallation_dirÚexamplesrl   rQ   ÚctxÚdistrM   Úeditable_namer1   s                r$   Útest_nspkg_file_is_uniquez.TestLegacyNamespaces.test_nspkg_file_is_uniqueí   sý  € Ý”lÝ(Ð0Rð
ñ 
ô 
ˆð $Ð&9Ñ9ÐØ×ÒÑ Ô Ð ð
ˆð ð 	Ið 	IˆDÝÔ4°X¸tÈTÐRÑRÔRˆCØð Ið I˜k×1Ò1Ñ3Ô3ð I°sØ—	’	˜#‘”�Ý  ¸ÐAÑAÔA�Ý$ TÑ*Ô*�Ø×$Ò$Ñ&Ô&Ð&Ø #× 9Ò 9¸+Ñ FÔ FÔ K�Ø×'Ò'Ð(8¸-ÑHÔHÐHðIð Ið Iñ Iô Ið Ið Ið Ið Ið Ið Iøøøð Ið Ið Ið Ið Ið Ið Iñ Iô Ið Ið Ið Ið Ið Ið Iøøøð Ið Ið Ið Iøõ Ð%×*Ò*¨=Ñ9Ô9Ñ:Ô:ˆÝ�5‰zŒz�S ™]œ]Ò*Ð*Ð*Ð*Ð*Ð*s7   ÁDÁ)A:C/Ã#DÃ/C3Ã3DÃ6C3Ã7DÄD
	ÄD
	Úimpl)Úpkg_resourcesÚns)zmyns.nc           
     óü  — d}t          j        ||› d�|¬¦  «        }t          j        ||› d�|¬¦  «        }|dz                       |d¬¦  «         |dz                       |d¬¦  «         |dd…         }	|	                     d	¦  «         |                     d
dddt          |¦  «        g|	¢¦  «         |                     d
ddddt          |¦  «        g|	¢¦  «         |                     d
dd|› d|› d�g¦  «         dS )a>  
        Installing two packages sharing the same namespace, one installed
        naturally using pip or `--single-version-externally-managed`
        and the other installed in editable mode should leave the namespace
        intact and both packages reachable by import.
        (Ported from test_develop).
        zq        [build-system]
        requires = ["setuptools"]
        build-backend = "setuptools.build_meta"
        z.pkgA)rz   z.pkgBr*   r=   r>   Nr:   r6   r7   r8   r9   r;   rR   zimport z.pkgA; import )r   rg   rI   ÚappendrG   rE   )
rq   rK   rJ   r|   rz   r%   Úbuild_systemÚpkg_AÚpkg_BÚoptss
             r$   Ú!test_namespace_package_importablez6TestLegacyNamespaces.test_namespace_package_importable  s+  € ð$ˆõ
 Ô2°8À¸\¸\¸\ÐPTÐUÑUÔUˆÝÔ2°8À¸\¸\¸\ÐPTÐUÑUÔUˆØ	Ð!Ñ	!×-Ò-¨lÀWÐ-ÑMÔMÐMØ	Ð!Ñ	!×-Ò-¨lÀWÐ-ÑMÔMÐMà˜Q˜Q˜QÔˆØ�ŠÐ*Ñ+Ô+Ð+Ø�Š�(˜D %¨µC¸±J´JÐFÀÐFÑGÔGÐGØ�Š�(˜D %¨°D½#¸e¹*¼*ÐLÀtÐLÑMÔMÐMØ�Š�(˜DÐ"G¨BÐ"GÐ"G¸bÐ"GÐ"GÐ"GÐHÑIÔIÐIÐIÐIr&   N)Ú__name__Ú
__module__Ú__qualname__ry   re   ÚmarkÚparametrizerƒ   © r&   r$   rZ   rZ   ê   s   € € € € € ð+ð +ð +ð4 „[×ÒØð	
ñô ð „[×Ò˜T ;Ñ/Ô/ðJð Jñ 0Ô/ñô ðJð Jð Jr&   rZ   c                  ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestPep420Namespacesc           
     ól  — t          j        |d¦  «        }t          j        |d¦  «        }|dd…         }|                     d¦  «         |                     ddddt	          |¦  «        g|¢¦  «         |                     ddddd	t	          |¦  «        g|¢¦  «         |                     g d
¢¦  «         dS )zÅ
        Installing two packages sharing the same namespace, one installed
        normally using pip and the other installed in editable mode
        should allow importing both packages.
        r^   r_   Nr:   r6   r7   r8   r9   r;   )r6   rR   z&import myns.n.pkgA; import myns.n.pkgB)r   Úbuild_pep420_namespace_packager~   rG   rE   )rq   rK   rJ   r%   r€   r�   r‚   s          r$   rƒ   z6TestPep420Namespaces.test_namespace_package_importable+  sº   € õ Ô9¸(ÀMÑRÔRˆÝÔ9¸(ÀMÑRÔRˆà˜Q˜Q˜QÔˆØ�ŠÐ*Ñ+Ô+Ð+Ø�Š�(˜D %¨µC¸±J´JÐFÀÐFÑGÔGÐGØ�Š�(˜D %¨°D½#¸e¹*¼*ÐLÀtÐLÑMÔMÐMØ�ŠÐKÐKÐKÑLÔLÐLÐLÐLr&   c           
     ó8  — dt          d¦  «        ddidœi}t          j                             ||¬¦  «         |dz  }t	          j        |d¦  «        }t	          j        |d¦  «        }|d	d	…         }|                     d
¦  «         |                     ddddt          |¦  «        g|¢¦  «         |                     dddddt          |¦  «        g|¢¦  «         |                     dddddt          |¦  «        g|¢¦  «         |                     g d¢¦  «         d	S )z@Currently users can create a namespace by tweaking `package_dir`ÚpkgAat                      [build-system]
                    requires = ["setuptools", "wheel"]
                    build-backend = "setuptools.build_meta"

                    [project]
                    name = "pkgA"
                    version = "3.14159"

                    [tool.setuptools]
                    package-dir = {"myns.n.pkgA" = "src"}
                    r(   úa = 1)r*   r,   r4   r_   zmyns.n.pkgCNr:   r6   r7   r8   r9   r;   )r6   rR   z#from myns.n import pkgA, pkgB, pkgC)	r   rB   rC   rD   r   r�   r~   rG   rE   )	rq   rK   rJ   r%   r1   r€   r�   Úpkg_Cr‚   s	            r$   Ú&test_namespace_created_via_package_dirz;TestPep420Namespaces.test_namespace_created_via_package_dir:  s=  € ð Ý"(ðñ#ô #ð & wÐ/ðð ð
ˆõ& 	Œ×Ò˜%¨ÐÑ1Ô1Ð1Ø˜6Ñ!ˆÝÔ9¸(ÀMÑRÔRˆÝÔ9¸(ÀMÑRÔRˆð ˜Q˜Q˜QÔˆØ�ŠÐ*Ñ+Ô+Ð+Ø�Š�(˜D %¨µC¸±J´JÐFÀÐFÑGÔGÐGØ�Š�(˜D %¨°D½#¸e¹*¼*ÐLÀtÐLÑMÔMÐMØ�Š�(˜D %¨°D½#¸e¹*¼*ÐLÀtÐLÑMÔMÐMØ�ŠÐHÐHÐHÑIÔIÐIÐIÐIr&   c                ó¸  — dt          d¦  «        dddddœdœt          d         d	œi}t          j                             ||¬
¦  «         |dz  }dg}|                     ddddddt          |¦  «        g|¢¦  «         |                     g d¢¦  «        }|                     ¦   «         dk    sJ ‚d}|                     ddt          |¦  «        g¦  «        }d|v sJ ‚dS )a/  Sometimes users might specify an ``include`` pattern that ignores parent
        packages. In a normal installation this would ignore all modules inside the
        parent packages, and make them namespaces (reported in issue #3504),
        so the editable mode should preserve this behaviour.
        r�   ar                      [build-system]
                    requires = ["setuptools", "wheel"]
                    build-backend = "setuptools.build_meta"

                    [project]
                    name = "pkgA"
                    version = "3.14159"

                    [tool.setuptools]
                    packages.find.include = ["mypkg.*"]
                    Ú zb = 1r�   )r(   zpkgA.py)r(   zother.pyÚnr+   )r*   r'   r+   r4   r:   r6   r7   r8   ú-vr9   r;   )r6   rR   z'from mypkg.n import pkgA; print(pkgA.a)Ú1z}        try:
            import mypkg.other
        except ImportError:
            print("mypkg.other not defined")
        rR   zmypkg.other not definedN)r   ÚEXAMPLErB   rC   rD   rG   rE   rH   )rq   rK   rJ   r1   r€   r‚   ÚoutrM   s           r$   Ú0test_namespace_accidental_config_in_lenient_modezETestPep420Namespaces.test_namespace_accidental_config_in_lenient_mode\  s"  € ð Ý"(ðñ#ô #ð $&Ø 'à')Ø#*ðð ðð õ  ' }Ô5ð/ð ð
ˆõ6 	Œ×Ò˜%¨ÐÑ1Ô1Ð1Ø˜6Ñ!ˆð 'Ð'ˆØ�Š�(˜D %¨¨y¸$ÅÀEÁ
Ä
ÐRÈTÐRÑSÔSÐSØ�hŠhÐRÐRÐRÑSÔSˆØ�yŠy‰{Œ{˜cÒ!Ð!Ð!Ð!ðˆð �hŠh˜ $­¨s©¬Ð4Ñ5Ô5ˆØ(¨CÐ/Ð/Ð/Ð/Ð/Ð/r&   N)r„   r…   r†   rƒ   r’   rš   r‰   r&   r$   r‹   r‹   *  sH   € € € € € ðMð Mð Mð Jð  Jð  JðD00ð 00ð 00ð 00ð 00r&   r‹   c           
     ó.  ‡	— | dz  Š	ˆ	fd„t           j        D ¦   «         }|D ]}|                     d¬¦  «         Œt          |¦  «         t	          t
          j        t
          j                             t          t          |¦  «        ¦  «        ¬¦  «        }t           j        dddd	t          |¦  «        d
t          ‰	¦  «        dg	|¢}t          j        ||¬¦  «         t          j        ¦   «         dk    rdnd}‰	|z  dz  }t          j        |g|¬¦  «         dS )z>
    Editable install to a prefix should be discoverable.
    r5   c                ó´   •— g | ]T}d |v ¯|                      t          j        ¦  «        ¯%‰t          |¦  «                             t          j        ¦  «        z  ‘ŒUS )zsite-packages)Ú
startswithÚsysr5   r   Úrelative_to)Ú.0rC   r5   s     €r$   ú
<listcomp>z-test_editable_with_prefix.<locals>.<listcomp>–  s\   ø€ ð ð ð àØ˜dÐ"Ð" t§¢µs´zÑ'BÔ'BÐ"ð 	•�d‘”×'Ò'­¬
Ñ3Ô3Ñ3à"Ð"Ð"r&   T)Úparents)Ú
PYTHONPATHr7   r8   r9   ú
--editablez--prefixr:   )ÚenvÚWindowsÚScriptsÚbinÚsampleN)rž   rC   rA   Ú_addsitedirsÚdictÚosÚenvironÚpathsepÚjoinÚmaprE   Ú
executableÚ
subprocessÚ
check_callÚplatformÚsystem)
rJ   Úsample_projectr%   Úsite_packages_allÚspr¥   rM   r¨   Úexer5   s
            @r$   Útest_editable_with_prefixrº   �  s=  ø€ ð ˜Ñ €Fðð ð ð å”Hðñ ô Ðð  ð ð ˆØ
�Š˜ˆÑÔÐÐõ Ð"Ñ#Ô#Ð#å
�rŒz¥b¤j§o¢oµc½#Ð?PÑ6QÔ6QÑ&RÔ&RÐ
SÑ
SÔ
S€CåŒØØØØÝˆNÑÔØÝˆF‰ŒØðð 
ð€Cõ Ô˜# 3Ð'Ñ'Ô'Ð'õ  ”Ñ(Ô(¨IÒ5Ð5ˆ)ˆ)¸5€CØ
�3‰,˜Ñ
!€CÝÔ˜3˜% SÐ)Ñ)Ô)Ð)Ð)Ð)r&   c                  óT   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ ZdS )ÚTestFinderTemplateúÍThis test focus in getting a particular implementation detail right.
    If at some point in time the implementation is changed for something different,
    this test can be modified or even excluded.
    c                óL   — i }t          |||¦  «          |d         ¦   «          d S )Nr9   )Úexec)rq   ÚfinderÚlocs      r$   Úinstall_finderz!TestFinderTemplate.install_finder½  s1   € ØˆÝˆV�S˜#ÑÔÐØˆˆIŒÑÔÐÐÐr&   c                ó  — ddddidœiddidœ}t           j                             ||¬	¦  «         t          |d
z  ¦  «        t          |dz  ¦  «        dœ}t	          t          t          ¦   «         ¦  «        |i ¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  dD ]"}t          j
                             |d ¦  «         Œ#|                      |¦  «         t          d¦  «        }t          d¦  «        }t          d¦  «        }|j        dk    sJ ‚|j        dk    sJ ‚t          |dz                       ¦   «         ¦  «        }	t!          ||	¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NÚpkg1r”   úmod1.pyza = 42)r(   Úsubpkgúmod2.pyza = 43©Úsrc1Úsrc2r4   z	src1/pkg1z	src2/mod2)rÄ   Úmod2)rÄ   úpkg1.subpkgúpkg1.subpkg.mod1rË   rÍ   rË   rÌ   é*   é+   zsrc1/pkg1/subpkg)rB   rC   rD   rE   r   r   r   Ú
save_pathsÚsave_sys_modulesrž   ÚmodulesÚpoprÂ   r   ÚaÚresolveÚassert_path)
rq   rJ   r1   ÚmappingÚtemplateÚmodÚmod1rË   rÆ   Úexpecteds
             r$   Útest_packagesz TestFinderTemplate.test_packagesÂ  s&  € ð Ø#%Ø(¨(Ð3ðð ðð  Ð)ð
ð 
ˆõ 	Œ×Ò˜%¨ÐÑ1Ô1Ð1õ ˜ ;Ñ.Ñ/Ô/Ý˜ ;Ñ.Ñ/Ô/ð
ð 
ˆõ $¥C­©¬¡L¤L°'¸2Ñ>Ô>ˆåÔ Ñ"Ô"ð 	*ð 	*¥HÔ$=Ñ$?Ô$?ð 	*ð 	*ØJð +ð +�Ý”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ)Ô)Ð)Ý Ð!3Ñ4Ô4ˆDÝ  Ñ(Ô(ˆDÝ" =Ñ1Ô1ˆFà”6˜R’<�<�<�<Ø”6˜R’<�<�<�<Ý˜HÐ'9Ñ9×BÒBÑDÔDÑEÔEˆHÝ˜ Ñ)Ô)Ð)ð	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*ð 	*ð 	*s7   ÂF Â&B6E(ÅF Å(E,	Å,F Å/E,	Å0F Æ FÆFc                ó  — ddddœi}t           j                             ||¬¦  «         dt          |dz  ¦  «        i}dg i}t	          t          t          ¦   «         ¦  «        ||¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  dD ]"}t          j
                             |d ¦  «         Œ#|                      |¦  «         t          d¦  «        }t          j        |¦  «        d	z  }t          |dz                       ¦   «         ¦  «        }	t#          ||	¦  «         |j        d
k    sJ ‚|                     d¬¦  «        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NrQ   úa = 13Úabc)r(   útext.txtr4   úns.othernamer|   ©r|   rá   rà   é   r=   r>   )rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   r   Úimportlib_resourcesr1   rÕ   rÖ   rÔ   Ú	read_text)
rq   rJ   r1   r×   r   rØ   rÙ   rQ   ÚtextrÛ   s
             r$   Útest_namespacez!TestFinderTemplate.test_namespaceâ  sÿ  € Ø¨¸eÐDÐDÐEˆÝŒ×Ò˜%¨ÐÑ1Ô1Ð1à!¥3 x°%Ñ'7Ñ#8Ô#8Ð9ˆØ˜B�Zˆ
å#¥C­©¬¡L¤L°'¸:ÑFÔFˆÝÔ Ñ"Ô"ð 	=ð 	=¥HÔ$=Ñ$?Ô$?ð 	=ð 	=Ø-ð +ð +�Ý”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ)Ô)Ð)Ý Ñ/Ô/ˆCÝ&Ô,¨SÑ1Ô1°JÑ>ˆDå˜H uÑ,×5Ò5Ñ7Ô7Ñ8Ô8ˆHÝ˜˜XÑ&Ô&Ð&Ø”5˜B’;�;�;�;ð —>’>¨7�>Ñ3Ô3°uÒ<Ð<Ð<Ð<Ð<ð	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð 	=ð 	=s7   Á>E5ÂB>EÅE5ÅE!	Å!E5Å$E!	Å%E5Å5E9Å<E9c                óL  — ddddiiidddiidœ}t           j                             ||¬¦  «         t          |d	z  ¦  «        t          |d
z  ¦  «        dœ}dt          |dz  ¦  «        t          |dz  ¦  «        gi}t	          t          t          ¦   «         ¦  «        ||¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  dD ]"}t          j
                             |d ¦  «         Œ#|                      |¦  «         t          d¦  «        }t          d¦  «        }t          |d	z                       ¦   «         ¦  «        }	t          ||	¦  «         |j        dk    sJ ‚|j        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr|   rÄ   r(   rÞ   rÇ   úb = 37rÈ   r4   zsrc1/ns/pkg1zsrc2/ns)úns.pkgAr|   rÉ   rÊ   )r|   rê   úns.mod2rê   rë   rã   é%   )rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   r   rÕ   rÖ   rÔ   Úb)
rq   rJ   r1   r×   Únamespaces_rØ   rÙ   r�   rË   rÛ   s
             r$   Útest_combine_namespacesz*TestFinderTemplate.test_combine_namespacesù  s8  € à˜F ]°HÐ$=Ð>Ð?Ø˜I xÐ0Ð1ð
ð 
ˆõ 	Œ×Ò˜%¨ÐÑ1Ô1Ð1õ ˜8 nÑ4Ñ5Ô5Ý�h Ñ*Ñ+Ô+ð
ð 
ˆð �c (¨VÑ"3Ñ4Ô4µc¸(ÀVÑ:KÑ6LÔ6LÐMÐNˆÝ#¥C­©¬¡L¤L°'¸;ÑGÔGˆåÔ Ñ"Ô"ð 	 ð 	 ¥HÔ$=Ñ$?Ô$?ð 	 ð 	 Ø3ð +ð +�Ý”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ)Ô)Ð)Ý  Ñ+Ô+ˆDÝ  Ñ+Ô+ˆDå˜H ~Ñ5×>Ò>Ñ@Ô@ÑAÔAˆHÝ˜˜hÑ'Ô'Ð'Ø”6˜R’<�<�<�<Ø”6˜R’<�<�<�<�<ð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 s7   Â9FÃB'FÅ5FÆF	ÆFÆF	Æ	FÆFÆ Fc                óä  — dddiidddiidœ}t           j                             ¦   «         }|                     |¦  «        5  t           j                             |¦  «         dd	d
dœddgdœ}t          |¦  «        }t          |t          t          ¦   «         ¦  «        ¦  «        }t          d„ | 
                    ¦   «         D ¦   «         ¦  «        }ddd¦  «         n# 1 swxY w Y   t          j        ¦   «         5  t          j        ¦   «         5  |d         D ]"}t          j                             |d¦  «         Œ#|                      |¦  «         t%          d¦  «        }	t%          d¦  «        }
t          |dz                       ¦   «         ¦  «        }t          t)          |	j        ¦  «                             ¦   «         ¦  «        |k    sJ ‚t          |dz                       ¦   «         ¦  «        }t          t)          |
j        ¦  «                             ¦   «         ¦  «        |k    sJ ‚|	j        dk    sJ ‚|
j        dk    sJ ‚	 ddd¦  «         n# 1 swxY w Y   ddd¦  «         dS # 1 swxY w Y   dS )z�
        Users may attempt to combine namespace packages in a nested way via
        ``package_dir`` as shown in pypa/setuptools#4248.
        Ú
my_packagezmy_module.pyrÞ   Úmy_package2zmy_module2.pyré   )r,   rÊ   ú	%PEP 517%zsrc/my_packagezsrc2/my_package2)Údifferent_nameúdifferent_name.subpkgrô   rõ   )Úscript_nameÚpackage_dirÚpackagesc              3  óJ   K  — | ]\  }}|                      d ¦  «        ¯|V — ŒdS )z.pyN©Úendswith)r    ÚkÚvs      r$   ú	<genexpr>zDTestFinderTemplate.test_combine_namespaces_nested.<locals>.<genexpr>,  s8   è è € ÐWÐW™d˜a ÀQÇZÂZÐPUÑEVÔEVÐW˜ÐWÐWÐWÐWÐWÐWr&   Nrø   zdifferent_name.my_modulez different_name.subpkg.my_module2zsrc/my_package/my_module.pyzsrc2/my_package2/my_module2.pyrã   rì   )rB   rC   ÚDirectoryStackrh   rD   r   r   rE   r   ÚnextÚget_implementationr   rÐ   rÑ   rž   rÒ   rÓ   rÂ   r   rÕ   r   Ú__file__rÔ   rí   )rq   rJ   r1   ÚstackÚattrsrw   rÀ   ÚcoderÙ   rÚ   rË   rÛ   s               r$   Útest_combine_namespaces_nestedz1TestFinderTemplate.test_combine_namespaces_nested  s8  € ð ! >°8Ð"<Ð=Ø" _°hÐ$?Ð@ð
ð 
ˆõ
 ”×*Ò*Ñ,Ô,ˆØ�]Š]˜8Ñ$Ô$ð 	Xð 	XÝŒK×Ò˜eÑ$Ô$Ð$à*à&6Ø-?ð ð  ð .Ð/FÐGðð ˆEõ   Ñ&Ô&ˆDÝ$ T­3­u©w¬w©<¬<Ñ8Ô8ˆFÝÐWÐW f×&?Ò&?Ñ&AÔ&AÐWÑWÔWÑWÔWˆDð	Xð 	Xð 	Xñ 	Xô 	Xð 	Xð 	Xð 	Xð 	Xð 	Xð 	Xøøøð 	Xð 	Xð 	Xð 	Xõ Ô Ñ"Ô"ð 	 ð 	 ¥HÔ$=Ñ$?Ô$?ð 	 ð 	 Ø˜ZÔ(ð +ð +�Ý”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ%Ô%Ð%Ý Ð!;Ñ<Ô<ˆDÝ Ð!CÑDÔDˆDå˜HÐ'DÑD×MÒMÑOÔOÑPÔPˆHÝ•t˜DœMÑ*Ô*×2Ò2Ñ4Ô4Ñ5Ô5¸ÒAÐAÐAÐAå˜HÐ'GÑG×PÒPÑRÔRÑSÔSˆHÝ•t˜DœMÑ*Ô*×2Ò2Ñ4Ô4Ñ5Ô5¸ÒAÐAÐAÐAà”6˜R’<�<�<�<Ø”6˜R’<�<�<�<�<ð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 sJ   ÁBCÃCÃ"CÃ9I%ÄD3IÉI%ÉI	ÉI%ÉI	ÉI%É%I)É,I)c                ó¦  — ddddiiiddddiiiddddiiid	œ}t           j                             ||¬
¦  «         i }dt          |dz  ¦  «        gi}t	          t          t          ¦   «         ¦  «        ||¦  «        }d„ dD ¦   «         }t          j        ¦   «         5  t          j        ¦   «         5  dddg|¢R D ]"}t          j
                             |d ¦  «         Œ#|                      |¦  «         t          d¦  «        }|j        dk    sJ ‚t          j        t"          ¦  «        5  t          d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j                             t          |dz  ¦  «        ¦  «         t          d¦  «        }	|	j        dk    sJ ‚t          j        t"          ¦  «        5  t          d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j                             t          |dz  ¦  «        ¦  «         t          d¦  «        }
|
j        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NÚparentÚchildzone.pyúx = 1ztwo.pyúx = 2zthree.pyzx = 3)Úproject1Úproject2Úproject3r4   zproject1/parentc              3  ó    K  — | ]	}d |› �V — Œ
dS )zparent.child.Nr‰   )r    rl   s     r$   rþ   zCTestFinderTemplate.test_dynamic_path_computation.<locals>.<genexpr>K  s+   è è € ÐKÐK¨4Ð& Ð&Ð&ÐKÐKÐKÐKÐKÐKr&   )ÚoneÚtwoÚthreezparent.childzparent.child.oner   zparent.child.twor  é   zparent.child.threer  é   )rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   r   Úxre   ÚraisesÚImportErrorr~   )rq   rJ   r1   r×   rî   rØ   ÚmodsrÙ   r  r  r  s              r$   Útest_dynamic_path_computationz0TestFinderTemplate.test_dynamic_path_computation?  sZ  € ð " G¨h¸Ð-@Ð#AÐBØ! G¨h¸Ð-@Ð#AÐBØ! G¨j¸'Ð-BÐ#CÐDð
ð 
ˆõ
 	Œ×Ò˜%¨ÐÑ1Ô1Ð1ØˆØ¥# hÐ1BÑ&BÑ"CÔ"CÐ!DÐEˆÝ#¥C­©¬¡L¤L°'¸;ÑGÔGˆàKÐKÐ3JÐKÑKÔKˆÝÔ Ñ"Ô"ð 	 ð 	 ¥HÔ$=Ñ$?Ô$?ð 	 ð 	 Ø  .°.ÐHÀ4ÐHÐHð +ð +�Ý”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ)Ô)Ð)åÐ 2Ñ3Ô3ˆCØ”5˜A’:�:�:�:å”�{Ñ+Ô+ð 2ð 2ÝÐ0Ñ1Ô1Ð1ð2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2õ ŒH�OŠO�C ¨:Ñ 5Ñ6Ô6Ñ7Ô7Ð7ÝÐ 2Ñ3Ô3ˆCØ”5˜A’:�:�:�:å”�{Ñ+Ô+ð 4ð 4ÝÐ2Ñ3Ô3Ð3ð4ð 4ð 4ñ 4ô 4ð 4ð 4ð 4ð 4ð 4ð 4øøøð 4ð 4ð 4ð 4õ ŒH�OŠO�C ¨:Ñ 5Ñ6Ô6Ñ7Ô7Ð7Ý!Ð"6Ñ7Ô7ˆEØ”7˜a’<�<�<�<�<ð+	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 s�   ÂIÂ.A6H.Ä$E Ä4H.Å EÅH.ÅEÅA'H.Æ/GÆ?H.ÇGÇH.ÇGÇAH.È"IÈ.H2	È2IÈ5H2	È6IÉI
ÉI
c                ól  — dddii}t           j                             ||¬¦  «         dt          |dz  ¦  «        i}t	          t          t          ¦   «         ¦  «        |i ¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  t          j
                             dd ¦  «         |                      |¦  «         t          j        t          d¬¦  «        5  t!          d¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NrQ   r(   zfrom . import pkgr4   r\   ©rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   re   r  r  r   ©rq   rJ   r1   r×   rØ   s        r$   Útest_no_recursionz$TestFinderTemplate.test_no_recursionc  sæ  € ð ØÐ2ðð
ˆõ
 	Œ×Ò˜%¨ÐÑ1Ô1Ð1ð •3�x %Ñ'Ñ(Ô(ð
ˆõ $¥C­©¬¡L¤L°'¸2Ñ>Ô>ˆåÔ Ñ"Ô"ð 	%ð 	%¥HÔ$=Ñ$?Ô$?ð 	%ð 	%ÝŒK�OŠO˜E 4Ñ(Ô(Ð(à×Ò Ñ)Ô)Ð)Ý”�{°%Ð8Ñ8Ô8ð %ð %Ý˜eÑ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð		%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%ð 	%ð 	%s[   Á9D)ÂADÃC:Ã.DÃ:C>Ã>DÄC>ÄDÄD)ÄD	ÄD)ÄD	ÄD)Ä)D-Ä0D-c                ó²  — ddddidœi}t           j                             ||¬¦  «         dt          |dz  ¦  «        i}t	          t          t          ¦   «         ¦  «        |i ¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  t          j
                             dd ¦  «         t          j
                             dd ¦  «         |                      |¦  «         t          j        t          d¬¦  «        5  t!          d¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )	NÚfoor”   r(   )r(   Úbarr4   zfoo.barr<   r\   r  r  s        r$   Útest_similar_namez$TestFinderTemplate.test_similar_namex  s  € àØ!à! 2ððð ð
ˆõ 	Œ×Ò˜%¨ÐÑ1Ô1Ð1ð •3�x %Ñ'Ñ(Ô(ð
ˆõ $¥C­©¬¡L¤L°'¸2Ñ>Ô>ˆåÔ Ñ"Ô"ð 	(ð 	(¥HÔ$=Ñ$?Ô$?ð 	(ð 	(ÝŒK�OŠO˜E 4Ñ(Ô(Ð(ÝŒK�OŠO˜I tÑ,Ô,Ð,à×Ò Ñ)Ô)Ð)Ý”�{°(Ð;Ñ;Ô;ð (ð (Ý˜hÑ'Ô'Ð'ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s[   Á<EÂA1D4ÄDÄD4ÄD!Ä!D4Ä$D!Ä%D4Ä(EÄ4D8	Ä8EÄ;D8	Ä<EÅEÅEc                óø  — ddddddœdœi}t           j                             ||¬¦  «         dt          |dz  ¦  «        i}t	          t          t          ¦   «         ¦  «        |i ¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  t          j
                             dd ¦  «         |                      |¦  «         t          j        t          d¬	¦  «        5  t!          d
¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬	¦  «        5  t!          d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬	¦  «        5  t!          d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬	¦  «        5  t!          d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬	¦  «        5  t!          d¦  «         d d d ¦  «         n# 1 swxY w Y   t!          d¦  «        }|j        dk    sJ ‚t!          d¦  «        }|j        dk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr  r”   r
  r  )r(   úlowercase.py)r(   r#  r   r4   z'FOO'r\   ÚFOOz'foo\.LOWERCASE'zfoo.LOWERCASEz'foo\.bar\.Lowercase'zfoo.bar.Lowercasez
'foo\.BAR'zfoo.BAR.lowercasezFOO.bar.lowercasezfoo.lowercaser   zfoo.bar.lowercaser  )rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   re   r  r  r   r  )rq   rJ   r1   r×   rØ   rÙ   s         r$   Útest_case_sensitivityz(TestFinderTemplate.test_case_sensitivity�  s!  € àØ!Ø 'à#%Ø$+ðð ðð ð	
ˆõ 	Œ×Ò˜%¨ÐÑ1Ô1Ð1à•3�x %Ñ'Ñ(Ô(ð
ˆõ $¥C­©¬¡L¤L°'¸2Ñ>Ô>ˆÝÔ Ñ"Ô"ð 	ð 	¥HÔ$=Ñ$?Ô$?ð 	ð 	ÝŒK�OŠO˜E 4Ñ(Ô(Ð(à×Ò Ñ)Ô)Ð)Ý”�{°'Ð:Ñ:Ô:ð %ð %Ý˜eÑ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ ”�{Ð2EÐFÑFÔFð /ð /Ý˜oÑ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /õ ”�{Ð2KÐLÑLÔLð 3ð 3ÝÐ1Ñ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3õ ”�{°-Ð@Ñ@Ô@ð 3ð 3ÝÐ1Ñ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3õ ”�{°'Ð:Ñ:Ô:ð 3ð 3ÝÐ1Ñ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3õ   Ñ0Ô0ˆCØ”5˜A’:�:�:�:åÐ 3Ñ4Ô4ˆCØ”5˜A’:�:�:�:�:ð/	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	së   Á>I/ÂAIÃ#C?Ã3IÃ?DÄIÄDÄIÄ%EÄ5IÅEÅIÅEÅ	IÅ'FÅ7IÆFÆIÆ
FÆIÆ)GÆ9IÇG	Ç	IÇG	ÇIÇ+HÇ;IÈHÈIÈHÈ;IÉI/ÉI	ÉI/ÉI	ÉI/É/I3É6I3c                óž  — dddddœdœi}t           j                             ||¬¦  «         dt          |dz  ¦  «        i}d	g i}t	          t          t          ¦   «         ¦  «        ||¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  d
D ]"}t          j
                             |d ¦  «         Œ#|                      |¦  «         t          d¦  «        }t          |dz                       ¦   «         ¦  «        }t          ||¦  «         |j        dk    sJ ‚t          d¦  «        }	|	j        dk    sJ ‚t          d¦  «        }
|
j        dk    sJ ‚t'          j        t*          d¬¦  «        5  t          d¦  «         d d d ¦  «         n# 1 swxY w Y   t'          j        t*          d¬¦  «        5  t          d¦  «         d d d ¦  «         n# 1 swxY w Y   t'          j        t*          d¬¦  «        5  t          d¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NrQ   rÞ   ré   zc = 42)r(   zbar.py)r(   r  r4   rá   r|   râ   rã   zns.othername.foorì   zns.othername.foo.barrÎ   z'NS'r\   zNS.othername.fooz'ns\.othername\.FOO\'zns.othername.FOOz'ns\.othername\.foo\.BAR\'zns.othername.foo.BAR)rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   r   rÕ   rÖ   rÔ   rí   Úcre   r  r  )rq   rJ   r1   r×   r   rØ   rÙ   rQ   rÛ   r  r   s              r$   Útest_namespace_case_sensitivityz2TestFinderTemplate.test_namespace_case_sensitivity¹  sˆ  € àØ'à#+Ø&ðð ðð ð
ˆõ 	Œ×Ò˜%¨ÐÑ1Ô1Ð1à!¥3 x°%Ñ'7Ñ#8Ô#8Ð9ˆØ˜B�Zˆ
å#¥C­©¬¡L¤L°'¸:ÑFÔFˆÝÔ Ñ"Ô"ð 	6ð 	6¥HÔ$=Ñ$?Ô$?ð 	6ð 	6Ø-ð +ð +�Ý”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ)Ô)Ð)Ý Ñ/Ô/ˆCÝ˜H uÑ,×5Ò5Ñ7Ô7Ñ8Ô8ˆHÝ˜˜XÑ&Ô&Ð&Ø”5˜B’;�;�;�;åÐ 2Ñ3Ô3ˆCØ”5˜B’;�;�;�;åÐ 6Ñ7Ô7ˆCØ”5˜B’;�;�;�;å”�{°&Ð9Ñ9Ô9ð 2ð 2ÝÐ0Ñ1Ô1Ð1ð2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2õ ”�{Ð2LÐMÑMÔMð 2ð 2ÝÐ0Ñ1Ô1Ð1ð2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2õ ”�{Ð2RÐSÑSÔSð 6ð 6ÝÐ4Ñ5Ô5Ð5ð6ð 6ð 6ñ 6ô 6ð 6ð 6ð 6ð 6ð 6ð 6øøøð 6ð 6ð 6ð 6ð-	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6ð 	6ð 	6s£   ÂIÂCH*Å3FÆH*ÆFÆH*ÆFÆH*Æ5GÇH*ÇGÇH*ÇGÇH*Ç7HÈH*ÈHÈH*ÈHÈH*ÈIÈ*H.	È.IÈ1H.	È2IÉIÉ	Ic                óð  — dddddddidœii}t           j                             ||¬	¦  «         dt          |d
z  ¦  «        i}t	          t          t          ¦   «         ¦  «        |i ¦  «        }t          j        ¦   «         5  t          j        ¦   «         5  dD ]"}t          j
                             |d¦  «         Œ#|                      |¦  «         t          d¦  «        }|j        dk    sJ ‚t          d¦  «        }|j        dk    sJ ‚t!          j        t$          ¦  «        5  t          d¦  «         ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   ddd¦  «         dS # 1 swxY w Y   dS )zˆ
        The finder should not import ``fullname`` if the intermediate segments
        don't exist (see pypa/setuptools#4019).
        r,   r'   r”   rÞ   zb = 13ú	config.pyza = 37)r(   r*  zhelloworld.pyÚ
componentsr4   z	src/mypkg)r'   zmypkg.configúmypkg.helloworldzmypkg.componentsúmypkg.components.configúmypkg.components.helloworldNr-  rì   r,  rã   r.  )rB   rC   rD   rE   r   r   r   rÐ   rÑ   rž   rÒ   rÓ   rÂ   r   rÔ   rí   re   r  r  )rq   rJ   r1   r×   rØ   rÙ   rb   Ú
helloworlds           r$   Útest_intermediate_packagesz-TestFinderTemplate.test_intermediate_packagesâ  sJ  € ð ØØ#%Ø!)Ø%-à# Xð#ð	ð ð	ð
ˆõ 	Œ×Ò˜%¨ÐÑ1Ô1Ð1à�C ¨;Ñ 6Ñ7Ô7Ð8ˆÝ#¥C­©¬¡L¤L°'¸2Ñ>Ô>ˆåÔ Ñ"Ô"ð 	=ð 	=¥HÔ$=Ñ$?Ô$?ð 	=ð 	=ðð +ð +�õ ”—’  TÑ*Ô*Ð*Ð*à×Ò Ñ)Ô)Ð)å"Ð#<Ñ=Ô=ˆFØ”8˜r’>�>�>�>å&Ð'9Ñ:Ô:ˆJØ”< 2Ò%Ð%Ð%Ð%å”�{Ñ+Ô+ð =ð =ÝÐ;Ñ<Ô<Ð<ð=ð =ð =ñ =ô =ð =ð =ð =ð =ð =ð =øøøð =ð =ð =ð =ð'	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð 	=ð 	=s[   Â E+ÂBEÄ D<Ä0EÄ<E Å EÅE ÅEÅE+ÅE	ÅE+ÅE	ÅE+Å+E/Å2E/N)r„   r…   r†   Ú__doc__rÂ   rÜ   rç   rï   r  r  r  r!  r%  r(  r0  r‰   r&   r$   r¼   r¼   ·  sÈ   € € € € € ðð ð
ð ð ð
*ð *ð *ð@=ð =ð =ð. ð  ð  ð6) ð ) ð ) ðV" ð " ð " ðH%ð %ð %ð*(ð (ð (ð0'ð 'ð 'ðR'6ð '6ð '6ðR*=ð *=ð *=ð *=ð *=r&   r¼   c           
     óN  — ddiddœdddidœdd	dd
iiiddiddiddidœ}t           j                             || ¬¦  «         ddddœ}g d¢}t          ||| ¦  «        }|t	          | dz  ¦  «        t	          | dz  ¦  «        t	          | dz  ¦  «        t	          | dz  ¦  «        t	          | dz  ¦  «        t	          | dz  ¦  «        dœk    sJ ‚t          t          t          ||¦  «        ¦  «        ¦  «        }|ddhk    sJ ‚t          t          |¦  «        ¦  «        }|h d£k    sJ ‚dS )r½   r(   zab = 1r�   )rí   r(   zd = 1zde = 1)r(   ÚeÚgÚhzfgh = 1zabc = 1z
abcxyz = 1z	mnopq = 1)rÔ   ÚdÚfÚotherÚanotherÚyet_anotherr4   r8  r9  r:  )úa.b.cúa.b.c.x.y.zú	m.n.o.p.q)rÔ   úa.br;  ú	a.b.c.x.yr<  r6  zd.er7  úf.gzf.g.hr=  rÔ   r6  r7  )rÔ   r;  r<  r6  r7  r=  r@  >   úm.núm.n.oúa.b.c.xúm.n.o.pÚmr>  r?  N)	rB   rC   rD   r   rE   Úsetr«   r   r   )rJ   r1   r÷   rø   Úrootsr|   s         r$   Útest_pkg_rootsrH    s™  € ð " 8Ð,¸WÐEÐEØ$¨M¸8Ð+DÐEÐEØ�C˜-¨Ð3Ð4Ð5Ø Ð+Ø! <Ð0Ø% {Ð3ðð €Eõ „K×Ò�e HÐÑ-Ô-Ð-àØ Ø"ðð €Kð
ð ð €Hõ   ¨+°xÑ@Ô@€EØÝ�˜C‘Ñ Ô Ý�X Ñ'Ñ(Ô(Ý˜8 iÑ/Ñ0Ô0Ý�˜C‘Ñ Ô Ý�˜C‘Ñ Ô Ý˜ MÑ1Ñ2Ô2ðð ò ð ð ð õ 
�TÕ" 8¨UÑ3Ô3Ñ4Ô4Ñ	5Ô	5€BØ�#�u�ÒÐÐÐå	Õ% eÑ,Ô,Ñ	-Ô	-€BØÐPÐPÐPÒPÐPÐPÐPÐPÐPr&   c            
      ó<  — e Zd ZU dZ ee¦  «        ed         dddddddœdœd	œZd
ed<   e ee¦  «        ed         dded         idœ ee¦  «         ed¦  «        z   ed         dded         d         dœed         d         dœ ee¦  «        ed         dded         d         ed         d         dœidœdœZe	j
                             ej        dk    d¬¦  «        e	j
                             de                     ¦   «         ¦  «        d„ ¦   «         ¦   «         ZdS )ÚTestOverallBehaviourz·        [build-system]
        requires = ["setuptools"]
        build-backend = "setuptools.build_meta"

        [project]
        name = "mypkg"
        version = "3.14159"
        r+   r”   zvar = 42zvar = 13úresource 39)r(   rÇ   zresource_file.txt)r(   rÅ   Ú
subpackage)r*   r+   úotherfile.pyr'   zdict[str, Any]ÚFLAT_LAYOUTr'   )r*   r+   rM  r,   zÇ                [tool.setuptools]
                packages = ["mypkg", "mypkg.subpackage"]

                [tool.setuptools.package-dir]
                "mypkg.subpackage" = "other"
                rÅ   )r(   rÅ   rL  )r*   r+   rM  r'   r8  )rÅ   rL  )úflat-layoutú
src-layoutúcustom-layoutÚ	namespacer-   r.   r/   Úlayoutc                ój  — t          d||| j        |         g|¢R Ž \  }}d}|                     ddt          |¦  «        g¦  «        }d|v sJ ‚d}	|                     ddt          |	¦  «        g¦  «        }d|v sJ ‚d}
|                     ddt          |
¦  «        g¦  «        }d	|v sJ ‚t	          |                     d
¦  «        ¦  «        }t	          |                     d¦  «        ¦  «        }t	          |                     d¦  «        ¦  «        }|                     dd¬¦  «         |                     dd¬¦  «         |                     dd¬¦  «         |                     ddt          |	¦  «        g¦  «        }d|vsJ ‚d|v sJ ‚|                     ddt          |
¦  «        g¦  «        }d	|vsJ ‚d|v sJ ‚d S )Nr'   zj        try:
            import otherfile
        except ImportError as ex:
            print(ex)
        r6   rR   zNo module named 'otherfile'zy        import mypkg, mypkg.mod1, mypkg.subpackage.mod2
        print(mypkg.mod1.var, mypkg.subpackage.mod2.var)
        z42 13zô        import mypkg.subpackage
        from setuptools._importlib import resources as importlib_resources
        text = importlib_resources.files(mypkg.subpackage) / "resource_file.txt"
        print(text.read_text(encoding="utf-8"))
        rK  ú
**/mod1.pyú
**/mod2.pyú**/resource_file.txtzvar = 17r=   r>   z	var = 781zresource 374z17 781)Úinstall_projectÚEXAMPLESrG   r   r   ro   rI   )rq   rJ   rK   rS  r%   rL   Ú_Úcmd_import_errorr™   Úcmd_get_varsÚcmd_get_resourcerÚ   rË   Úresource_files                 r$   Útest_editable_installz*TestOverallBehaviour.test_editable_installƒ  sü  € õ %Ø�T˜8 T¤]°6Ô%:ð
Ø=Jð
ð 
ð 
‰
ˆ�ð
Ðð �hŠh˜ $­Ð/?Ñ(@Ô(@ÐAÑBÔBˆØ,°Ð3Ð3Ð3Ð3ðˆð �hŠh˜ $­¨|Ñ(<Ô(<Ð=Ñ>Ô>ˆØ˜#ˆ~ˆ~ˆ~ˆ~ðÐð �hŠh˜ $­Ð/?Ñ(@Ô(@ÐAÑBÔBˆØ Ð#Ð#Ð#Ð#õ �G—L’L Ñ.Ô.Ñ/Ô/ˆÝ�G—L’L Ñ.Ô.Ñ/Ô/ˆÝ˜WŸ\š\Ð*@ÑAÔAÑBÔBˆà�Š˜
¨WˆÑ5Ô5Ð5Ø�Š˜¨gˆÑ6Ô6Ð6Ø× Ò  ¸'Ð ÑBÔBÐBà�hŠh˜ $­¨|Ñ(<Ô(<Ð=Ñ>Ô>ˆØ˜cÐ!Ð!Ð!Ð!Ø˜3ˆˆˆˆà�hŠh˜ $­Ð/?Ñ(@Ô(@ÐAÑBÔBˆØ CÐ'Ð'Ð'Ð'Ø Ð$Ð$Ð$Ð$Ð$Ð$r&   N)r„   r…   r†   Ú	PYPROJECTr   r˜   rN  Ú__annotations__rY  re   r‡   Úxfailrž   r´   rˆ   Úkeysr_  r‰   r&   r$   rJ  rJ  @  sÒ  € € € € € € ð€Ið !˜& Ñ+Ô+Ø˜}Ô-ØàØ!à!Ø%Ø%2ðð ð
ð 
ð	#ð #€Kð ð ð ñ ð  #à$˜f YÑ/Ô/Ø" =Ô1ØØ˜[¨Ô1Ð2ð	
ð 
ð %˜f YÑ/Ô/Øˆfðñô ñ	ð # =Ô1Øà!Ø& wÔ/°	Ô:ðð ð ! Ô)¨,Ô7ð#
ð 
ð( %˜f YÑ/Ô/Ø" =Ô1ØàØ*¨7Ô3°IÔ>Ø"-¨gÔ"6°|Ô"Dðð ðð	

ð 

ð7&ð &€HðP „[×Ò�s”| xÒ/Ð8NÐÑOÔOØ„[×Ò˜X x§}¢}¡¤Ñ7Ô7ð0%ð 0%ñ 8Ô7ñ PÔOð0%ð 0%ð 0%r&   rJ  c                  óš   — e Zd Z eej        d         ¦  «        Zedxx          ed¦  «        z  cc<   ded         d         d<   d„ Zd	„ Z	d
S )ÚTestLinkTreerP  r*   a[          [tool.setuptools]
        # Temporary workaround: both `include-package-data` and `package-data` configs
        # can be removed after #3260 is fixed.
        include-package-data = false
        package-data = {"*" = ["*.txt"]}

        [tool.setuptools.packages.find]
        where = ["src"]
        exclude = ["*.subpackage*"]
        rß   r,   r'   úresource.not_in_manifestc                ó  — t           j                             | j        |¬¦  «         t	          |¦  «        5  d}t          ddi¦  «        }|                     ¦   «          t          ¦   «         }|dz  }|dz  }|                     ¦   «          |                     ¦   «          | 	                    d¦  «        }d|_
        t          |¦  «        |_        |                     ¦   «          |                     ¦   «         }|                     ¦   «         }	t!          ||||¦  «        }
 |
|||	¦  «         t#          |                     d	¦  «        ¦  «        }|d
z  }t'          ||¦  «         t#          |                     d¦  «        d ¦  «        �J ‚t#          |                     d¦  «        d ¦  «        �J ‚t#          |                     d¦  «        d ¦  «        �J ‚t#          |                     d¦  «        d ¦  «        �J ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr4   zmypkg-3.14159rö   ró   z.auxz.buildÚbuild_pyTrU  zsrc/mypkg/mod1.pyz**/subpackagerV  rW  z**/resource.not_in_manifest)rB   rC   rD   ÚFILESÚ_Pathr   Úparse_config_filesr
   rA   Úget_command_objÚeditable_moderE   Ú	build_libÚensure_finalizedÚget_outputsÚget_output_mappingr   r   ro   Úassert_link_to)rq   rJ   rl   rw   ÚwheelÚauxrD   rh  ÚoutputsÚoutput_mappingÚ	make_treerÚ   rÛ   s                r$   Útest_generated_treez TestLinkTree.test_generated_treeÉ  sH  € ÝŒ×Ò˜$œ*¨XÐÑ6Ô6Ð6å�8‰_Œ_ð 	Oð 	OØ"ˆDÝ °Ð <Ñ=Ô=ˆDØ×#Ò#Ñ%Ô%Ð%å‘F”FˆEØ˜VÑ#ˆCØ˜xÑ'ˆEØ�IŠI‰KŒKˆKØ�KŠK‰MŒMˆMà×+Ò+¨JÑ7Ô7ˆHØ%)ˆHÔ"Ý!$ U¡¤ˆHÔØ×%Ò%Ñ'Ô'Ð'Ø×*Ò*Ñ,Ô,ˆGØ%×8Ò8Ñ:Ô:ˆNå! $¨¨c°5Ñ9Ô9ˆIØˆI�e˜W nÑ5Ô5Ð5å˜Ÿš Ñ.Ô.Ñ/Ô/ˆDØÐ"5Ñ5ˆHÝ˜4 Ñ*Ô*Ð*å˜Ÿš Ñ1Ô1°4Ñ8Ô8Ð@Ð@Ð@Ý˜Ÿš Ñ.Ô.°Ñ5Ô5Ð=Ð=Ð=Ý˜ŸšÐ!7Ñ8Ô8¸$Ñ?Ô?ÐGÐGÐGå˜ŸšÐ!>Ñ?Ô?ÀÑFÔFÐNÐNÐNÐNð;	Oð 	Oð 	Oñ 	Oô 	Oð 	Oð 	Oð 	Oð 	Oð 	Oð 	Oð 	Oøøøð 	Oð 	Oð 	Oð 	Oð 	Oð 	Os   ¶F>HÈHÈ	Hc                ó2  — ddg}t          d||| j        g|¢R Ž  |                     g d¢¦  «        }d|v sJ ‚d}|                     ddt          |¦  «        g¦  «        }d	|v sJ ‚d
}|                     ddt          |¦  «        g¦  «        }d|v sJ ‚d|v sJ ‚d S )Nr    r!   r'   ©r6   rR   z(import mypkg.mod1; print(mypkg.mod1.var)r`   zv        try:
            from mypkg import subpackage
        except ImportError as ex:
            print(ex)
        r6   rR   úcannot import name 'subpackage'a8          import mypkg
        from setuptools._importlib import resources as importlib_resources
        try:
            text = importlib_resources.files(mypkg) / "resource.not_in_manifest"
            print(text.read_text(encoding="utf-8"))
        except FileNotFoundError as ex:
            print(ex)
        zNo such file or directoryrf  )rX  ri  rG   r   )rq   rJ   rK   r‚   r™   r[  r]  s          r$   Útest_strict_installz TestLinkTree.test_strict_installë  sß   € Ø#Ð%;Ð<ˆÝ˜  x°´ÐC¸dÐCÐCÐCÐCà�hŠhÐSÐSÐSÑTÔTˆØ�sˆ{ˆ{ˆ{ˆ{ðÐð �hŠh˜ $­Ð/?Ñ(@Ô(@ÐAÑBÔBˆØ0°CÐ7Ð7Ð7Ð7ðÐð �hŠh˜ $­Ð/?Ñ(@Ô(@ÐAÑBÔBˆØ*¨cÐ1Ð1Ð1Ð1Ø)¨SÐ0Ð0Ð0Ð0Ð0Ð0r&   N)
r„   r…   r†   r   rJ  rY  ri  r   rx  r|  r‰   r&   r$   re  re  ¸  s”   € € € € € ØˆHÐ)Ô2°<Ô@ÑAÔA€EØ	Ð
ÐÐÔ˜v˜vð
	ñ ô  ñ ÐÐÑð 9>€Eˆ%„L�ÔÐ4Ñ5ð Oð  Oð  OðD1ð 1ð 1ð 1ð 1r&   re  z9ignore:.*compat.*:setuptools.SetuptoolsDeprecationWarningc                ó~  — ddg}t           j        d         }t          d|| |g|¢R Ž  |                     g d¢¦  «        }d|v sJ ‚t	          t          | ¦  «        ¦  «        }dD ]-}t	          |                     dd	|g¦  «        ¦  «        }||v sJ ‚Œ.d
}|                     dd	t          |¦  «        g¦  «        }d|v sJ ‚d S )Nr    zeditable-mode=compatrQ  r'   rz  r`   )z"import otherfile; print(otherfile)zimport other; print(other)zimport mypkg; print(mypkg)r6   rR   zc    try:
        from mypkg import subpackage;
    except ImportError as ex:
        print(ex)
    r{  )rJ  rY  rX  rG   Úcomparable_pathrE   r   )rJ   rK   r‚   r1   r™   Úexpected_pathrM   s          r$   Útest_compat_installr€    sõ   € ð  Ð!7Ð8€DÝ Ô)¨/Ô:€EÝ�G˜T 8¨UÐ:°TÐ:Ð:Ð:Ð:à
�(Š(ÐOÐOÐOÑ
PÔ
P€CØ�3ˆ;ˆ;ˆ;ˆ;å#¥C¨¡M¤MÑ2Ô2€Mðð $ð $ˆõ
 ˜dŸhšh¨°$¸Ð'<Ñ=Ô=Ñ>Ô>ˆØ Ð#Ð#Ð#Ð#Ð#ð€Cð �(Š(�H˜d¥F¨3¡K¤KÐ0Ñ
1Ô
1€CØ,°Ð3Ð3Ð3Ð3Ð3Ð3r&   c                ó˜   — dddddd| g|¢}|                      |t          j        ¬¦  «         |                      g d¢¦  «        }d	|v sJ ‚d
S )z3Ensure editable installs work with pbr, issue #3500r6   r7   r8   r–   r9   r¤   ©Ústderr)r6   rR   zimport mypkg.hellozHello world!N)rG   r²   ÚSTDOUT)Úpbr_packagerK   r%   rM   r™   s        r$   Útest_pbr_integrationr†  ,  st   € ð 	ØØØØØØð	ð 
ð	€Cð 	‡H‚HˆS�Ô*€HÑ+Ô+Ð+Ø
�(Š(Ð9Ð9Ð9Ñ
:Ô
:€CØ˜SÐ Ð Ð Ð Ð Ð r&   c                  óP   — e Zd ZdZi ej        d         ¥d ed¦  «        i¥Zd„ ZdS )ÚTestCustomBuildPya$  
    Issue #3501 indicates that some plugins/customizations might rely on:

    1. ``build_py`` not running
    2. ``build_py`` always copying files to ``build_lib``

    During the transition period setuptools should prevent potential errors from
    happening due to those assumptions.
    rO  r2   af              import pathlib
            from setuptools import setup
            from setuptools.command.build_py import build_py as orig

            class my_build_py(orig):
                def run(self):
                    super().run()
                    raise ValueError("TEST_RAISE")

            setup(cmdclass={"build_py": my_build_py})
            c                óŒ   — t          d||| j        ¦  «        \  }}d|v sJ ‚d|v sJ ‚|                     g d¢¦  «        }d|v sJ ‚dS )z>Ensure that errors in custom build_py are reported as warningsr'   r   zValueError: TEST_RAISErz  r`   N)rX  ri  rG   )rq   rJ   rK   rZ  r™   s        r$   Útest_safeguarded_from_errorsz.TestCustomBuildPy.test_safeguarded_from_errors]  sh   € õ ! ¨$°¸$¼*ÑEÔE‰ˆˆ3Ø-°Ð4Ð4Ð4Ð4Ø'¨3Ð.Ð.Ð.Ð.à�hŠhÐSÐSÐSÑTÔTˆØ�sˆ{ˆ{ˆ{ˆ{ˆ{ˆ{r&   N)	r„   r…   r†   r1  rJ  rY  r   ri  rŠ  r‰   r&   r$   rˆ  rˆ  >  sd   € € € € € ðð ðØ
Ô
'¨Ô
6ðà�F�Fðñ
ô 
ðð €Eð$ð ð ð ð r&   rˆ  c                  ó   — e Zd Zd„ Zd„ ZdS )ÚTestCustomBuildWheelc                ó`   — |                      d¦  «        } G d„ d|¦  «        }||j        d<   d S )NÚbdist_wheelc                  ó   ‡ — e Zd Zˆ fd„Zˆ xZS )úETestCustomBuildWheel.install_custom_build_wheel.<locals>.MyBdistWheelc                ó|   •— | j                              d¦  «        rd}t          ¦   «                              ¦   «         S )Nzmacosx-zmacOS platform)Ú	plat_namer�   ÚsuperÚget_tag)rq   rZ  Ú	__class__s     €r$   r”  zMTestCustomBuildWheel.install_custom_build_wheel.<locals>.MyBdistWheel.get_tagm  s6   ø€ ð ”>×,Ò,¨YÑ7Ô7ð )Ø(�AÝ‘w”w—’Ñ(Ô(Ð(r&   )r„   r…   r†   r”  Ú__classcell__)r•  s   @r$   ÚMyBdistWheelr�  l  s8   ø€ € € € € ð)ð )ð )ð )ð )ð )ð )ð )ð )r&   r—  )Úget_command_classÚcmdclass)rq   rw   Úbdist_wheel_clsr—  s       r$   Úinstall_custom_build_wheelz/TestCustomBuildWheel.install_custom_build_wheeli  sS   € Ø×0Ò0°Ñ?Ô?ˆð	)ð 	)ð 	)ð 	)ð 	)˜?ñ 	)ô 	)ð 	)ð (4ˆŒ�mÑ$Ð$Ð$r&   c                ó´  — t           j                             ddi¦  «         t          ¦   «         }d|_        |                     ¦   «          |                      |¦  «         t          |¦  «        }|                     ¦   «          | 	                    ¦   «          t          t          t          ¦   «                              d¦  «        ¦  «        ¦  «        }d|v sJ ‚d S )Nú	module.pyr@   r2   ú
dist/*.whlÚeditable)rB   rC   rD   r   rö   Úset_defaultsr›  r   ro  rG   rE   r   r   ro   )rq   Ú
tmpdir_cwdrw   rM   Ú
wheel_files        r$   Útest_access_plat_namez*TestCustomBuildWheel.test_access_plat_namev  s¾   € õ 	Œ×Ò˜;¨Ð1Ñ2Ô2Ð2Ý‰~Œ~ˆØ%ˆÔØ×ÒÑÔÐØ×'Ò'¨Ñ-Ô-Ð-Ý˜TÑ"Ô"ˆØ×ÒÑÔÐØ�Š‰	Œ	ˆ	Ý��d™fœfŸkšk¨,Ñ7Ô7Ñ8Ô8Ñ9Ô9ˆ
Ø˜ZÐ'Ð'Ð'Ð'Ð'Ð'r&   N)r„   r…   r†   r›  r£  r‰   r&   r$   rŒ  rŒ  h  s2   € € € € € ð4ð 4ð 4ð(ð (ð (ð (ð (r&   rŒ  c                  óp   — e Zd Zd„ Zej                             ej        dk    d¬¦  «        d„ ¦   «         Z	dS )ÚTestCustomBuildExtc                óB   — ddl m}  G d„ d|¦  «        }||j        d<   d S )Nr   )Ú	build_extc                  ó   — e Zd ZdS )úITestCustomBuildExt.install_custom_build_ext_distutils.<locals>.MyBuildExtN)r„   r…   r†   r‰   r&   r$   Ú
MyBuildExtr©  ‰  s   € € € € € ØˆDr&   rª  r§  )Údistutils.command.build_extr§  r™  )rq   rw   Úbuild_ext_clsrª  s       r$   Ú"install_custom_build_ext_distutilsz5TestCustomBuildExt.install_custom_build_ext_distutils†  sR   € ØJÐJÐJÐJÐJÐJð	ð 	ð 	ð 	ð 	˜ñ 	ô 	ð 	ð &0ˆŒ�kÑ"Ð"Ð"r&   Úlinuxz(compilers may fail without correct setupr/   c                ó¾  ‡— t           j                             ddi¦  «         dt          ddg¦  «        gi}t	          |¦  «        }d|_        |                     ¦   «          |                      |¦  «         t          |¦  «        }| 	                    ¦   «          | 
                    ¦   «          t          t          t          ¦   «                              d¦  «        ¦  «        ¦  «        }d|v sJ ‚d„ t          ¦   «                              d	¦  «        D ¦   «         }t          |¦  «        d
k    sJ ‚|d         j        Št#          ˆfd„t$          D ¦   «         ¦  «        sJ ‚d S )Nzmodule.cr”   Úext_modulesÚmoduler2   rž  rŸ  c                ó(   — g | ]}|j         d k    ¯|‘ŒS )z.c)Úsuffix)r    Úps     r$   r¡   zITestCustomBuildExt.test_distutils_leave_inplace_files.<locals>.<listcomp>Ÿ  s$   € ÐHÐHÐH�q°q´xÀ4Ò7GÐ7G�Ð7GÐ7GÐ7Gr&   zmodule.*r   r   c              3  óB   •K  — | ]}‰                      |¦  «        V — Œd S ©Nrú   )r    Úextrl   s     €r$   rþ   zHTestCustomBuildExt.test_distutils_leave_inplace_files.<locals>.<genexpr>¢  s/   øè è € ÐDÐD¨#�4—=’= Ñ%Ô%ÐDÐDÐDÐDÐDÐDr&   )rB   rC   rD   r   r   rö   r   r­  r   ro  rG   rE   r   r   ro   rp   rl   Úanyr   )rq   r¡  r  rw   rM   r¢  r1   rl   s          @r$   Ú"test_distutils_leave_inplace_filesz5TestCustomBuildExt.test_distutils_leave_inplace_filesŽ  sK  ø€ õ 	Œ×Ò˜: rÐ*Ñ+Ô+Ð+à�I h°°Ñ=Ô=Ð>ð
ˆõ ˜EÑ"Ô"ˆØ%ˆÔØ×ÒÑÔÐØ×/Ò/°Ñ5Ô5Ð5Ý˜TÑ"Ô"ˆØ×ÒÑÔÐØ�Š‰	Œ	ˆ	Ý��d™fœfŸkšk¨,Ñ7Ô7Ñ8Ô8Ñ9Ô9ˆ
Ø˜ZÐ'Ð'Ð'Ð'ØHÐH�D™FœFŸKšK¨
Ñ3Ô3ÐHÑHÔHˆÝ�5‰zŒz˜QŠˆˆˆØ�QŒxŒ}ˆÝÐDÐDÐDÐDÕ1CÐDÑDÔDÑDÔDÐDÐDÐDÐDÐDr&   N)
r„   r…   r†   r­  re   r‡   Úskipifrž   r´   r¹  r‰   r&   r$   r¥  r¥  …  sj   € € € € € ð0ð 0ð 0ð „[×ÒØŒ˜ÒÐ(Rð ñ ô ðEð Eñô ðEð Eð Er&   r¥  c                ó6  — t           j                             ddi¦  «         t          ¦   «         }d|_        |                     ¦   «          t          |¦  «        }|                     ¦   «          t          dt          fi ¦  «        }t           |¦   «         ¬¦  «        }|                     |d|¦  «         t          j        |¦  «        5 }|                     ¦   «          ddd¦  «         n# 1 swxY w Y   t          d„ |j        j        D ¦   «         ¦  «        sJ ‚dS )	z7Make sure to display useful debugging tips to the user.r�  r@   r2   ÚSimulatedErr)Úside_effectrk   Nc              3  ó   K  — | ]}d |v V — Œ	dS )zdebugging-tipsNr‰   )r    Únotes     r$   rþ   z&test_debugging_tips.<locals>.<genexpr>´  s(   è è € ÐHÐH¨DÐ 4Ð'ÐHÐHÐHÐHÐHÐHr&   )rB   rC   rD   r   rö   r   r   ro  ÚtypeÚ	Exceptionr
   Úsetattrre   r  rG   r¸  ÚvalueÚ	__notes__)r¡  rr   rw   rM   r¼  Úsimulated_failurerv   s          r$   Útest_debugging_tipsrÆ  ¥  s@  € å
„K×Ò�{ HÐ-Ñ.Ô.Ð.Ý‰>Œ>€DØ!€DÔØ×ÒÑÔÐÝ
˜Ñ
Ô
€CØ×ÒÑÔÐå˜­¨°bÑ9Ô9€LÝ¨¨©¬Ð8Ñ8Ô8ÐØ×Ò˜Ð4Ð6GÑHÔHÐHå	Œ�|Ñ	$Ô	$ð ¨Ø�Š‰	Œ	ˆ	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð åÐHÐH°C´IÔ4GÐHÑHÔHÑHÔHÐHÐHÐHÐHÐHs   ÃC)Ã)C-Ã0C-Úerrorc                 óR   — t          d¦  «        } t          | t          ¦  «        sJ ‚dS )z>Ensure _encode_pth function does not produce encoding warningsu   tkmilan_Ã§_utf8N)r   Ú
isinstanceÚbytes)Úcontents    r$   Útest_encode_pthrÌ  ·  s.   € õ Ð+Ñ,Ô,€GÝ�g�uÑ%Ô%Ð%Ð%Ð%Ð%Ð%r&   c                óø   — || z  }|                      ¦   «          t          j                             ||¬¦  «         g |¢d‘}|                     ddddddt          |¦  «        g|¢t          j        ¬	¦  «        }||fS )
Nr4   r:   r6   r7   r8   r–   r9   r;   r‚  )rA   rB   rC   rD   rG   rE   r²   r„  )rl   rK   rJ   r1   r‚   rL   r™   s          r$   rX  rX  ¾  sŠ   € Ø˜‰o€GØ‡M‚M�O„O€OÝ
„K×Ò�e GÐÑ,Ô,Ð,Ø*ˆTÐ*Ð)Ð*€DØ
�(Š(Ø	�4˜  i°µs¸7±|´|ÐKÀdÐKÝÔ ð ñ ô €Cð �Cˆ<Ðr&   c                ó¤   — d                      dt          d„ | D ¦   «         ¦  «        z   ¦  «        }| d         dz                       |d¬¦  «         dS )	a5  To use this function, it is necessary to insert new_dir in front of sys.path.
    The Python process will try to import a ``sitecustomize`` module on startup.
    If we manipulate sys.path/PYTHONPATH, we can force it to run our code,
    which invokes ``addsitedir`` and ensure ``.pth`` files are loaded.
    ú
)zimport sitec              3  óF   K  — | ]}d t          j        |¦  «        ›d�V — ŒdS )zsite.addsitedir(ú)N)r¬   Úfspath)r    Únew_dirs     r$   rþ   z_addsitedirs.<locals>.<genexpr>Ò  s8   è è € ÐSÐS¸wÐ:¥2¤9¨WÑ#5Ô#5Ð:Ð:Ð:ÐSÐSÐSÐSÐSÐSr&   r   zsitecustomize.pyr=   r>   N)r¯   ÚtuplerI   )Únew_dirsrË  s     r$   rª   rª   Ê  se   € ð �iŠiØÝ
ÐSÐSÈ(ÐSÑSÔSÑ
SÔ
Sñ	Tñô €Gð ˆa„[Ð%Ñ%×1Ò1°'ÀGÐ1ÑLÔLÐLÐLÐLr&   c                óÌ   — | j         rXt          t          | j         ¦  «        d ¦  «        }|r6t          t	          |¦  «                             ¦   «         ¦  «        |k    sJ ‚d S d S d S r¶  )Ú__path__r   ÚiterrE   r   rÕ   )rQ   rÛ   rC   s      r$   rÖ   rÖ   Ú  sr   € à
„|ð 9Ý•D˜œÑ&Ô&¨Ñ-Ô-ˆØð 	9Ý•t˜D‘z”z×)Ò)Ñ+Ô+Ñ,Ô,°Ò8Ð8Ð8Ð8ð9ð 9ð	9ð 	9Ø8Ð8r&   Úfiler   r8  ÚreturnÚNonec                ó®  — |                       ¦   «         rHt          |                      ¦   «         ¦  «        t          |                     ¦   «         ¦  «        k    sJ ‚d S |                      ¦   «         }|                     ¦   «         }|t          j                 |t          j                 k    sJ ‚|t          j                 |t          j                 k    sJ ‚d S r¶  )Ú
is_symlinkrE   rÕ   ÚstatÚST_INOÚST_DEV)rÙ  r8  Ú	file_statÚ
other_stats       r$   rr  rr  â  sª   € Ø‡‚ÑÔð AÝ�4—<’<‘>”>Ñ"Ô"¥c¨%¯-ª-©/¬/Ñ&:Ô&:Ò:Ð:Ð:Ð:Ð:Ð:à—I’I‘K”Kˆ	Ø—Z’Z‘\”\ˆ
Ø�œÔ%¨µD´KÔ)@Ò@Ð@Ð@Ð@Ø�œÔ%¨µD´KÔ)@Ò@Ð@Ð@Ð@Ð@Ð@r&   Ústr_with_pathrE   c                óŽ   — |                       ¦   «                              t          j        d¦  «                             dd¦  «        S )Nú/z//)ÚlowerÚreplacer¬   Úsep)rã  s    r$   r~  r~  ì  s6   € Ø×ÒÑ Ô ×(Ò(­¬°Ñ5Ô5×=Ò=¸dÀCÑHÔHÐHr&   )rÙ  r   r8  r   rÚ  rÛ  )rã  rE   rÚ  rE   )TÚ
__future__r   r¬   r´   rÞ  r²   rž   Úcopyr   Ú	importlibr   Úimportlib.machineryr   Úpathlibr   Útextwrapr   Útypingr	   Úunittest.mockr
   Úuuidr   Újaraco.envsrB   Újaraco.pathre   rC   rj  Úsetuptools._importlibr   rä   Ú!setuptools.command.editable_wheelr   r   r   r   r   r   r   r   Úsetuptools.distr   Úsetuptools.extensionr   Úsetuptools.warningsr   r”   r   r   Údistutils.corer   Úfixturer%   rH   r˜   ÚSETUP_SCRIPT_STUBr‡   rb  rˆ   rN   rU   rX   rZ   r‹   rº   r¼   rH  rJ  re  Úfilterwarningsr€  Úuses_networkr†  rˆ  rŒ  r¥  rÆ  rÌ  rX  rª   rÖ   rr  r~  r‰   r&   r$   ú<module>rþ     sÖ  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø €€€Ø €€€Ø Ð Ð Ð Ø 
€
€
€
Ø Ð Ð Ð Ð Ð Ø #Ð #Ð #Ð #Ð #Ð #Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ø Ð Ð Ð Ø €€€Ø Ð Ð Ð Ð Ð à BÐ BÐ BÐ BÐ BÐ Bð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð )Ð (Ð (Ð (Ð (Ð (Ø *Ð *Ð *Ð *Ð *Ð *Ø <Ð <Ð <Ð <Ð <Ð <à "Ð "Ð "Ð "Ð "Ð "Ð "Ð "à $Ð $Ð $Ð $Ð $Ð $ð €„˜ )Ð,Ð-Ñ-Ô-ðð ñ .Ô-ðð �fð	ñô ð< �6ð	ñô ÷ ‚e�g„gØ(Ø6àØ!˜6ðñ
ô 
ð "˜6ðñ	ô 	ð Ø%ð/
ð 
ððSDð D€ðN 7Ð ð „×Ò�3”< 8Ò+Ð4JÐÑKÔKØ„×ÒØà2ˆ7Ð2�JÐ 1Ð2Ð2Øðñô ð>ð >ñô ñ LÔKð>ð2%*ð %*ð %*ðP#(ð #(ð #(ðL=Jð =Jð =Jð =Jð =Jñ =Jô =Jð =Jð@b0ð b0ð b0ð b0ð b0ñ b0ô b0ð b0ðJ%*ð %*ð %*ðPU=ð U=ð U=ð U=ð U=ñ U=ô U=ð U=ðp
.Qð .Qð .Qðbu%ð u%ð u%ð u%ð u%ñ u%ô u%ð u%ðpP1ð P1ð P1ð P1ð P1ñ P1ô P1ð P1ðf „×ÒÐWÑXÔXð4ð 4ñ YÔXð4ð@ „Ôð!ð !ñ Ôð!ð"'ð 'ð 'ð 'ð 'ñ 'ô 'ð 'ðT(ð (ð (ð (ð (ñ (ô (ð (ð:Eð Eð Eð Eð Eñ Eô Eð Eð@Ið Ið Ið$ „×Ò˜GÑ$Ô$ð&ð &ñ %Ô$ð&ð	ð 	ð 	ð
Mð 
Mð 
Mð 9ð 9ð 9ðAð Að Að AðIð Ið Ið Ið Ið Ir&   