Python Web 框架 Flask 作者 Armin 最近发布了新的开源项目 Rye,才几天时间就冲上了 GitHub Trending 第一名。

他在推特晒出了自己的 “战绩”——Rye “击败” 各种 GPT 相关的开源项目拿下第一,并戏称目前比 LLM 和 AI 更火爆的技术就是 Python 打包!
在这里插入图片描述

Rye 是一款采用 Rust 编写的 Python 包管理工具,Armin 称其可作为
poetry/pip/pipenv/pyenv/venv/virtualenv/pdm/hatch 等同类工具的替代方案。

他表示 Rye 是给自己打造的 “一站式” 工具,满足了他对 Python 的所有需求,包括安装和管理 Python 软件包、管理 pyproject.toml 文件、安装和卸载依赖项、在后台管理 virtualenvs,以及支持 monorepos 和全局工具安装。

下面是 Rye 的部分功能:
自动安装和管理 Python

$ rye pin 3.11
$ rye run python
Python 3.11.1 (main, Jan 16 2023, 16:02:03) [Clang 15.0.7 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.

全局安装隔离工具

$ rye install maturin

管理本地 pyproject.toml 的依赖项并自动更新 virtualenv

$ rye add flask
$ rye sync

在这里插入图片描述

上面是使用 Rye 的运行截图。点此查看完整演示:
添加链接描述

Rye 的超高人气引起了另一位大佬的关注,Django 创始人 Simon Willison 在体验 Rye 后写了一篇简单的使用指南,点此查看详情:
添加链接描述

即便 Rye 在 Python 社区获得了极高的关注热度,Armin 也只是谦虚地说这是他对 Python 包管理的探索,离完美还差很远,而且只是按照他个人的使用方式来解决自己的问题。

他坦言本来并不打算把 Rye 开源出来,只是想作为自用项目 —— 毕竟 Python 包管理的生态已是一片混乱局面,他不想让 Rye 加剧这种混乱。

Armin 对 Python 包管理现状的感受,就是由于缺乏统一的标准,因此诞生了满足不同需求和场景的许多不同工具——不过每个抱着“统一”初心的标准最后都是适得其反。

而他希望的终端用户体验是:使用 “单一工具” 就能满足所有工程管理需求,包括 Python 项目、Python 解释器、全局安装的工具和 monorepos 等。这对任何类型的构建系统都是开放的,支持 Python 开发者每天遇到的问题。

Python ❤ Rust

此前一篇谈论 Python 在 2023 年发展趋势的文章就提到了 Rust 和 Python 的融合。文章指出 Rust 对 Python 技术生态的影响越来越大,因此其中一个趋势就是 Rust 将加快融入到 Python 相关的项目和工具中。Python + Rust 组合在未来的就业市场上会有很高的需求。

最近的一个案例便是我们前几天的报道:《Ruff 创始人宣布成立公司,称要改变 Python 生态》
Ruff 是基于 Rust 编写的高性能 Python 代码分析工具 (Python linter)。自开源以来,Ruff 收获了大量关注,其在 GitHub 的 Star 数量目前已飙升至 1 万多。

Ruff 创始人 Charlier Marsh 近日宣布成立了新公司:Astral。他表示公司的使命是通过构建高性能开发者工具来提升 Python 生态的生产力。他们会继续扩展 Ruff 功能,并构建更多类似 Ruff 的工具。

你如何看待 Rust + Python?欢迎留言讨论。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐