跳转到主要内容

将conda包压制成wheel

项目描述

conda-press

将conda包压制成wheel。

conda-press创建的wheel可以在一般的Python环境中使用,即在conda管理环境之外。

快速开始

运行conda press命令并指向一个工件文件或规范。例如

# from artifact spec, produces single wheel, including all non-Python requirements
$ conda press --subdir linux-64 --skip-python --fatten scikit-image=0.15.0=py37hb3f55d8_2

# from artifact file, produces a single wheel
$ conda press numpy-1.14.6-py36he5ce36f_1201.tar.bz2

# from artifact spec, produces wheels for package and all requirements
$ conda press --subdir linux-64 xz=5.2.4=h14c3975_1001

# merge many wheels into a single wheel
$ conda press --merge *.whl --output scikit_image-0.15.0-2_py37hb3f55d8-cp37-cp37m-linux_x86_64.whl

我们要解决的问题

conda-press允许我们构建一个pip可用的包索引,它与conda包具有ABI兼容性。这可以帮助解决以下问题/工作流程

问题1

对于具有C扩展的包,构建wheel可能非常困难。具有C扩展的wheel的来源也可能难以知晓(谁构建的,如何构建的等)。conda-press使社区能够基于conda-forge提供的包构建wheel。这应该使构建有效的wheel变得非常简单。

问题2

许多具有编译扩展的包在一个或多个流行的平台上(Windows、Mac、Linux)上没有wheel可用。这是因为构建wheel可能非常困难。conda有很多包在其他情况下无法作为wheel提供。conda-press允许这些包轻松地成为通用的wheel。

问题3:有些人想要基于比manylinux<N>更新的ABIs构建的包索引

如何安装

从conda

conda install -c conda-forge conda-press

从源代码

$ pip install --no-deps .

关于我们所做之事的更多技术细节

conda-press所做的就是取一个工件或规范,并将其转换为wheel(s)。当使用pip安装这样的wheel时,它会将工件根目录推入site-packages。然后它提供包装器/代理脚本,指向site-packages/bin,以便您可以运行可执行文件和脚本。

如何参与

请随时提交一个PR或打开一个问题!

项目详情


下载文件

下载适用于您平台的应用程序。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

conda-press-0.0.6.tar.gz (20.6 kB 查看散列值)

上传时间

由以下组织支持