Your IP : 3.133.133.251
3
K�Re� � @ s� d dl mZ d dlmZ d dlmZ d dlZd dlZd dlmZ d dl m
Z
ddd d
gZddd�Zddd�Z
G dd � d e
�ZG dd
� d
e�ZdS )� )�convert_path)�log)�DistutilsOptionErrorN)�configparser)�Command�config_file�edit_config�option_base�setopt�localc C sh | dkrdS | dkr,t jjt jjtj�d�S | dkrZt jdkrBdpDd}t jjtd | ��S t d
| ��dS )z�Get the filename of the distutils, local, global, or per-user config
`kind` must be one of "local", "global", or "user"
r z setup.cfg�globalz
distutils.cfg�user�posix�.� z~/%spydistutils.cfgz7config_file() type must be 'local', 'global', or 'user'N)
�os�path�join�dirname� distutils�__file__�name�
expanduserr �
ValueError)�kind�dot� r ��/builddir/build/BUILDROOT/alt-python36-setuptools-38.5.2-7.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/setuptools/command/setopt.pyr s Fc C s. t jd| � tj� }|j| g� x�|j� D ]�\}}|dkrTt jd|| � |j|� q*|j|�svt jd|| � |j |� x||j� D ]p\}}|dkr�t jd||| � |j
||� |j|�s�t jd|| � |j|� q�t jd|||| � |j|||� q�W q*W t jd| � |�s*t
| d ��}|j|� W dQ R X dS )
aY Edit a configuration file to include `settings`
`settings` is a dictionary of dictionaries or ``None`` values, keyed by
command/section name. A ``None`` value means to delete the entire section,
while a dictionary lists settings to be changed or deleted in that section.
A setting of ``None`` means to delete that setting.
zReading configuration from %sNzDeleting section [%s] from %szAdding new section [%s] to %szDeleting %s.%s from %sz#Deleting empty [%s] section from %szSetting %s.%s to %r in %sz
Writing %s�w)r �debugr �RawConfigParser�read�items�info�remove_section�has_section�add_section�
remove_option�options�set�open�write) �filename�settings�dry_run�opts�sectionr( �option�value�fr r r r ! s8
c @ s2 e Zd ZdZdddgZddgZdd� Zd
d� ZdS )r z<Abstract base class for commands that mess with config files�
global-config�g�0save options to the site-wide distutils.cfg file�user-config�u�7save options to the current user's pydistutils.cfg file� filename=r3 �-configuration file to use (default=setup.cfg)c C s d | _ d | _d | _d S )N)�
global_config�user_configr, )�selfr r r �initialize_options\ s zoption_base.initialize_optionsc C sv g }| j r|jtd�� | jr,|jtd�� | jd k rB|j| j� |sT|jtd�� t|�dkrjtd|��|\| _d S )Nr r
r � z/Must specify only one configuration file option)r<