Viewing File: /opt/alt/python38/lib/python3.8/site-packages/setuptools/__pycache__/wheel.cpython-38.pyc

U

+a` @sdZddlmZddlmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlm
Z
ddlmZddlmZddlmZe	d	e	jjZd
ZddZGd
ddZdS)zWheels support.)get_platform)logN)
parse_version)sys_tags)canonicalize_name)write_requirementsz^(?P<project_name>.+?)-(?P<version>\d.*?)
    ((-(?P<build>\d.*?))?-(?P<py_version>.+?)-(?P<abi>.+?)-(?P<platform>.+?)
    )\.whl$z8__import__('pkg_resources').declare_namespace(__name__)
cCst|D]\}}}tj||}|D].}tj||}tj|||}t||q&ttt|D]D\}	}
tj||
}tj|||
}tj	|sft||||	=qfq
tj|ddD]\}}}|rt
t|qdS)zDMove everything under `src_dir` to `dst_dir`, and delete the former.T)topdownN)oswalkpathrelpathjoinrenamesreversedlist	enumerateexistsAssertionErrorrmdir)src_dirZdst_dirdirpathdirnames	filenamessubdirfsrcdstndr8/tmp/pip-install-1bd_1mtk/setuptools/setuptools/wheel.pyunpacks
r!c@sheZdZddZddZddZddZd	d
ZddZd
dZ	e
ddZe
ddZe
ddZ
dS)WheelcCsPttj|}|dkr$td|||_|D]\}}t|||q6dS)Nzinvalid wheel name: %r)	
WHEEL_NAMEr	rbasename
ValueErrorfilename	groupdictitemssetattr)selfr&matchkvrrr __init__6szWheel.__init__cCs&t|jd|jd|jdS)z>List tags (py_version, abi, platform) supported by this wheel..)	itertoolsproduct
py_versionsplitabiplatformr*rrr tags>s



z
Wheel.tagscs0tddtDtfdd|DdS)z5Is the wheel is compatible with the current platform?css|]}|j|j|jfVqdSN)Zinterpreterr4r5.0trrr 	<genexpr>Hsz&Wheel.is_compatible.<locals>.<genexpr>c3s|]}|krdVqdS)TNrr9supported_tagsrr r<JsF)setrnextr7r6rr=r 
is_compatibleFszWheel.is_compatiblecCs,tj|j|j|jdkrdntddS)Nany)project_nameversionr5z.egg)
pkg_resourcesDistributionrCrDr5regg_namer6rrr rGLszWheel.egg_namecCsJ|D]4}t|}|drt|t|jr|SqtddS)Nz
.dist-infoz.unsupported wheel format. .dist-info not found)namelist	posixpathdirnameendswithr
startswithrCr%)r*zfmemberrJrrr 
get_dist_infoRs


zWheel.get_dist_infoc	Cs(t|j}|||W5QRXdS)z"Install wheel as an egg directory.N)zipfileZipFiler&_install_as_egg)r*destination_eggdirrMrrr install_as_egg\szWheel.install_as_eggcCs\d|j|jf}||}d|}tj|d}|||||||||||dS)Nz%s-%sz%s.dataEGG-INFO)	rCrDrOr	rr
_convert_metadata_move_data_entries_fix_namespace_packages)r*rSrMZ
dist_basename	dist_info	dist_dataegg_inforrr rRas
zWheel._install_as_eggc	sLfdd}|d}t|d}td|ko>tdkn}|sTtd|t||tj|tj	j
|t|dd	d
tt
tfddjD}t|ttj|d
tj|dtj	t|dd}	tjj}
ttjz t|	ddtj|dW5t|
XdS)Nc
sHt|,}|d}tj|W5QRSQRXdS)Nzutf-8)	openrIr
readdecodeemailparserParserparsestr)namefpvalue)rYrMrr get_metadatamsz-Wheel._convert_metadata.<locals>.get_metadataWHEELz
Wheel-Versionz1.0z2.0dev0z$unsupported wheel format version: %s)metadatacSsd|_t|Sr8)markerstr)reqrrr raw_reqsz(Wheel._convert_metadata.<locals>.raw_reqc
s2i|]*}|tfddt|fDqS)c3s|]}|kr|VqdSr8r)r:rk)install_requiresrr r<sz5Wheel._convert_metadata.<locals>.<dictcomp>.<genexpr>)sortedmaprequires)r:extra)distrmrlrr 
<dictcomp>s
z+Wheel._convert_metadata.<locals>.<dictcomp>METADATAzPKG-INFO)rmextras_require)attrsr[zrequires.txt)rgetr%r	mkdir
extractallrr
rErF
from_locationPathMetadatarrnrorpextrasrename
setuptoolsdictr_global_log	threshold
set_thresholdWARNrget_command_obj)rMrSrYr[rfZwheel_metadata
wheel_versionZwheel_v1ruZ
setup_distZ
log_thresholdr)rrrYrmrlrMr rVksT


zWheel._convert_metadatacstj|tjd}tj|rtj|dd}t|t|D]D}|drpttj||qLttj||tj||qLt	|t
tjjfdddDD]}t||qtjrt	dS)z,Move data entries to their correct location.scriptsrUz.pycc3s|]}tj|VqdSr8)r	rr
)r:rrZrr r<sz+Wheel._move_data_entries.<locals>.<genexpr>)dataheaderspurelibplatlibN)r	rr
rrxlistdirrKunlinkr}rfilterr!)rSrZZdist_data_scriptsZegg_info_scriptsentryrrrr rWs.


zWheel._move_data_entriesc
Cstj|d}tj|rt|}|}W5QRX|D]l}tjj|f|d}tj|d}tj|s~t|tj|s>t|d}|t	W5QRXq>dS)Nznamespace_packages.txtr/z__init__.pyw)
r	rr
rr\r]r3rxwriteNAMESPACE_PACKAGE_INIT)r[rSZnamespace_packagesrdmodZmod_dirZmod_initrrr rXs

zWheel._fix_namespace_packagesN)__name__
__module____qualname__r.r7rArGrOrTrRstaticmethodrVrWrXrrrr r"4s


?
r")__doc__distutils.utilr	distutilsrr_r0r	rIrerPrEr~rZ setuptools.extern.packaging.tagsrZ!setuptools.extern.packaging.utilsrZsetuptools.command.egg_inforcompileVERBOSEr+r#rr!r"rrrr <module>s,
Back to Directory File Manager