§
    !@Äj@  ã                   ó¶   — 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Zd dlm	Z	 d dl
mZ d dlmZ g d	¢Zdd„Zdd„Z G d„ de¦  «        Z G d„ de¦  «        ZdS )é    N)ÚClassVaré   )ÚCommand)Ú_cfg_read_utf8_with_fallback)Úlog)ÚDistutilsOptionError)Úconvert_path)Úconfig_fileÚedit_configÚoption_baseÚsetoptÚlocalc                 ó`  — | dk    rdS | dk    rGt           j                             t           j                             t          j        ¦  «        d¦  «        S | dk    rDt           j        dk    rdpd}t           j                             t          d	|› d
�¦  «        ¦  «        S t          d| ¦  «        ‚)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~/zpydistutils.cfgz7config_file() type must be 'local', 'global', or 'user')
ÚosÚpathÚjoinÚdirnameÚ	distutilsÚ__file__ÚnameÚ
expanduserr	   Ú
ValueError)ÚkindÚdots     úJC:\Projects\Historical\venv\Lib\site-packages\setuptools/command/setopt.pyr
   r
      sŸ   € ð
 ˆw‚€Øˆ{ØˆxÒÐÝŒw�|Š|�BœGŸOšO­IÔ,>Ñ?Ô?ÀÑQÔQÐQØˆv‚~€~ÝŒg˜Ò Ð( SÐ.¨BˆÝŒw×!Ò!¥,Ð/H°CÐ/HÐ/HÐ/HÑ"IÔ"IÑJÔJÐJÝ
ÐNÐPTÑ
UÔ
UÐUó    Úreturnc           	      ó¶  — t          j        d| ¦  «         t          j        ¦   «         }d„ |_        t          || ¦  «         |                     ¦   «         D �]-\  }}|€,t          j        d|| ¦  «         |                     |¦  «         Œ4| 	                    |¦  «        s+t          j        d|| ¦  «         | 
                    |¦  «         |                     ¦   «         D ]¤\  }}|€nt          j        d||| ¦  «         |                     ||¦  «         |                     |¦  «        s+t          j        d|| ¦  «         |                     |¦  «         Œut          j        d|||| ¦  «         |                     |||¦  «         Œ¥�Œ/t          j        d	| ¦  «         t          | d
d¬¦  «        5 }|                     |¦  «         ddd¦  «         dS # 1 swxY w Y   dS )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.
    zReading configuration from %sc                 ó   — | S ©N© )Ú	optionstrs    r    ú<lambda>zedit_config.<locals>.<lambda>)   s   € ¨€ r!   NzDeleting section [%s] from %szAdding new section [%s] to %szDeleting %s.%s from %sz#Deleting empty [%s] section from %szSetting %s.%s to %r in %sz
Writing %sÚwzutf-8)Úencoding)r   ÚdebugÚconfigparserÚRawConfigParserÚoptionxformr   ÚitemsÚinfoÚremove_sectionÚhas_sectionÚadd_sectionÚremove_optionÚoptionsÚsetÚopenÚwrite)ÚfilenameÚsettingsÚoptsÚsectionr5   ÚoptionÚvalueÚfs           r    r   r      s9  € õ „IÐ-¨xÑ8Ô8Ð8ÝÔ'Ñ)Ô)€DØ2Ð2€DÔÝ   xÑ0Ô0Ð0à$ŸNšNÑ,Ô,ð 5ñ 5Ñˆ�Øˆ?ÝŒHÐ4°g¸xÑHÔHÐHØ×Ò Ñ(Ô(Ð(Ð(à×#Ò# GÑ,Ô,ð *Ý”	Ð9¸7ÀHÑMÔMÐMØ× Ò  Ñ)Ô)Ð)Ø!(§¢¡¤ð 5ð 5‘�˜Ø�=Ý”IÐ6¸ÀÈÑRÔRÐRØ×&Ò& w°Ñ7Ô7Ð7ØŸ<š<¨Ñ0Ô0ð 5ÝœØAÀ7ÈHñô ð ð ×+Ò+¨GÑ4Ô4Ð4øå”IØ3°W¸fÀeÈXñô ð ð —H’H˜W f¨eÑ4Ô4Ð4Ð4ñ5õ „Hˆ\˜8Ñ$Ô$Ð$Ý	ˆh˜ gÐ	.Ñ	.Ô	.ð °!Ø�
Š
�1‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Æ+GÇGÇGc                   ó²   — e Zd ZU dZg d¢Zeeeeeef                  eeeedz  ef                  z           e	d<   ddgZ
eee                  e	d<   d„ Zdd
„ZdS )r   z<Abstract base class for commands that mess with config files))úglobal-configÚgz0save options to the site-wide distutils.cfg file)úuser-configÚuz7save options to the current user's pydistutils.cfg file)z	filename=r?   z-configuration file to use (default=setup.cfg)NÚuser_optionsrA   rC   Úboolean_optionsc                 ó0   — d | _         d | _        d | _        d S r%   )Úglobal_configÚuser_configr9   ©Úselfs    r    Úinitialize_optionszoption_base.initialize_optionsX   s   € Ø!ˆÔØˆÔØˆŒˆˆr!   r"   c                 ó�  — g }| j         r"|                     t          d¦  «        ¦  «         | j        r"|                     t          d¦  «        ¦  «         | j        �|                     | j        ¦  «         |s"|                     t          d¦  «        ¦  «         t          |¦  «        dk    rt          d|¦  «        ‚|\  | _        d S )Nr   r   r   é   z/Must specify only one configuration file option)rH   Úappendr
   rI   r9   Úlenr   )rK   Ú	filenamess     r    Úfinalize_optionszoption_base.finalize_options]   sÏ   € Øˆ	ØÔð 	4Ø×Ò�[¨Ñ2Ô2Ñ3Ô3Ð3ØÔð 	2Ø×Ò�[¨Ñ0Ô0Ñ1Ô1Ð1ØŒ=Ð$Ø×Ò˜Tœ]Ñ+Ô+Ð+Øð 	3Ø×Ò�[¨Ñ1Ô1Ñ2Ô2Ð2Ýˆy‰>Œ>˜AÒÐÝ&ØAÀ9ñô ð ð %ÑˆŒˆˆr!   ©r"   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__rE   r   ÚlistÚtupleÚstrÚ__annotations__rF   rL   rR   r&   r!   r    r   r   H   s¿   € € € € € € ØFÐFð	ð 	ð 	ð �(ØˆU�3˜˜S�=Ô!Ô" T¨%°°S¸4±ZÀÐ0DÔ*EÔ%FÑFôð ð ñ ð 	Øð,€O�X˜d 3œiÔ(ð ð ñ ð
ð ð ð
%ð %ð %ð %ð %ð %r!   r   c                   óZ   — e Zd ZdZdZg d¢ej        z   Zej        dgz   Zd„ Zd
d„Z	d
d	„Z
dS )r   z#Save command-line options to a filez1set an option in setup.cfg or another config file))zcommand=Úczcommand to set an option for)zoption=Úozoption to set)z
set-value=Úszvalue of the option)ÚremoveÚrzremove (unset) the valuer`   c                 ór   — t                                | ¦  «         d | _        d | _        d | _        d | _        d S r%   )r   rL   Úcommandr=   Ú	set_valuer`   rJ   s    r    rL   zsetopt.initialize_options|   s6   € Ý×&Ò& tÑ,Ô,Ð,ØˆŒØˆŒØˆŒØˆŒˆˆr!   r"   Nc                 ó²   — t                                | ¦  «         | j        �| j        €t	          d¦  «        ‚| j        €| j        st	          d¦  «        ‚d S d S )Nz%Must specify --command *and* --optionz$Must specify --set-value or --remove)r   rR   rc   r=   r   rd   r`   rJ   s    r    rR   zsetopt.finalize_optionsƒ   s`   € Ý×$Ò$ TÑ*Ô*Ð*ØŒ<Ð 4¤;Ð#6Ý&Ð'NÑOÔOÐOØŒ>Ð!¨$¬+Ð!Ý&Ð'MÑNÔNÐNð "Ð!Ð!Ð!r!   c                 ó~   — t          | j        | j        | j                             dd¦  «        | j        ii¦  «         d S )Nú-Ú_)r   r9   rc   r=   Úreplacerd   rJ   s    r    Úrunz
setopt.runŠ   sF   € ÝØŒMØŒ\˜DœK×/Ò/°°SÑ9Ô9¸4¼>ÐJÐKñ	
ô 	
ð 	
ð 	
ð 	
r!   rS   )rT   rU   rV   rW   Údescriptionr   rE   rF   rL   rR   rj   r&   r!   r    r   r   n   s‰   € € € € € Ø-Ð-àE€Kðð ð ð
 	Ô ñ!€Lð "Ô1°X°JÑ>€Oðð ð ðOð Oð Oð Oð
ð 
ð 
ð 
ð 
ð 
r!   r   )r   rS   )r,   r   Útypingr   r   r   Úunicode_utilsr   r   r   Údistutils.errorsr   Údistutils.utilr	   Ú__all__r
   r   r   r   r&   r!   r    ú<module>rq      s)  ðØ Ð Ð Ð Ø 	€	€	€	Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8à Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'à
AÐ
AÐ
A€ðVð Vð Vð Vð&ð &ð &ð &ðR#%ð #%ð #%ð #%ð #%�'ñ #%ô #%ð #%ðL 
ð  
ð  
ð  
ð  
ˆ[ñ  
ô  
ð  
ð  
ð  
r!   