conda-forge 和 cf-staging 通道有啥区别

Posted

技术标签:

【中文标题】conda-forge 和 cf-staging 通道有啥区别【英文标题】:What is the difference between conda-forge and cf-staging channelsconda-forge 和 cf-staging 通道有什么区别 【发布时间】:2021-04-16 21:26:10 【问题描述】:

我在PyPi 中维护了一个包,我也将它放在conda-forge 上,供那些喜欢使用conda 而不是pip 安装的人使用。

过去,当我更新feedstock 中的版本和SHA 时,它会自动将新版本输入the conda-forge channel。然而,我最近的更新似乎已传播到一个名为 cf-staging 的频道中。

我试图弄清楚为什么它传播到 cf-staging 而不是 conda-forge 以及我必须做些什么才能让它从 cf-staging 移动到 conda-forge。有什么想法吗?

【问题讨论】:

【参考方案1】:

这是管道的一部分。它最终应该会转移,但如果超过一天,请联系管理员或转至the Gitter chat。

如the documentation 中所述,Anaconda Cloud 仅允许每个通道使用一个 API 令牌,因此为了防止一种原料的维护者推送其他包的构建,Conda Forge 团队使用了一个中间通道 (cf-staging) CI 工具将对提交的包进行验证,然后再将它们发送到conda-forge 频道。

除其他外,此策略还有助于减轻恶意用户的影响,这些用户可能会在不显眼的软件包上获得原料维护权,从稍后重建流行的软件包(如 pythonnumpy)以包含一些恶意代码并尝试将其从他们的原料推送到 Conda Forge 频道,在那里它可能会部署到数以万计的用户。

【讨论】:

以上是关于conda-forge 和 cf-staging 通道有啥区别的主要内容,如果未能解决你的问题,请参考以下文章

如何找到 conda-forge 包的 MD5 校验和

conda-forge / cran 包装的 X 射线扫描

当上传者为“conda-forge”时,更新 conda-forge 中的包

什么是完整的 conda-forge 频道网址?

无法使用 conda-forge 安装 ggplot

Python 打包:在 `conda` `meta.yaml` 文件中创建对 `conda-forge` 包的依赖