virtualenv、pip和wheel的包装器
mkvenv的Python项目详细描述
一种用于virtualenv、pip和wheel的包装器,用于缓存轮子以加快速度 创建Virtualenv。
功能:
- 创建并维护控制盘缓存。
- 创建一个virtualenv并在 单一命令。
- 在生成新包时添加到控制盘缓存。
- 尚未安装时下载virtualenv源代码 或者过时了。
注意,这个包应该被认为是α/不稳定的!
要求
- python 2.7版
- 类Unix系统(即,不是Windows)
示例
创建轮子缓存(默认为~/.mkvenv):
% mkvenv init % mkvenv list-wheels # Wheels in /Users/nhoffman/.mkvenv/2.7.7/
现在创建一个名为test-env的新virtualenv并安装一些 包装。在安装每个包时,首先构建一个轮子,然后 保存到缓存中,以及任何依赖项的控制盘:
% cat requirements.txt flake8 % mkvenv install --venv test-env -r requirements.txt % test-env/bin/pip freeze flake8==2.3.0 mccabe==0.3 pep8==1.5.7 pyflakes==0.8.1 wsgiref==0.1.2 % mkvenv list-wheels # Wheels in /Users/nhoffman/.mkvenv/2.7.7/ = flake8-2.3.0-py2.py3-none-any.whl mccabe-0.3-py2.py3-none-any.whl pep8-1.5.7-py2.py3-none-any.whl pyflakes-0.8.1-py2.py3-none-any.whl
安装这些软件包的后续请求将使用 缓存的轮子。
从轮子缓存中安装可以大大加快速度 软件包需要编译:
% cat scientific.txt numpy scipy pandas biopython seqmagick % mkvenv install --venv sci-env -r scientific.txt 620.66s user 36.41s system 75% cpu 14:28.52 total % mkvenv install --venv another-env -r scientific.txt 10.87s user 4.82s system 18% cpu 1:24.65 total
安装
使用pip从pypi最容易执行安装:
pip install mkvenv
或者,从pypi中获取源代码 (https://pypi.python.org/pypi/mkvenv)或github (https://github.com/nhoffman/mkvenv)并通过运行 python setup.py install或pip install .来自 包目录。安装程序提供名为mkvenvas的脚本 一个入口。mkvenv.py也可以直接从 包目录的顶层。
或者,请注意mkvenv脚本是作为单个 可以直接作为脚本调用的python文件。这个脚本可以 被下载并用于在 virtualenv包不可用:
wget https://raw.githubusercontent.com/nhoffman/mkvenv/master/mkvenv/mkvenv.py python mkvenv.py
将mkvenv.py与其他 促进创建执行环境的项目。
执行
运行mkvenv -h获取子命令和公共选项列表,或 mkvenv <subcommand> -h获取子命令的帮助。注意常见的 必须在子命令的名称之前提供选项 (例如,mkvenv -v wheelstreet -r requirements.txt)
已知错误
在OSX上使用Python2.7的PIP中有一个已知的错误 (https://github.com/pypa/pip/issues/1964-问题不是特定的 (指向此项目)导致从pypi安装时出错 带有消息“assertionerror:multiple.dist info directories” 在上次安装之后。解决方法是删除任何剩余的 PIP生成目录:
find /private -name 'mkvenv' -exec rm -r "{}" \; 2> /dev/null