「exclude-newer」选项不以持续时间为准
我有一个使用uv的 Python项目,我想设置exclude-newer策略,但它忽略了持续时间。在我的 pyproject.toml 中,我有
[tool.uv]
exclude-newer = "7 days"
不过当我运行例如 uv add [some_package] 时,它给我一个警告:
warning: Failed to parse `pyproject.toml` during settings discovery:
TOML parse error at line 43, column 17
|
43 | exclude-newer = "7 days"
| ^^^^^^^^
failed to parse year in date "7 days": failed to parse "7 da" as year (a four digit integer): invalid digit, expected 0-9 but got
uv 文档 说
接受RFC 3339时间戳(例如
2006-12-02T02:07:43Z),一种“友好”的持续时间(例如24 hours、1 week、30 days),或ISO 8601持续时间(例如PT24H、P7D、P30D)。
我尝试将其设置为ISO持续时间,结果仍然有同样的警告。当我把它设置为一个具体的日期时间时,它能工作。如何将它设置成像若干天这样的持续时间来工作?
我使用uv 0.9.2和 Python 3.11.14。
解决方案
根据 0.9.x更新日志,直到v0.9.17才新增对 relative exclude-newer 的支持:
0.9.17
发布时间为2025-12-09。
增强功能
- ...
- 在
exclude-newer中增加对相对持续时间的支持(也称为依赖冷却时间) (#16814)
因此你将需要至少升级到这个版本(撰写本文时文档中反映的版本是v0.11.10)。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。