3 ]1@sddlmZddlZddlZddlZddlmZddlmZm Z ddl m Z ddl m Z ddlmZddlmZdd lmZmZdd lmZejeZGd d d eZdS) )absolute_importN)RequirementCommand) CommandErrorPreviousBuildDirError)RequirementSet)import_or_raise)BuildDirectory)RemovedInPip10Warning) WheelCache WheelBuilder) cmdoptionscs<eZdZdZdZdZdZfddZddZd d Z Z S) WheelCommanda Build Wheel archives for your requirements and dependencies. Wheel is a built-package format, and offers the advantage of not recompiling your software during every install. For more details, see the wheel docs: https://wheel.readthedocs.io/en/latest/ Requirements: setuptools>=0.8, and wheel. 'pip wheel' uses the bdist_wheel setuptools extension from the wheel package to build individual wheels. wheelz %prog [options] ... %prog [options] -r ... %prog [options] [-e] ... %prog [options] [-e] ... %prog [options] ...z$Build wheels from your requirements.csPtt|j|||j}|jddddtjdd|jtj|jtj |jtj |jtj |jddd d d d |jtj |jtj |jtj|jtj|jtj|jtj|jtj|jd dd d dd|jddddd|jtj|jtjtjtj|j}|jjd||jjd|dS)Nz-wz --wheel-dir wheel_dirdirzLBuild wheels into , where the default is the current working directory.)destmetavardefaulthelpz--build-option build_optionsoptionsappendz9Extra arguments to be supplied to 'setup.py bdist_wheel'.)rractionrz--global-optionglobal_optionszZExtra global options to be supplied to the setup.py call before the 'bdist_wheel' command.)rrrrz--pre store_trueFzYInclude pre-release and development versions. By default, pip only finds stable versions.)rrrr)superr __init__cmd_opts add_optionoscurdirr use_wheel no_use_wheel no_binary only_binary constraintseditable requirementssrcignore_requires_pythonno_deps build_dirno_cleanrequire_hashesmake_option_group index_groupparserinsert_option_group)selfargskwr index_opts) __class__1/tmp/pip-build-8jg9gmni/pip/pip/commands/wheel.pyr.sVzWheelCommand.__init__cCs.tdtdtdtd}t|ds*tddS)Nzwheel.bdist_wheelzM'pip wheel' requires the 'wheel' package. To fix this, run: pip install wheel pkg_resourceszp'pip wheel' requires setuptools >= 0.8 for dist-info support. To fix this, run: pip install --upgrade setuptoolsDistInfoDistribution)rrhasattr)r2r9r7r7r8check_required_packageshs z$WheelCommand.check_required_packagesc Cs|jtj|tj||jr.tjdt|jr@tjdt|j rRtjdt|j g|j }|j r|t jddj|g}|jrtjj|j|_tjj|j|_|j|}|j||}|jp|j }t|j|j}t|j|d}t||jd|jd|j|j|||j |j!d } |j"| |||||j#|| j$s6dSzZy6t%| ||j&pJg|j'pTgd } | j(slt)d Wnt*k rd|_YnXWd|js| j+XWdQRXWdQRXdS) Nz--allow-external has been deprecated and will be removed in the future. Due to changes in the repository protocol, it no longer has any effect.z--allow-all-external has been deprecated and will be removed in the future. Due to changes in the repository protocol, it no longer has any effect.z--allow-unverified has been deprecated and will be removed in the future. Due to changes in the repository protocol, it no longer has any effect.zIgnoring indexes: %s,)deleteT) r+src_dir download_dirignore_dependenciesignore_installedr)isolatedsession wheel_cachewheel_download_dirr-)rrz"Failed to build one or more wheels),r<r resolve_wheel_no_use_binarycheck_install_build_globalallow_externalwarningswarnr allow_all_externalallow_unverified index_urlextra_index_urlsno_indexloggerdebugjoinr+rpathabspathr?_build_session_build_package_finderr,r cache_dirformat_controlrrrAr) isolated_moderr-populate_requirement_setnamehas_requirementsr rrbuildrr cleanup_files) r2rr3 index_urlsrDfinder build_deleterEr+requirement_setwbr7r7r8run|sv         zWheelCommand.run) __name__ __module__ __qualname____doc__r\usagesummaryrr<re __classcell__r7r7)r6r8r s  :r ) __future__rloggingrrJpip.basecommandrpip.exceptionsrrpip.reqr pip.utilsrpip.utils.buildrZpip.utils.deprecationr pip.wheelr r pipr getLoggerrfrQr r7r7r7r8s