12 月 4 日,Python 基金会官方博文发文称,收到来自 Mozilla 和陈-扎克伯格基金会共计 40.7 万美元的资助,以支持在 2020 年改进 pip 的工作。

目前有数百万人和组织使用用 Python 编写的工具,而且几乎整个 Python 软件生态系统都依赖于pip。

计算机需要知道正确的顺序来安装软件。因此,当程序员共享软件时,必须精确描述安装先决条件,并且安装工具需要处理复杂的情况,在这种情况下,它们会得到相互冲突的指令。资助项目将使 pip 能够更好地处理复杂的逻辑,并使人们更容易使用它和排除故障。

文章称,这种基础性、转换性的工作将使 Python 开发人员和用户能够将精力集中在他们正在制作和使用的工具上,而不是解决依赖冲突。具体来说,Mozilla 和陈-扎克伯格基金会正在资助用户体验、通信/宣传和测试工作(包括开发健壮的测试基础设施),以及核心功能的开发和审查。

Python 基金会将如何使用这笔钱?

1、Mozilla 资助了 20.7 万美元,将于 5 个月的:

Python 开发工作;

初始阶段的用户体验研究和设计工作;

2、陈-扎克伯格基金会资助了 20 万美元,用于:

12 个月的 Python 开发、测试基础架构、项目维护;

4 个月的第三阶段的用户体验研究和设计工作;

差旅费;

为什么要改进 pip?

Python 基金会官博中透露,已完成了对 pip 依赖解决程序(resolver)的下一代重写。虽然这个项目陷入了巨大的技术债务,但是重构已经接近完成,原型功能现在处于 alpha 阶段。

要完成这个解决程序(resolver),因为它阻止了许多其他的打包改进,它将修复 Python 用户的许多依赖问题,还将修复 conda、certbot、WebSocket 和许多其他项目的安装问题。

还需要改进 pip 的 UX,提供更好的错误消息和提示、日志、输出和报告,并在特性之间保持一致,以更好地适应用户的心理模型,使复杂的问题更容易解决,并减少意外的数据丢失。

何时开始?

2020 年 1 月开始。日常工作进展,可以从 pip 的 GitHub 仓库和 Python 开发者的 Zulip livechat 中看到。