ó â\e[c@s]dZddlmZddlmZddlmZddlmZddl m Z e rddl m Z ddl mZmZmZmZmZmZmZmZeed fZeeefZeeeefZeeeefZeeeefZeeefZned d d gƒZd „Zdd „Z d„Z!d„Z"d„Z#dS(s'Validation of dependencies of packages iÿÿÿÿ(t namedtuple(tcanonicalize_name(tmake_abstract_dist(tget_installed_distributions(tMYPY_CHECK_RUNNING(tInstallRequirement(tAnytCallabletDicttIteratortOptionaltSettTupletListtPackageDetailstversiontrequirescKso|ikr#itd6dd6}ni}x?t|D]1}t|jƒ}t|j|jƒƒ||ls(Rt_simulate_installation_oft_create_whitelistR/(t to_installRtwould_be_installed((R0s=/tmp/pip-install-0xiv62/pip/pip/_internal/operations/check.pytcheck_install_conflicts\s  cCsntƒ}x^|D]V}t|ƒjddƒ}t|jƒ}t|j|jƒƒ||<|j |ƒqW|S(sBComputes the version of packages after installing to_install. tfinderN( RRRRRRRRRR#(R4Rt installedtinst_reqRR((s=/tmp/pip-install-0xiv62/pip/pip/_internal/operations/check.pyR2ts  cCsqt|ƒ}x^|D]V}||kr+qnx;||jD],}t|jƒ|kr9|j|ƒPq9q9WqW|S(N(RRRRR#(R5Rtpackages_affectedR*R-((s=/tmp/pip-install-0xiv62/pip/pip/_internal/operations/check.pyR3‡s     N($t__doc__t collectionsRtpip._vendor.packaging.utilsRt pip._internal.operations.prepareRtpip._internal.utils.miscRtpip._internal.utils.typingRtpip._internal.req.req_installRttypingRRRR R R R R R't PackageSettMissingt Conflictingt MissingDicttConflictingDictt CheckResultRRRR/R6R2R3(((s=/tmp/pip-install-0xiv62/pip/pip/_internal/operations/check.pyts(:  /