�
�Wc� c s� � d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZm Z d dl
mZ d dlm
Z
mZ d dlmZ d dlmZ d d lmZ eed
d� eedd� eedd� d
�Z G d� de� ZdS )� N)�standard_b64encode)� HTTPError)�urlopen�Request)�urlparse)�DistutilsError�DistutilsOptionError)�
PyPIRCCommand)�spawn)�logZmd5Zsha256Zblake2b)Z
md5_digestZ
sha256_digestZblake2_256_digestc sl � e Zd ZdZej
ddgz Zej dgz Zd� Zd� Zd� Z d� Z
d S )
�uploadzupload binary package to PyPI)�signZszsign files to upload using gpg)z identity=ZizGPG identity used to sign filesr c sz � t j | � d| _ d| _ d| _ d| _ d | _ d S )N� r F)r �initialize_options�username�password�
show_responser �identity)�selfs �1/usr/lib64/python3.12/distutils/command/upload.pyr zupload.initialize_options* s; � ��(�(��.�.���
���
������ ���
�
�
� c s� � t j | � | j r| j s
t d� �| j � }|i k r4|d | _ |d | _ |d | _ |d | _ | j s5| j j r| j j | _ d S d S d S )Nz.Must use --sign for --identity to have meaningr r �
repository�realm)r �finalize_optionsr r r Z_read_pypircr r r r �distribution)r Zconfigs r r zupload.finalize_options2 s� � ��&�&�t�,�,��=�=�=�����&�@��
� �"�"�$���R�<�<�"�:�.�D�M�"�:�.�D�M�$�\�2�D�O����D�J� �}�}�}��!2�!2�!;�!;�!;� �-�-�6�6�D�M�M�M� "<�!;�}�}r c s� � | j j sd}t |� �| j j D ] \ }}}| j |||� �d S )NzHMust create and upload files in one command (e.g. setup.py sdist upload))r Z
dist_filesr �upload_file)r �msg�command� pyversion�filenames r �runz
upload.runD sj � �� � �+�+�+�2�C�&�s�+�+�,0�,=�,=�,H�,H� ;� ;�(�G�Y�����W�i��:�:�:� ;� ;r c s^ � t | j � \ }}}}}} |s|s| rt d| j z � �|dvrt d|z � �| j r<ddd|g}
| j rd| j g|
dd t |
| j � � t |d
� } |j � }|j � | j j }
i dd�d
d�d|
j � �d|
j � �dt j j! |� |f�d|�d|�dd�d|
j# � �d|
j% � �d|
j'