관리-도구
편집 파일: setupcfg.cpython-311.pyc
� ,�Renb � � � d Z ddlZddlZddlZddlZddlmZ ddlmZ ddlmZ ddl m Z mZmZm Z mZmZmZmZmZmZmZ ddlmZmZ ddlmZmZ dd lmZmZ dd lmZ ddl m!Z! dd l"m#Z# e rddl$m%Z% ddl&m'Z' ee(ej) f Z*e dedef f Z+ e de+f Z, eded �� � Z- d4de*de.fd�Z/ddde*ddfd�Z0 d5ddde*dee* de1ded f d�Z2d e-d!e(fd"�Z3d#ed de.fd$�Z4 d6d%dd&e,ded' fd(�Z5d)e(d*e(d+e6fd,�Z7 G d-� d.ee- � � Z8 G d/� d0e8d1 � � Z9 G d2� d3e8d � � Z:dS )7ze Load setuptools configuration from ``setup.cfg`` files. **API will be made private in the future** � N)�defaultdict)�partial��wraps)� TYPE_CHECKING�Callable�Any�Dict�Generic�Iterable�List�Optional�Tuple�TypeVar�Union)�DistutilsOptionError�DistutilsFileError)�Requirement�InvalidRequirement)�Version�InvalidVersion)�SpecifierSet)�SetuptoolsDeprecationWarning� )�expand��Distribution)�DistributionMetadata�str�Target)r r )�boundF�filepath�returnc � � ddl m} |� � }|r|� � � ng }t || ||� � }t |� � S )a, Read given configuration file and returns options from it as a dict. :param str|unicode filepath: Path to configuration file to get options from. :param bool find_others: Whether to search for other configuration files which could be on in various places. :param bool ignore_option_errors: Whether to silently ignore options, values of which could not be resolved (e.g. due to exceptions in directives such as file:, attr:, etc.). If False exceptions are propagated as expected. :rtype: dict r r )�setuptools.distr �find_config_files�_apply�configuration_to_dict)r"