将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的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | ccbbc5251eb0d7da26644ee72470c84ed3671e5bc839353fdea53eabaacee7c4 |
|
MD5 | 726af5cd5969c8e02cb073141a44927c |
|
BLAKE2b-256 | 38620b73fb7264fb07ce3998549c85e44080da632c4f0d69e9f62803f0fac67b |