可移动的Python虚拟环境
项目描述
受ian bicking的virtualenv启发但以可以在文件系统中自由移动、重命名、备份等的方式创建的包。
第二个很好的功能是,您可以通过{{ENV}}/pythonrc.py以任何您想要的方式自定义Python环境。
与python3,pypy兼容
安装
您可以从PyPI安装此包
pip install RVirtualEnv # or easy_install RVirtualEnv # or just clone this repository git clone http://github.com/kvbik/rvirtualenv
您绝对应该尝试开发版本
要创建新的虚拟环境,只需调用
rvirtualenv ~/PYENV1 # or directly from this repo ./rvirtualenv.py ~/PYENV2
用法
要启用环境,执行
# on unix export PYTHONPATH=~/PYENV1:$PYTHONPATH # on windows set PYTHONPATH=c:\PYENV1;%PYTHONPATH%
之后,您可以通过任何Python命令(例如:pip或easy_install、ipython等)访问您的虚拟环境。
如果您不想与环境纠缠,只需调用我们的包装器
# on unix ~/PYENV1/bin/python [any [params]] # on win c:\PYENV1\bin\python.bat [any [params]]
它应该与mod-wsgi python-path选项兼容,并且您可以在运行时通过site.addsitedir(venv_directory)启用它。
测试
如果您对测试此包感兴趣,它应该支持许多标准的测试运行方式。nose用于测试发现。
您可以运行以下任何命令
python setup.py test
nosetests
./tests/test_all.py
该包已在以下环境中测试
archlinux,Python 3.2
archlinux,Python 2.7
macosx 10.6,Python 2.6
Windows,Python 2.6
ubuntu 10.04,Python 2.6
debian lenny,Python 2.5
debian etch,Python 2.4
但目前还没有构建环境。
原因
此包出现的主要原因
它不会复制 Python 二进制文件
它不会创建核心 Python 库的符号链接
您只需设置 PYTHONPATH 环境变量,就可以使用任何系统级命令(例如:easy_install、pip)
您可以以任何好奇的方式调整 pythonrc.py 文件以满足您的需求(用于调试/测试)
待办事项
您可以使用 问题追踪器 了解更多(或在此仓库的 TODO.rst 中),但一些长期目标如下
测试构建和安装一些 C 扩展
测试安装工具(pip、easy_install 和其他工具)
改进虚拟环境继承(并处理更多在 pythonpath 中定义的虚拟环境)
开发
变更日志
0.3.x
也称为分支 releases/rvirtualenv-0.3
0.3.2
抱歉,此版本在 Windows 的交互模式下无法正常工作,我们将尽力解决 bill 的问题
将 python.py 中的子进程调用替换为 os.execvp,这意味着更少的进程创建,当通过我们的 python 包装器调用时,gunicorn 通过 supervisor 应该可以工作(有关更多信息,请参阅 问题 #2)
系统全局安装的 rvirtualenv 可以正常工作并正确创建虚拟环境 - 对于非特权用户存在只读文件系统的问题
在 上传到 pypi 之前清理仓库,因此它应该是可安装的(没有来自构建环境的任何注释 - 例如 问题 #1 中的 #!/usr/bin/python2)
用 plain MANIFEST.in 替换了 setuptools_dummy
0.3.1
实现了与命令行虚拟环境兼容的选项(--no-site-packages、--python、--prompt)
pythonrc 没有site包选项
非 Python 数据安装到 Python 包中(修复了 0.3.0 中引入的错误)
0.3.0
支持 python3 - 它确实可以工作,测试正在通过
支持 virtualenv 包装器(通过:source PY/bin/activate)
继承一个虚拟环境到另一个
bin/activate 可以工作,在 Windows 上也可以,并且是可移动的
venv 的完全重写
自定义安装命令,以便您可以定义自己的布局
在 macos 和 ubuntu 上的适当功能
0.2.x
也称为分支 releases/rvirtualenv-0.2
将扩展安装到虚拟环境中的功能正常工作
尚未发布,但已合并到 0.3
0.2.3
修复了创建虚拟环境时与相对路径相关的问题
与 pip 和卸载系统包(sys.real_prefix)的更多兼容性
使用 distribute(也称为 setuptools 分支)测试通过
0.2.2
初始版本(<=0.2.2)
项目详情
RVirtualEnv-0.3.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1c14a198fe0d5812b1c640dab24f5abd2c8be68d4f11e3bb6cb8332814bc0a68 |
|
MD5 | 4593c0dc72a45702dc0a24555eacad76 |
|
BLAKE2b-256 | 6231af64e87d1be179ef720cb548b52597da9e757996d37a9ba5d8030d7e5e61 |