a
dh @ s d Z ddlZddlZddlZddlmZ ddlmZ ddlm Z m
Z
ddlmZ ddl
mZmZ ddlmZ dd lmZ dd
lmZ eeddeeddeed
ddZG dd deZdS )zm
distutils.command.upload
Implements the Distutils 'upload' subcommand (upload package to a package
index).
N)standard_b64encode) HTTPError)urlopenRequest)urlparse)DistutilsErrorDistutilsOptionError)
PyPIRCCommand)spawn)logmd5Zsha256Zblake2b)Z
md5_digestZ
sha256_digestZblake2_256_digestc @ sJ e Zd ZdZejddg Zejdg Zdd Zdd Zd d
Z dd Z
d
S )uploadzupload binary package to PyPI)signszsign files to upload using gpg)z identity=izGPG identity used to sign filesr c C s, t | d| _d| _d| _d| _d | _d S )N r F)r initialize_optionsusernamepassword
show_responser identity)self r 9/opt/imh-python/lib/python3.9/distutils/command/upload.pyr * s
zupload.initialize_optionsc C sr t | | jr| jstd| }|i krV|d | _|d | _|d | _|d | _ | jsn| j
jrn| j
j| _d S )Nz.Must use --sign for --identity to have meaningr r
repositoryrealm)r finalize_optionsr r r Z_read_pypircr r r r distribution)r Zconfigr r r r 2 s
zupload.finalize_optionsc C s: | j jsd}t|| j jD ]\}}}| ||| qd S )NzHMust create and upload files in one command (e.g. setup.py sdist upload))r Z
dist_filesr upload_file)r msgcommand pyversionfilenamer r r runD s
z
upload.runc " C s
t | j\}}}}}} |s"|s"| r0td| j |dvrDtd| | jr|ddd|g}
| jrnd| jg|
dd<