返回 2026-07-19
🛠 工具 / 开源

包管理本周资讯:2026年7月18日This Week in Package Management: 18 July 2026

nesbitt.io·2026-07-18

汇总了2026年7月18日当周包管理领域的最新动态,包括各类包管理器的版本发布、安全公告以及相关技术文章。

Andrew Nesbitt

第九期每周摘要,内容来源于包管理器 OPML 订阅集合以及我在 Mastodon 上发布或转发的所有内容。

版本发布

pnpm 11.13 新增了 pnpm change,这是一个原生兼容 changesets 的发布规划器,可处理版本升级、依赖传播、固定分组以及每个包的发布通道。它还新增了 pnpm team 用于 registry 组织和团队成员管理,以及一个 versioning.epics 配置,该配置将一组包与一个主导包绑定,使它们的版本保持在由主导包主版本号派生的范围内。在此之前的 11.12 版本中,允许 pnpmfile fetcher 返回 { delegate: <resolution> },以便自定义 fetcher 能够在 pnpm 和 pacquet 之间可移植地移交给内置 fetcher。

Deno 2.9.3 新增了 deno add --no-save 和 --save-optional 选项,并添加了 --min-dep-age 作为 minimum-release-age 检查的简短别名。

pixi 0.73.0 允许在环境 [dependencies] 表中使用 { workspace = true },因此跨特性或目标共享的版本只需在 [workspace.dependencies] 中声明一次,而无需使用 pixi-build 预览版。

uv 0.11.29 为 uv tree 添加了 JSON 输出,并在从 pylock.toml 安装时优先使用本地构件而非 URL。

Verdaccio 6.8.0 在 unpublish(取消发布)和单版本移除以及 publish(发布)时都会触发通知 webhook。模板获得了一个变量,且该对象仅暴露 name、groups 和 real_groups,从而确保 auth token 永远不会到达通知端点。

zizmor 1.27 增加了对审计 GitHub 新的并行步骤模式的实验性支持。

Rust 1.97.1 是一个修订版本,向后移植了一个 LLVM 修复,并禁用了 1.97.0 中使错误编译更容易触发的 IR 更改。

Homebrew 6.0.11 合并了 brew vulns,因此对已安装 formulae 的 CVE 扫描现在已内置;我记录了其背后的工作。

同期发布的还有:npm 12.0.1、Athens 0.18.1、vcpkg 2026-07-13、sbt 2.0.2、Nix 2.35.1、mise 2026.7.10、pipx 1.16.0、Gradle 9.7.0-RC1、Renovate 43.268.4、Dependabot Core 0.387.0。

安全

Docker Engine 29.6.2 修复了三个 CVE:CVE-2026-15793,从 bundle 文件检出 git 源码可能导致命令注入;CVE-2026-15792,来自 BuildKit 前端的错误参数可能导致 panic;以及 CVE-2026-15791,LLB 文件操作可能被诱骗删除 /tmp 的内容。

sbt 1.12.14 向后移植了针对内置 Apache Ivy PackagerResolver 中 CVE-2026-26032 的修复。

文章

crates.io:开发更新(Tobias Bieniek,Rust Blog)涵盖了六个月的工作:crate 页面现在有一个 Code 选项卡,显示 cargo 下载的确切文件,这些文件可能与链接的仓库不同;crates.io 账户正在与 GitHub 登录解耦;Svelte 前端迁移已完成。

供应链压力下的 Composer 和 Packagist(Sebastian Bergmann)回顾了 PHP 生态系统在 2025 年和 2026 年的表现、可以从其他 registry 借鉴什么,以及基础设施的所有权归属。

我作为驻场 AI 安全工程师的第一个月(Jacob Finkelman,Rust Foundation)涵盖了构建一个按优先级排序的待扫描 crate 数据库、使用 Scrutineer 进行初步扫描,以及确定以这种方式发现的 bug 何时应被保密而不是公开报告。

论文

软件供应链已死:面向用例的重新生成(arXiv)指出,供应链攻击提高了外部依赖的成本,而生成式 AI 降低了本地实现的成本,并评估了一种仅合成应用程序实际调用的依赖片段的代理工作流。

《设置完成,现在你被入侵了:将设置指令武器化以攻击 AI 编程代理》(Bagmar 等人,arXiv)评估了通过项目设置文档传递的软件包安装时供应链攻击对生产级编程代理框架的影响:只需编辑 README、requirements 文件或 Makefile,就能将代理重定向到不受信任的注册表、已知存在漏洞的版本,或者一个错误但看似合理的软件包名称。

《分布式开源漏洞生态系统》(Mandl 等人,arXiv)将漏洞管理建模为一个分布式过程,并将扫描器在相同软件清单上的分歧追溯到生态系统的特定阶段,而不是任何单一工具或数据源。

其他动态

Forgejo 16.0 增加了按代码库的监视选项、用于无密钥 API 访问的授权集成机制,以及跨多行的审查评论。

Ruby 4.0.6 是一个常规的错误修复版本。

《开源安全:Lightwell 项目》(Josh Bressers)是一期播客对话,Máirín Duffy 在其中探讨了 Red Hat 的计划,即将 AI 发现的漏洞路由到上游项目,而不是保留下游补丁。

请将下周的链接发送至 @[email protected]。

需要完整排版与评论请前往来源站点阅读。