yfaming on Nostr: # uv 与 cargo-script Python 的 uv 和 Rust 的 cargo ...
# uv 与 cargo-script
Python 的 uv 和 Rust 的 cargo 都支持单文件脚本,这个功能深合我意啊!
大体思路是,一个源码文件对应一个项目,项目依赖和其他元信息以特定格式放在注释里面。运行时拉取依赖,编译(并自动缓存构建产物),最后真正执行脚本。
它最大优点是保持了简单。我们可以直接把单文件脚本做成命令行工具,不用操心项目构建安装等琐事。毕竟项目的的心智成本挺高的,而脚本就是随便搞一搞的事。另一方面,它又隐式支持了项目的核心功能,尤其是依赖管理这一块。哪怕最简单的脚本,也免不了依赖第三方包。如果不支持依赖管理,这个功能也没什么用处了。
这个功能真的值得想要有所作为的脚本语言跟进啊。
Published at
2026-06-30 04:11:52 UTCEvent JSON
{
"id": "0e40599029a2aad7c4dcbd39b0da8bad4778754731eae9c92bf3043f6a5aa513",
"pubkey": "908fbc3babc322eea473a0ab1e6bf6b3adcf899288ac97b2fa79f34ad408d4e4",
"created_at": 1782792712,
"kind": 1,
"tags": [],
"content": "# uv 与 cargo-script\n\nPython 的 uv 和 Rust 的 cargo 都支持单文件脚本,这个功能深合我意啊!\n\n大体思路是,一个源码文件对应一个项目,项目依赖和其他元信息以特定格式放在注释里面。运行时拉取依赖,编译(并自动缓存构建产物),最后真正执行脚本。\n\n它最大优点是保持了简单。我们可以直接把单文件脚本做成命令行工具,不用操心项目构建安装等琐事。毕竟项目的的心智成本挺高的,而脚本就是随便搞一搞的事。另一方面,它又隐式支持了项目的核心功能,尤其是依赖管理这一块。哪怕最简单的脚本,也免不了依赖第三方包。如果不支持依赖管理,这个功能也没什么用处了。\n\n这个功能真的值得想要有所作为的脚本语言跟进啊。\n\nhttps://blossom.primal.net/d6ffcda7593433697dc04cfec85898353d465bd6c372fafeecc3c6969527c759.png",
"sig": "801add0fee700190606f0f20b1d99443890c9d1b19997764b0b30a7904ec0e7971f23ab3b613f14aed9ba7d58b427e74dff17b6e96f7db1cce239f134404f41d"
}