uv 0.12.0 发布:uv init 默认采用 src 布局并配置 uv_build 后端
评分
78详细介绍了 uv init 默认行为的变更及其具体影响,对尚未跟进 src 布局的开发者有较高信息增量。
内容清晰、结构完整,包含变更前后对比、作者观点及额外资源链接,质量上乘。
直接指导开发者调整项目初始化习惯,提供迁移参考,实用价值高。
发布当日即报道,时效性极佳。
源自 Simon Willison 个人博客,其技术信誉高,且附有 GitHub 仓库验证,可信度好。
基础分 86.5 × T2 信源权重 ×0.9 = 78
精选线 70已入选精选
精选理由
信息增量高,详细解释变更细节及作者观点,对长期使用 uv 的开发者有直接参考价值。
AI 点评
「这个版本更新的 src 布局默认值反映了 Python 社区最佳实践的演进。对正在使用 uv 但尚未采用 src 布局的团队来说,这是重新评估项目结构的好时机。建议结合 uv build 和 uv run 脚本功能,进一步提升开发效率。」
速览
uv 0.12.0 版本带来破坏性变更:uv init 命令创建的默认项目结构从根目录 main.py 改为 src/ 布局的包,并自动配置 uv_build 后端用于构建 wheel 和 tar.gz 分发文件。同时设置脚本别名 uv-run 执行 main() 函数。作者此前因惯性避免 src 布局,现认为应切换。此改动影响所有新项目初始化流程。
- uv init 默认创建 src/ 布局的 Python 包,而非根目录 main.py
- 自动配置 uv_build 后端以支持 wheel 和 sdist 构建
- 设置脚本别名 uv-run 指向 src/uv_init/__init__.py 中的 main() 函数
- 此改动是破坏性变更,现有项目不受影响,但新项目需适应
正文
uv, in particular to the default project produced by the uv init command.
uv init 是 uv 创建新项目的快捷方式。旧版本的 uv(版本 0.11.x)在运行 uv init uv-init 时会生成 此目录。
以下是 使用 uv 0.12 得到的结果。我有一个 GitHub 仓库,它会 自动快照 uv init 的输出,因此您也可以 查看完整差异:

uv init 现在默认创建 src/ 形状的包,而不是将 main.py 放在项目根目录。它还会配置 uv_build 后端,用于在运行 uv build 时构建 wheel 和 .tar.gz 分发文件。最后,它将 uv-init 设置为脚本别名,当使用 uv run uv-init 运行时,会执行 src/uv_init/__init__.py 中的一个新的 main() 函数。
到目前为止,我一直出于惯性避免在自己项目中使用 src 布局。我想是时候改变了。
相关条目
84
精选GitHub 实战分享:如何在生产前评估 LLM
这篇实战指南的价值在于它来自真实的安全场景,而不是理论推导。对于正在把 LLM 接入到生产流程的团队,尤其是做安全检测和数据敏感的工程团队,非常值得一读。建议结合自己的业务数据设计评估集,而不是盲目套用公共基准。
84
精选Ruff v0.16.0 发布:默认规则从59条激增至413条,CI工作流需关注
对于 Python 开发者来说,这是一个不容错过的更新信号。Ruff 的默认规则大幅增加意味着我们不能再忽视代码中潜在的问题,而 AI 修复工具正好可以降低升级成本。尤其值得关注的是 Astral(OpenAI)正在将 AI 编码能力与静态分析工具深度整合,这可能是未来工程实践的常态。
81
精选OpenRouter 团队 AI 支出控制设置教程
在AI API支出快速膨胀的当下,OpenRouter官方推出这样的治理教程,说明平台方已开始认真对待企业级成本管理。与其等到账单失控再补救,不如趁早按官方指南配置护栏。对平台工程师和财务负责人尤其有参考价值。
81
精选Anthropic Claude Code 团队炉边谈话:AI 编码代理如何重塑软件开发
这次炉边谈话的价值不在于复述Claude Code的功能,而在于它揭示了Anthropic内部如何用AI工具重新定义工程流程——从‘重执行’转向‘重品味’。对于任何在AI产品团队工作的人,Cat关于‘产品品味比执行更值钱’的观点值得反复咀嚼。另外,Thariq对重写代码的颠覆性看法也提醒我们:传统软件工程原则正在被AI能力重写。
80
精选GPU管理:闲置GPU为何成为新的停飞飞机
这篇博客最值得看的是它将GPU资源管理提升到了经济学的层面,用飞机停飞的比喻让人直观理解浪费的严重性。对于使用Kubernetes管理GPU集群的团队,文中的工具建议可以立即尝试。不过国内用户可能要留意部分工具在非AWS/GCP环境下的兼容性。
80
精选一份主观指南:如何选择AI来做事情
这篇博客是Simon Willison对Ethan Mollick指南的精炼解读,非常适合正在纠结该用ChatGPT还是Claude、以及该选哪种代理模式的开发者与重度用户。它直击痛点——产品命名混乱、移动端与桌面端能力差异不直观,本文将这些迷雾一扫而净。
80
精选PyPI 实施14天上传期限以防止供应链投毒
这条消息对 Python 生态至关重要。如果你管理任何 PyPI 项目,请立即检查你的发布流程——14天窗口意味着你不能再在旧版本上修补或覆盖文件,需要发布新版本。对安全团队而言,这是供应链安全的最佳实践,值得其他包管理器借鉴。
80
精选Lobsters 社区成功迁移至 SQLite:单服务器架构的胜利
这个迁移案例特别值得关注,因为它挑战了‘小站点必须上分布式数据库’的惯性思维。Lobsters 用实践证明,在 2026 年,一台服务器加 SQLite 就能承载一个活跃社区。对正在为技术栈过度复杂而苦恼的创业团队来说,这是一个降本增效的绝佳参照。