관리-도구
편집 파일: build_env.cpython-311.pyc
� �������9��s������������� �������������d�Z�ddlZddlZddlZddlZddlZddlZddlmZ�ddl m Z �ddlmZm Z mZmZmZmZmZmZ�ddlmZ�ddlmZ�ddlmZ�dd lmZmZmZ�dd lm Z m!Z!�ddl"m#Z#�ddl$m%Z%�dd l&m'Z'�ddl(m)Z)m*Z*�erddl+m,Z,��ej-��������e.������������Z/de0de0deee0���������ee0e0f���������f���������fd�Z1�G�d��d������������Z2de0fd�Z3dee0���������fd�Z4�G�d��d������������Z5�G�d��de5������������Z6dS�)z;Build Environment used for isolation during sdist building �����N)�OrderedDict)� TracebackType)� TYPE_CHECKING�Iterable�List�Optional�Set�Tuple�Type�Union)�Version)�__file__)�open_spinner)�get_platlib�get_purelib� get_scheme)�get_default_environment�get_environment)�VERBOSE)�get_requirement)�call_subprocess)� TempDirectory� tempdir_kinds)� PackageFinder�a�b�returnc�����������������������|�|k����r|�|fn|�fS��N��)r���r���s��� �w/builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib/python3.11/site-packages/pip/_internal/build_env.py�_dedupr"������s�������!�V�V�A�q�6�6�!��%�����c�������������������������e�Zd�Zdeddfd�ZdS�)�_Prefix�pathr���Nc�����������������������||�_���������d|�_��������t����������d|�������������}|j��������|�_��������t����������|j��������|j��������������������|�_��������d�S�)NF��)�prefix) r&����setupr����scripts�bin_dirr"����purelib�platlib�lib_dirs)�selfr&����schemes��� r!����__init__z_Prefix.__init__$���sD�������� ��� ��B�t�,�,�,���~����v�~�v�~�>�>�� � � r#���)�__name__� __module__�__qualname__�strr2���r ���r#���r!���r%���r%���#���s6��������������?�S��?�T��?��?��?��?��?��?r#���r%���c�������������������������t����������j��������t���������������������������������������������������������j��������}�|������������������������������������st ����������|�������������S�t����������j��������|�dz��������������S�)z�Get a file to pass to a Python executable, to run the currently-running pip. This is used to run a pip subprocess, for installing requirements into the build environment. z__pip-runner__.py) �pathlib�Path�pip_location�resolve�parent�is_dirr6����os�fsdecode)�sources��� r!����get_runnable_piprA���,���sV��������\�,� '� '� /� /� 1� 1� 8�F��=�=�?�?�����6�{�{�� �;�v� 3�3�4�4�4r#���c������������������������t����������t����������d������������rt����������j����������������������}�nt������������������������t ������������������������g}�d��|�D���������������S�)z�Get system site packages Usually from site.getsitepackages, but fallback on `get_purelib()/get_platlib()` if unavailable (e.g. in a virtualenv created by virtualenv<20) Returns normalized set of strings. �getsitepackagesc������������������L�����h�|�]!}t�����������j�����������������������������|��������������"S�r ���)r>���r&����normcase)�.0r&���s��� r!���� <setcomp>z+_get_system_sitepackages.<locals>.<setcomp>M���s(������<�<�<�t�B�G���T�"�"�<�<�<r#���)�hasattr�siterC���r���r���)�system_sitess��� r!����_get_system_sitepackagesrK���<���sO��������t�&�'�'��6��+�-�-����$� � �{�}�}�5��<�<�|�<�<�<�<r#���c������������ ��������"����e�Zd�ZdZdd�Zdd�Zdeee������������������dee���������dee ���������ddfd �Z d ee���������de ee eef������������������ee���������f���������fd�Zdd dee���������dededdf d�Zededd dee���������dededdfd���������������ZdS�)�BuildEnvironmentzACreates and manages an isolated environment to install build depsr���Nc�����������������������t����������t����������j��������d��������������t�����������fd�dD���������������������������|�_��������g�|�_��������g�|�_��������t����������t����������|�j��������� ����������������������������������������������������������D�]@}|�j��������� ��������������������|j���������������������|�j�����������������������������|j ����������������������At������������������������}t����������j������������������������������j��������d������������|�_��������t����������j�����������������������������|�j��������������������st����������j��������|�j���������������������t+����������t����������j�����������������������������|�j��������d������������dd� ������������5�}|���������������������t/����������j��������d ���������������������������������||�j����������������������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)NT)�kind�globally_managedc��������������3��������K����|�]8}|t����������t����������j������������������������������j��������|������������������������fV����9d�S�r���)r%���r>���r&����join)rF����name�temp_dirs��� �r!���� <genexpr>z,BuildEnvironment.__init__.<locals>.<genexpr>V���sV������������% ��% ����7�2�7�<�<�� �t�<�<�=�=�>�% ��% ��% ��% ��% ��% r#���)�normal�overlayrI���zsitecustomize.py�wzutf-8)�encodinga��� import os, site, sys # First, drop system-sites related paths. original_sys_path = sys.path[:] known_paths = set() for path in {system_sites!r}: site.addsitedir(path, known_paths=known_paths) system_paths = set( os.path.normcase(path) for path in sys.path[len(original_sys_path):] ) original_sys_path = [ path for path in original_sys_path if os.path.normcase(path) not in system_paths ] sys.path = original_sys_path # Second, add lib directories. # ensuring .pth file are processed. for path in {lib_dirs!r}: assert not path in sys.path site.addsitedir(path) )rJ���r/���)r���r���� BUILD_ENVr���� _prefixes� _bin_dirs� _lib_dirs�reversed�list�values�appendr,����extendr/���rK���r>���r&���rR���� _site_dir�exists�mkdir�open�write�textwrap�dedent�format)r0���r)���rJ����fprT���s��� @r!���r2���zBuildEnvironment.__init__S���s������� �m�&=�PT�U�U�U��$��% ��% ��% ��% �-�% ��% ��% �� �� ��� �%'���$&����t�D�N�$9�$9�$;�$;�<�<�=�=�� 3�� 3�F��N�!�!�&�.�1�1�1��N�!�!�&�/�2�2�2�2� �0�1�1������h�m�V�<�<����w�~�~�d�n�-�-�� %��H�T�^�$�$�$� ��G�L�L���);�<�<�c�G� �� �� �� � ��H�H�������2��&�l�T�^�&�L�L�5 �� �� � �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����)AF8�8F<�?F<c����������������������d��dD���������������|�_���������|�j��������d�d�����������}|�j���������d���������}|r2|���������������������|���������������������t����������j���������������������������������|�j��������g}t����������j�����������������������������t����������j��������� ��������������������|������������dt����������j��������� ��������������������|������������d��������������d�S�)Nc������������������P�����i�|�]#}|t�����������j�����������������������������|d���������������$S�r���)r>����environ�get)rF���rS���s��� r!���� <dictcomp>z.BuildEnvironment.__enter__.<locals>.<dictcomp>����s:������� �� �� ��� �"�*�.�.��t�,�,� �� �� r#���)�PATH�PYTHONNOUSERSITE� PYTHONPATHrq����1) � _save_envr\���rb����splitr>����pathseprc���rn����updaterR���)r0���r&����old_path� pythonpaths��� r!���� __enter__zBuildEnvironment.__enter__����s������� �� �B� �� �� ��� ��~�a�a�a� ���>�&�)���� 4��K�K����r�z�2�2�3�3�3��n�%� � � ���� ����-�-�$'� �j�o�o�j�9�9� �� � �� �� �� �� r#����exc_type�exc_val�exc_tbc�����������������������|�j��������������������������������������������D�]7\��}}|�!t����������j�����������������������������|d���������������(|t����������j��������|<����8d�S�r���)ru����itemsr>���rn����pop)r0���r|���r}���r~����varname� old_values��� r!����__exit__zBuildEnvironment.__exit__����s^�������#'�.�"6�"6�"8�"8�� 0�� 0��G�Y�� �� ���w��-�-�-�-�&/�� �7�#�#� 0�� 0r#����reqsc������������������j����t������������������������}t������������������������}|�rt����������|�d������������rt����������|�j��������������������n t ������������������������}|D�]�}t����������|������������}|j���������|j�����������������������������ddi������������s�5|���������������������|j ��������������������}|s|� ��������������������|��������������gt����������|j��������t����������������������r|j ����������d|j�����������}n|j ����������d|j�����������}|j�����������������������������|j��������d�������������s|� ��������������������||f���������������||fS�) z�Return 2 sets: - conflicting requirements: set of (installed, wanted) reqs tuples - missing requirements: set of reqs r]���N�extrar(���z==z===T)�prereleases)�setrH���r���r]���r���r����marker�evaluate�get_distributionrS����add� isinstance�versionr ���� specifier�contains) r0���r�����missing�conflicting�env�req_str�req�dist�installed_req_strs ��� r!����check_requirementsz#BuildEnvironment.check_requirements����sU�������%�%���e�e���� B���4��-�-�/����/�/�/�,�.�.�� � � �� B�� B��%�g�.�.����:�)�#�*�2E�2E�w�PR�m�2T�2T�)���+�+�C�H�5�5������K�K��(�(�(���d�l�G�4�4��G�+.�8�(E�(E�t�|�(E�(E�%�%�+.�8�(F�(F���(F�(F�%��}�-�-�d�l��-�M�M��B��O�O�%6��$@�A�A�A���G�#�#r#����finderr����requirements�prefix_as_stringrO���c����������������������|�j���������|���������}|j��������rJ��d|_��������|sd�S�|����������������������t������������������������||||��������������d�S�)NT)rO���)r[���r*����_install_requirementsrA���)r0���r����r����r����rO���r)���s��� r!����install_requirementsz%BuildEnvironment.install_requirements����so��������� 0�1���<��������� ��F��"�"��������� #�� �� �� �� �� r#����pip_runnabler)���c�����������������V����t�����������j��������|�dddd|j��������ddddg}t���������������������������������������������t ����������j��������k����r|���������������������d �������������n7t���������������������������������������������t����������k����r|���������������������d �������������dD�]h}t����������|j ��������|������������}|���������������������d|���������������������d d������������z���d� ��������������������t����������|pdh������������������������f��������������i|j��������}|rB|���������������������d|d���������g�������������|dd�����������D�]} |���������������������d| g��������������n|���������������������d�������������|j��������D�]} |���������������������d| g��������������|j��������r|���������������������d|j��������g�������������|j��������D�]}|���������������������d|g��������������|j��������r|���������������������d|j��������g�������������|j��������r|���������������������d|j��������g�������������|j��������r|���������������������d�������������|j��������r|���������������������d�������������|���������������������d�������������|���������������������|�������������t/����������d|���������������5�}t1����������|d|���|��������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) N�installz--ignore-installedz --no-userz--prefixz--no-warn-script-locationz--disable-pip-version-checkz--targetr(���z-vvz-v)� no_binary�only_binaryz--�_�-�,z:none:z-ir�������z--extra-index-urlz --no-indexz--find-linksz--proxyz--trusted-hostz--certz --client-certz--prez--prefer-binaryzInstalling zpip subprocess to install )�command_desc�spinner)�sys� executabler&����logger�getEffectiveLevel�logging�DEBUGra���r����getattr�format_controlrb����replacerR����sorted� index_urls� find_links�proxy� trusted_hosts�custom_cert�client_cert�allow_all_prereleases� prefer_binaryr���r���) r����r����r����r)���rO����argsr�����formatsr�����extra_index�link�hostr����s ��� r!���r����z&BuildEnvironment._install_requirements����sB������ �N��� ����K�'�)�� �� ����#�#�%�%���6�6��K�K������ � %� %� '� '�7� 2� 2��K�K�����:�� �� �N��f�3�^�D�D�G��K�K��>�1�1�#�s�;�;�;��H�H�V�G�$9��z�:�:�;�;�� �� �� �� ���&� ��� &��K�K��z�!�}�-�.�.�.�)�!�"�"�~�� @�� @�����0�+�>�?�?�?�?� @�� �K�K��%�%�%��%�� 0�� 0�D��K�K���.�/�/�/�/��<�� 3��K�K��F�L�1�2�2�2��(�� 2�� 2�D��K�K�)�4�0�1�1�1�1���� 8��K�K��6�#5�6�7�7�7���� ?��K�K��&�*<�=�>�>�>��'�� !��K�K�� � � ���� +��K�K�)�*�*�*����D�������L�!�!�!� �.��.�.� /� /�� �7���@�$�@�@�� �� �� �� � �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����;J�J"�%J"�r���N)r3���r4���r5����__doc__r2���r{���r���r���� BaseExceptionr���r����r���r6���r ���r ���r����r�����staticmethodr%���r����r ���r#���r!���rM���rM���P���s��������������K�K�4��4��4��4�l �� �� �� �* 0��4� �.�/� 0���-�(� 0����'� 0� � � 0�� 0�� 0�� 0� $��S�M� $� �s�5��c��?�#�S��X�-� .� $�� $�� $�� $�D �� ���s�m� ��� ��� �� � �� �� �� �*��A��A��A���s�m�A��� A��� A�� �A��A��A���\�A��A��Ar#���rM���c������������ �������������e�Zd�ZdZdd�Zdd�Zdeee������������������dee���������dee ���������ddfd �Z dd �Zddd ee ���������de de ddf d�ZdS�)�NoOpBuildEnvironmentz0A no-op drop-in replacement for BuildEnvironmentr���Nc�����������������������d�S�r���r ����r0���s��� r!���r2���zNoOpBuildEnvironment.__init__)����������r#���c�����������������������d�S�r���r ���r����s��� r!���r{���zNoOpBuildEnvironment.__enter__,��r����r#���r|���r}���r~���c�����������������������d�S�r���r ���)r0���r|���r}���r~���s��� r!���r����zNoOpBuildEnvironment.__exit__/��s ������� �r#���c�����������������������d�S�r���r ���r����s��� r!����cleanupzNoOpBuildEnvironment.cleanup7��r����r#���r����r���r����r����rO���c����������������������t�������������������������r���)�NotImplementedError)r0���r����r����r����rO���s��� r!���r����z)NoOpBuildEnvironment.install_requirements:��s�������"�#�#�#r#���r����)r3���r4���r5���r����r2���r{���r���r���r����r���r����r����r���r6���r����r ���r#���r!���r����r����&��s���������������:�:� �� �� �� � �� �� �� � ��4� �.�/� ���-�(� ����'� � � � �� �� �� � �� �� �� �$��$���s�m�$��� $��� $�� �$��$��$��$��$��$r#���r����)7r����r����r>���r8���rI���r����rh����collectionsr����typesr����typingr���r���r���r���r ���r ���r���r����pip._vendor.packaging.versionr ����pipr���r:����pip._internal.cli.spinnersr����pip._internal.locationsr���r���r����pip._internal.metadatar���r����pip._internal.utils.loggingr����pip._internal.utils.packagingr����pip._internal.utils.subprocessr����pip._internal.utils.temp_dirr���r����"pip._internal.index.package_finderr���� getLoggerr3���r����r6���r"���r%���rA���rK���rM���r����r ���r#���r!����<module>r�������s�������������� � � � ������������ � � � �������#��#��#��#��#��#��������������S��S��S��S��S��S��S��S��S��S��S��S��S��S��S��S��S��S��S��S��1��1��1��1��1��1��(��(��(��(��(��(��3��3��3��3��3��3��H��H��H��H��H��H��H��H��H��H��K��K��K��K��K��K��K��K��/��/��/��/��/��/��9��9��9��9��9��9��:��:��:��:��:��:��E��E��E��E��E��E��E��E���A�@�@�@�@�@�@� �� �8� $� $��&�c��&�c��&�e�E�#�J��c�3�h��$?�@��&��&��&��&�?��?��?��?��?��?��?��?� 5�#�� 5�� 5�� 5�� 5� =�#�c�(��=��=��=��=�(S��S��S��S��S��S��S��S�l$��$��$��$��$�+��$��$��$��$��$r#���