Skip to content

fix(deps): align aiohttp extras pins with lazy Slack pin (3.13.4) - #42154

Merged
teknium1 merged 1 commit into
mainfrom
fix/aiohttp-extras-pin-31817
Jun 8, 2026
Merged

fix(deps): align aiohttp extras pins with lazy Slack pin (3.13.4)#42154
teknium1 merged 1 commit into
mainfrom
fix/aiohttp-extras-pin-31817

Conversation

@teknium1

@teknium1 teknium1 commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Summary

hermes update no longer downgrades aiohttp and reopens 10 published CVEs.

The messaging / slack / homeassistant / sms extras exact-pinned aiohttp==3.13.3, while LAZY_DEPS["platform.slack"] already pins 3.13.4 (the CVE fix from #26830). On update, the pyproject pin won and downgraded aiohttp 3.13.4 → 3.13.3 (the exact symptom reported in #31817), reopening 4 moderate + 6 low advisories until Slack's lazy refresh re-upgraded it on next use.

Changes

  • pyproject.toml: bump aiohttp to 3.13.4 in the four extras that pin it (messaging, slack, homeassistant, sms); annotate with the CVE IDs.
  • uv.lock: regenerated (uv lock) — aiohttp 3.13.3 → 3.13.4, no other resolution drift.
  • tests/test_project_metadata.py: add test_pyproject_aiohttp_pins_match_lazy_slack_pin — fails if any pyproject aiohttp pin drifts from the lazy Slack pin again.

Supply-chain posture

  • aiohttp 3.13.4 published 2026-03-28 (~2.5 months old, well past the 2-week quarantine).
  • Stays an exact == pin; matches our own lazy-deps pin (no chasing latest — 3.13.5 exists but adds no further fixes).

Validation

Before After
messaging/slack/homeassistant/sms aiohttp pin 3.13.3 3.13.4
matches LAZY_DEPS["platform.slack"] no yes
uv lock --check passes
tests/test_project_metadata.py 9 passed 10 passed

Advisories closed: CVE-2026-34525, -34516, -34515, -22815 (moderate); -34514, -34517, -34520, -34518, -34513, -34519 (low).

Salvages #29538 by @cresslank (authorship preserved). Duplicate of #29743 by @m0n3r0 — credit to both. Closes #31817.

Infographic

aiohttp-pin-alignment

The messaging/slack/homeassistant/sms extras exact-pinned aiohttp==3.13.3
while LAZY_DEPS['platform.slack'] already pins 3.13.4 (the CVE fix). On
`hermes update` the extras pin won, downgrading aiohttp 3.13.4 -> 3.13.3
and reopening 10 published advisories (CVE-2026-34513/34515/34516/34517/
34518/34519/34520/34525, -22815, -34514) until Slack's lazy refresh
re-upgraded it.

Bump all four extras to 3.13.4 to match the lazy pin, regenerate uv.lock,
and add test_pyproject_aiohttp_pins_match_lazy_slack_pin to guard the
alignment going forward.

Fixes #31817
@teknium1
teknium1 requested a review from a team June 8, 2026 14:17
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

🔎 Lint report: fix/aiohttp-extras-pin-31817 vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 10399 on HEAD, 10399 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 5432 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

@cresslank

Copy link
Copy Markdown
Contributor

omg amazing ty

@alt-glitch alt-glitch added type/security Security vulnerability or hardening P2 Medium — degraded but workaround exists dependencies Pull requests that update a dependency file area/config Config system, migrations, profiles labels Jun 8, 2026
@teknium1
teknium1 merged commit c6d27ad into main Jun 8, 2026
26 checks passed
@teknium1
teknium1 deleted the fix/aiohttp-extras-pin-31817 branch June 8, 2026 18:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/config Config system, migrations, profiles dependencies Pull requests that update a dependency file P2 Medium — degraded but workaround exists type/security Security vulnerability or hardening

Projects

None yet

Development

Successfully merging this pull request may close these issues.

hermes update downgrades aiohttp from 3.13.4 to 3.13.3

3 participants