Conda Newsletter,第 2 期
欢迎来到 conda 社区 Newsletter 第二期! 我们很高兴为您带来最新的更新和见解,内容丰富,包含有价值的信息和令人兴奋的进展。
在本期中,我们涵盖了广泛的主题,包括 即将到来的活动、像 conda-store 这样的新工具、关于 conda 免费性质的引人深思的讨论、插件钩子,以及像 Pandata 这样有趣的项目。此外,我们还将深入探讨 最近的发布,这些发布有望增强您的 conda 体验。
但这还不是全部!我们还将重点介绍一个 职位空缺,并分享来自 Travis Hathaway 和 Bianca Henderson 最近演讲的消息,现在可供公众观看。
如果您不想错过未来的版本,请务必 注册 conda Announce 邮件列表。
那么,事不宜迟,让我们深入本期内容,探索 conda 世界中正在发生的激动人心的发展。
阅读愉快!
即将到来的活动
RSE 2023 上的 Conda-forge 指南
社区成员 Dave Clements 将主持一个关于将开源软件发布到 conda-forge 的教程。Conda-forge 是 conda 生态系统中一个蓬勃发展的社区管理渠道,拥有超过 20,000 个软件包,每年服务数十亿次下载。在这个实践教程中,您将掌握软件包的基本原理,了解 conda 生态系统,并探索在 conda-forge 上准备和发布软件的过程。
主要亮点
- 软件包概念和挑战简介。
- 深入了解 conda 生态系统。
- 准备用于 conda-forge 的示例软件包的分步指南。
- 使用 conda-build 构建您的软件包。
- 在 conda-forge 上提交和发布您的软件包。
- 将软件包从 PyPA/pip (Python) 或 CRAN (R) 移植到 conda。
要了解有关此教程的更多信息,请访问 US-RSE 页面.
PackagingCon 2023
- 时间:2023 年 10 月 26-28 日
- 地点:柏林(混合模式,也提供在线选项!)
- 提前注册截止日期:2023 年 9 月 8 日
PackagingCon 2023 是您与软件包专家联系、讨论最佳实践并应对常见挑战的机会。无论您是开发人员、打包人员还是打包社区的一员,本次会议都是必参加的。
注册:虚拟票的早鸟价为 37.50 欧元,现场票为 150 欧元。学生和提前注册者可享受折扣。提前注册截止日期为 9 月 8 日!。
有关更多信息,您还可以查看 Dave Clements 关于 PackagingCon 的文章。
近期新闻
conda-store
使用 conda-store 体验增强的灵活性和可靠性,这是一个简化 conda 环境管理的强大工具。
什么是 conda-store?
conda-store 无缝集成了 conda 环境,为个人数据科学家和管理员提供了灵活性。它简化了环境生命周期管理,并遵循最佳实践。
主要功能
🔑 灵活性:使用 GUI 或 YAML 编辑器自定义环境,使其适应您的特定需求。
🔑 可重现性:conda-store 生成自动工件,用于共享和精确的版本控制,确保可重现性。
🔑 治理:管理员批准的软件包、版本控制和渠道管理促进了组织范围内的统一性。
🔑 命名空间管理:在指定的团队内安全地共享环境,以增强协作。
开始使用
在 conda.store 探索全面的文档,了解安装、使用和贡献。
无论您是数据科学家还是管理员,conda-store 都会彻底改变 conda 环境。务必查看一下!
conda 是免费的吗?
在 Dave Clement 的最新博文中,他澄清了每个人都在思考的问题:“conda 真的免费吗?” 以下是简要概述
-
Conda,软件包和环境管理软件,是开源的,任何人都可以免费使用。
-
来自 conda-forge、Bioconda 和其他公共渠道的 Conda 兼容软件包也对所有用户免费。
-
对于默认渠道和 Anaconda Distribution 中的软件包
- 少于 200 人的组织可以免费使用它们。
- 如果较大的组织符合 Anaconda 的服务条款豁免,包括开发人员、学生、教师、学术机构、非商业开源软件项目和小企业,他们仍然可以获得免费使用资格。
要深入了解 conda 的免费产品和更精细的细节,请深入阅读 Dave Clement 的完整博文。
新的 pre 和 post 命令插件钩子
通过引入 “pre command” 和 “post command” 插件钩子,探索 conda 可扩展性的最新进展。这些强大的新增功能自 conda 23.7.2 版本起可用,允许插件作者在 conda 命令之前和之后执行代码,从而扩展了自定义 conda 体验的可能性。
Pre Command Hook:此钩子使您能够在指定的 conda 命令运行之前执行代码。这是自定义和扩展 conda 默认行为的变革性功能。conda-protect 项目中可以找到其在实践应用中的一个很好的例子,它用于保护 conda 环境。
Post Command Hook:与 pre command hook 类似,post command hook 允许您在 conda 命令成功执行后运行代码。这开辟了令人兴奋的机会,例如创建一个简单的命令计数器来分析您的 conda 使用情况。
有关这些新插件钩子的详细实现示例和见解,请深入阅读 Travis Hathaway 的博文。
Pandata
Pandata 是各种 Python 库的协作成果。这些库经过精心设计,可以无缝地相互补充,确保可扩展性、交互性等等。
本质上,Pandata 是您使用一套旨在和谐工作的库的指南。通过使用这些库中的任何一个,您可以放心,它们经过定制,可以无缝地组合在一起,从而保持可扩展性和交互性。
发布
Conda 23.7.2:引入了 pre- 和 post-command 插件钩子,改进的子命令插件基础设施,以及环境中已更改软件包的健康检查。
Conda Build 3.26.0:记录软件包验证的 extra-meta 数据,将 pip 添加到 env-doc make 命令,并修复了与处理未知二进制文件和带有子模块的 Git 克隆相关的各种错误。
constructor 3.4.5:Constructor 3.4.5 增强了对 environment_file 键中 .yaml 和 .txt 文件的支持。此版本还确保了在 Windows 上从现有环境创建安装程序时,conda 元数据的准确性。
conda-libmamba-solver 23.7.0:Libmamba solver 23.7.0 在 conda-build 中引入了本地渠道集成,修复了命名空间设置、CLI 参数处理、软件包下载中的身份验证以及改进了 conda-lock 中渠道的处理,以及其他增强功能和错误修复。
conda-lock 2.1.2:conda-lock 2.1.2 解决了 Pydantic v2 警告,实现了私有 PyPi 软件包的身份验证剥离,并增强了与 Mamba>=1.4.6 的兼容性。此外,它还包括基础设施改进、pydantic 2.0 的依赖项更新以及删除已弃用的 pkg_resources 等更改。
Pixi:Pixi 0.2.0 引入了一个新的 “pixi search” 命令,用于软件包搜索和特定于目标的任务。它还包括一些错误修复、安装改进以及增强功能,例如二进制文件大小的减少、更新的横幅和贡献指南。
SFBI 仍有职位空缺!
职位名称:软件开发工程师
合同类型:定期合同(12 个月)
地点:凡尔赛,法国
开始日期:2023 年 10 月 1 日
学历:Bac+5 / 硕士学位
加入革命性的基因组学研究!SFBI 正在寻找一名软件开发工程师来增强其旗舰工具 REPET。
您的任务:提高可移植性和可扩展性。如果您精通 Python、conda、Snakemake 等,请在 2023 年 9 月 20 日之前申请。 了解更多。
编写插件友好的 Python 应用程序:Travis Hathaway(conda 维护者)
在本次演讲中,Travis Hathaway 探讨了如何 设计插件友好的 Python 应用程序。他强调了核心软件和插件之间良好定义的契约的重要性,从而促进模块化组织。
在整个会议期间,他使用 pluggy 库演示了这些原则。他还分享了一个关于 conda 的案例研究,展示了 conda 如何调整其代码库以拥抱插件友好的实践。
观看视频 以了解如何使用插件友好性增强您的 Python 应用程序。
使已建立的 Python 代码库可插拔:Bianca Henderson(conda 维护者)
在 Bianca Henderson 的演讲中,您将深入了解如何使已建立的 Python 代码库更具可插拔性。本次演讲介绍了 pluggy Python 框架,作为在您的项目中实现插件友好性的关键工具。
Bianca 使用一个真实的例子,说明了有十年历史的 conda 代码库如何采用插件 API,为该项目注入了新的活力。
不要错过这次机会,了解如何有效地将插件功能注入到您的 Python 代码库中。