관리-도구
편집 파일: wheel_builder.cpython-38.pyc
U &?�f. � @ sV d Z ddlZddlZddlZddlZddlmZmZm Z m Z ddlmZm Z ddlmZmZ ddlmZ ddlmZmZ ddlmZmZ dd lmZ dd lmZ ddlmZ ddlm Z dd l!m"Z" ddl#m$Z$ ddl%m&Z& ddl'm(Z(m)Z) ddl*m+Z+ ddl,m-Z- ddl.m/Z/ ddl0m1Z1 ddl2m3Z3 e�4e5�Z6e�7dej8�Z9e ee$ ee$ f Z:e;e<d�dd�Z=e$e<e<d�dd�Z>e$e<d�dd�Z?e$e<d�d d!�Z@e$e e< d�d"d#�ZAe$ee;d$�d%d&�ZBe$e;dd'�d(d)�ZCe$e;e<ee; ee; e<e e; d*�d+d,�ZDe$e;ee; ee; e<e e; d-�d.d/�ZEe$ee; e<d0�d1d2�ZFee$ ee<ee; ee; e:d3�d4d5�ZGdS )6z;Orchestrator for building wheels from InstallRequirements. � N)�Iterable�List�Optional�Tuple)�canonicalize_name�canonicalize_version)�InvalidVersion�Version)� WheelCache)�InvalidWheelFilename�UnsupportedWheel)�FilesystemWheel�get_wheel_distribution)�Link)�Wheel)�build_wheel_pep517)�build_wheel_editable)�build_wheel_legacy)�InstallRequirement)� indent_log)� ensure_dir� hash_file)�make_setuptools_clean_args)�call_subprocess)� TempDirectory)�path_to_url)�vcsz([a-z0-9_.]+)-([a-z0-9_.!+-]+))�s�returnc C s t t�| ��S )zjDetermine whether the string looks like an egg_info. :param s: The string to parse. E.g. foo-2.1 )�bool�_egg_info_re�search)r � r"