Skip to content

build(deps): bump certifi from 2026.7.22 to 2026.10.19 in /tests - #6977

Merged
huangruiteng merged 1 commit into
mainfrom
dependabot/pip/tests/certifi-2026.10.19
Oct 21, 2026
Merged

huangruiteng merged 1 commit into
mainfrom
dependabot/pip/tests/certifi-2026.10.19

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 21, 2026

Copy link
Copy Markdown
Contributor

Bumps certifi from 2026.7.22 to 2026.10.19.

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [certifi](https://github.com/certifi/python-certifi) from 2026.7.22 to 2026.10.19.
- [Commits](certifi/python-certifi@2026.07.22...2026.10.19)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2026.10.19
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Oct 21, 2026

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent | gpt-6.1-sol | OpenAI | runtime_reported | effort=max

动机

受影响的是运行 Stage 2C Linux/Python 3.11 验收环境的开发者与自动化任务。

原锁文件安装 certifi 2026.7.22;本次升级到 2026.10.19,并同步两个发布包的哈希,使锁定环境采用更新后的根证书集合。

当前头的锁定依赖可在目标 Linux/Python 3.11 环境按哈希安装,HTTPS 正向连接成功,自签证书仍被拒绝;项目已有依赖一致性测试保持通过。

本 PR 仅更新测试锁文件中的 certifi,不修改项目 TLS 验证代码、生产配置、任务调度或安装权限。

改动思路

沿用现有依赖生成与哈希安装链:项目声明和 tools 输入约束解析器,生成的锁文件固定版本与包摘要,Stage 2C 用 binary-only 和 require-hashes 安装。一次常规证书包升级适合在这一 owner 内完成,无需增加另一份锁文件、TLS 配置或验证开关。

不仅核对版本号,也独立下载官方 wheel/sdist、比较原始包内容,并在全新 Linux x86_64 / Python 3.11.17 环境安装锁定的 HTTPX 依赖闭包,执行真实 HTTPS 正向和证书拒绝路径。这个边界验证的是现有测试环境的可用性;不把一次成功连接解释成所有网络目标或生产信任策略已经验收。

具体改动

全部差异为一个文件 +3/-3,仅 certifi 版本及两个 SHA256。项目声明、其他依赖、生成命令和现有断言没有修改。

关键代码讲解

  1. certifi 锁定块 从 2026.7.22 升至 2026.10.19。新摘要分别完整匹配官方 wheel 与 sdist,两个发布包均未撤回,Requires-Python 仍为 >=3.7,兼容目标 Python 3.11。
  2. test_stage2c_lock_covers_runtime_test_and_build_requirements 是未修改的独立约束检查:读取 pyproject、tools 与锁文件,按 Linux/Python 3.11 marker 检查版本范围。固定基线 600c43e85c8ea9f5c328396f69ec4a15fa5e7545 通过,真实当前头也通过;没有继承其他 PR 的 Pillow finding。
  3. 原有 Stage 2C 安装入口 继续要求哈希与二进制包。实际隔离环境按锁文件的原块安装 7 个 HTTPX 相关依赖,使用 certifi.where() 构造 SSLContext;并未修改 product consumer 或绕过 TLS 验证。

没有独立的升级规格文档;判据来自在 diff 前读取的原项目声明、tools 输入、安装入口和原测试。上游依据为 官方标签对照 与 PyPI 发布元数据,不是仅采用自动升级描述。

对主干的风险

证书包升级有真实语义变化:原 bundle 的 121 个可加载根证书变为 120 个,仅移除 emSign ECC Root CA - G3,没有新增根证书;其 SHA256 为 86a1ecba089c4a8d3bbe2734c612ba341d813e043cf9e8a862cd5c57a36bbe6b。这与官方上游差异一致,不能声称根集合完全不变。core.py 两版本逐字节相同,where/contents API 没有新增逻辑。

实际 Linux/Python 3.11 HTTPX 调用在 trust_env=False、仅使用该 certifi CAcontext 的条件下,对官方 PyPI HTTPS 返回 200;同一客户端访问本地合成自签证书时抛出包含 CERTIFICATE_VERIFY_FAILED 的 ConnectError。测试容器与 TLS server 已退出;没有 verify=False、mock 验证器或系统代理信任代替这一检查。

当前头和基线各有 1 项依赖约束测试通过;风险预合并 4 项直接检查全部通过,选择 0 个额外 smoke。未运行完整 Stage 2C 全套集成,也未查询、轮询或等待远端 CI。正式合并资格与 required checks 仍单独判断。回滚可恢复原 pin 与对应两哈希,不需要修改业务代码或关闭证书验证。

我的整体评价

APPROVE,当前头 3314352c04f21e2dc3e469b016c543facb703f75。这是已交付的有界依赖维护:现有声明与锁文件一致,发布物身份、目标 Linux/Python 安装和实际 TLS 正反路径均有独立证据;long_horizon 的可复现测试基础保留,没有推导模型或长期效果提升。user_experience 不适用,因为没有改变用户操作流程。改动与问题规模相称,没有新框架、重复 smoke 或新 authority;同作者其他依赖 PR 的风险分别评估。本结论授予评审结论,不授予合并或共享安装权限。

English verdict: APPROVE — 3314352. The two hashes match the official certifi 2026.10.19 artifacts; unchanged declaration checks pass at base and head. A fresh Linux/Python 3.11 hashed install passes real HTTPS and rejects a self-signed certificate. The intentional single-root removal is disclosed; full Stage 2C/remote CI and merge authorization remain separate.

@huangruiteng
huangruiteng merged commit 9870977 into main Oct 21, 2026
25 of 57 checks passed
@huangruiteng
huangruiteng deleted the dependabot/pip/tests/certifi-2026.10.19 branch October 21, 2026 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants