项目摘要¶
在python安装和打包空间中,总结和链接最相关的项目。
Pypa项目¶
bandersnatch¶
Mailing list 2 | Issues | Github | PyPI |开发IRC:Bandersnatch
Bandersnatch是一个PYPI镜像客户端,旨在有效地创建PYPI内容的完整镜像。
distlib¶
Docs | Mailing list 2 | Issues | Bitbucket | PyPI
distlib是一个实现与Python软件的打包和分发相关的低级功能的库。它包含来自 distutils2 计划发布为 packaging
在python 3.3stdlib中,但在python3.3进入beta测试之前不久就被删除了。
打包¶
Docs | Dev list | Issues | Github | PyPI |用户IRC:Pypa Dev IRC:Pypa Dev
用于python打包的核心实用程序 pip 和 setuptools .
pip¶
Docs | User list 1 | Dev list | Issues | Github | PyPI |用户IRC:Pypa Dev IRC:Pypa Dev
用于安装python包的工具。
Pipenv¶
Pipenv是一个旨在将所有最好的打包世界带给Python世界的项目。IT线束 Pipfile , pip 和 virtualenv 变成一个单独的工具链。它的终端颜色非常漂亮。
setuptools¶
Docs | User list 2 | Dev list | Issues | GitHub | PyPI |用户IRC:Pypa Dev IRC:Pypa Dev
设置工具(包括 easy_install
)是对python distuils的一组增强功能,允许您更轻松地构建和分发python分发版,特别是那些依赖于其他包的分发版。
distribute 是SETUPTOOLS的一个分支,它被合并回SETUPTOOLS(在v0.7中),从而使SETUPTOOLS成为Python打包的主要选择。
virtualenv¶
Docs | User list | Dev list | Issues | Github | PyPI |用户IRC:Pypa Dev IRC:Pypa Dev
用于创建独立的Python环境的工具。
Warehouse¶
Docs | Mailing list 2 | Issues | Github |设备IRC:Pypa设备
当前为 Python Package Index (PyPI) . 它在 pypi.org .
wheel¶
Docs | Mailing list 2 | Issues | Github | PyPI |用户IRC:Pypa Dev IRC:Pypa Dev
车轮项目主要提供 bdist_wheel
setuptools 用于创建的扩展 wheel distributions . 此外,它还提供了自己的命令行实用程序来创建和安装轮子。
非Pypa项目¶
bento¶
Docs | Mailing list | Issues | Github | PyPI
Bento是一个针对Python软件的打包工具解决方案,目标是替代distuils、setuptools、distribute等。Bento的哲学是再现性、可扩展性和简单性(按顺序)。
buildout¶
Docs | Mailing list 2 | Issues | PyPI | IRC:扩建
buildout是一个基于python的构建系统,用于从多个部分创建、组装和部署应用程序,其中一些部分可能不是基于python的。它允许您创建一个构建配置,稍后再复制相同的软件。
conda¶
Conda是用于 Anaconda python安装。 Python 是一种分布在 Anaconda, Inc 专门针对科学界,尤其是在安装二进制扩展通常很困难的Windows上。
Conda是一个完全独立的PIP、virtualenv和wheel工具,但在包管理、虚拟环境管理和二进制扩展部署方面提供了它们的许多组合功能。
Conda不安装Pypi的软件包,只能从官方的Anaconda存储库或Anaconda.org(用户贡献的地方)安装。 康达 软件包)或本地(如Intranet)软件包服务器。但是,请注意,可以将PIP安装到中,并与Conda并排工作,以管理来自PYPI的分发。
devpi¶
Docs | Mailing List | Issues | PyPI
devpi具有一个功能强大的与pypi兼容的服务器和pypi代理缓存,以及一个免费的命令行工具,用于驱动python的打包、测试和发布活动。
flit¶
flit是在pypi上放置python包和模块的简单方法。flit一次打包一个可导入的模块或包,在pypi上使用导入名称作为名称。包中的所有子包和数据文件都会自动包含在内。flit需要python 3,但是您可以使用它为python 2分发模块,只要它们可以导入python3。
enscons¶
enscons是一个基于 SCons . 它不使用distuils或setuptools(包括带有C扩展的发行版)构建与PIP兼容的源发行版和轮子。与distuils相比,enscons有不同的架构和哲学。enscons没有向Python打包系统添加构建特性,而是将Python打包添加到通用的构建系统中。enscons帮助您构建可以由pip自动构建的sdist,以及独立于enscons的轮子。
Hashdist¶
hashdist是一个用于构建非根软件分发的库。hashdist试图成为“Debian技术不起作用的情况下的Debian选择”。对于pythonistas来说,思考hashdist的最好方法可能是将virtualenv和buildout结合在一起。
pex¶
PEX既是一个库,也是生成 .pex
(python可执行文件)文件,独立的python环境,本着 virtualenv . .pex
文件只是精心构建的zip文件 #!/usr/bin/env python
和特殊的 __main__.py
,并旨在使部署Python应用程序的过程简单到 cp
.
scikit-build¶
Docs | Mailing list | Github | PyPI
SCIKIT构建是一个改进的构建系统生成器,用于Cpththon C/C++/Fortran/Cython扩展,与 setuptools , wheel 和 pip . 内部使用 cmake (在PYPI上可用)为其他编译器、构建系统、交叉编译和定位依赖项及其相关的构建需求提供更好的支持。为了加速和并行化大型项目的构建,用户可以安装 ninja (也可在PYPI上获得)。
shiv¶
SHIV是一个命令行实用程序,用于构建完全独立的python zippapps,如PEP 441中所述,但包含了它们的所有依赖项。它的主要目标是使分发python应用程序和命令行工具快速而简单。