Heidi Labs
Simon WillisonAI 权威大佬文章约 1 分钟488 字

拿不准的时候,就删掉 uv.lock 文件

自从切换到 Python 3.15 以来,我时不时会遇到令人费解的 Python 依赖错误,我不得不记住的规则是:

拿不准的时候,就删掉 uv.lock 文件。

我的大多数项目都是库(library),不包含 uv.lock 文件——因为一个库作为依赖去锁定版本,会妨碍任何使用它的其他项目,这样做很不礼貌。

运行 uv run pytest 之类的命令,往往会留下 uv.lock 文件。这些文件列在 .gitignore 里,因此不会被提交到我的仓库。

但是……有时候这个 uv.lock 会把某个依赖锁定到一个还没有 Python 3.15 wheel 的版本。今天早些时候的一个例子:

error: Failed to build `watchfiles==1.1.1`
  cause: Call to `maturin.build_wheel` failed

error: the configured Python interpreter version (3.15) is newer
than PyO3's maximum supported version (3.14)

删掉那个文件,再运行一次 uv run pytest,通常就能解决问题。

发布于 2026 年 11 月 1 日 23:24。