Skip to content

fix(deps): bump aiohttp lower bound to >=3.14.0 to fix CVE-2026-47265, CVE-2026-47266#16230

Merged
davidkonigsberg merged 3 commits into
mainfrom
dependabot-alert-2081-devin
Jun 4, 2026
Merged

fix(deps): bump aiohttp lower bound to >=3.14.0 to fix CVE-2026-47265, CVE-2026-47266#16230
davidkonigsberg merged 3 commits into
mainfrom
dependabot-alert-2081-devin

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot commented Jun 4, 2026

Description

Addresses Dependabot alerts #2081 (CVE-2026-47265 — cross-origin redirect with per-request cookies) and #2080 (CVE-2026-47266 — deserialization of untrusted data).

Changes Made

  • Bumped aiohttp lower bound from >=3.13.4,<4 to >=3.14.0,<4 in the Python SDK generator source (sdk_generator.py)
  • Tightened Python marker from >=3.9 to >=3.10 (aiohttp 3.14.0 requires Python 3.10+)
  • Added changelog entry
  • Deleted scaffold file .github/dependabot-alerts/alert-2081.md

Next Step

The Update Seed workflow needs to be triggered on this branch with language=python to regenerate the seed/python-sdk/**/poetry.lock files.

Testing

  • Verified the version constraint change in generator source
  • Seed regeneration (via Update Seed CI workflow)

Link to Devin session: https://app.devin.ai/sessions/89af7d2e63e64a8c834cb8e8cf03969d

@devin-ai-integration devin-ai-integration Bot changed the title [Dependabot Alert #2081] MEDIUM: aiohttp vulnerability fix(deps): bump aiohttp to 3.14.0 in seed poetry.lock files to fix CVE-2026-47265, CVE-2026-47266 Jun 4, 2026
@devin-ai-integration devin-ai-integration Bot force-pushed the dependabot-alert-2081-devin branch from ec6dea8 to 91fd9e2 Compare June 4, 2026 11:18
@devin-ai-integration devin-ai-integration Bot changed the title fix(deps): bump aiohttp to 3.14.0 in seed poetry.lock files to fix CVE-2026-47265, CVE-2026-47266 fix(deps): bump aiohttp lower bound to >=3.14.0 to fix CVE-2026-47265, CVE-2026-47266 Jun 4, 2026
@davidkonigsberg davidkonigsberg marked this pull request as ready for review June 4, 2026 11:19
Copy link
Copy Markdown

@claude claude Bot left a comment

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.

Tip: disable this comment in your organization's Code Review settings.

Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

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

Devin Review found 1 potential issue.

View 1 additional finding in Devin Review.

Open in Devin Review

# accordingly so SDKs that still support older Python fall back to not
# installing the extra rather than pinning to a vulnerable aiohttp.
project.add_dependency(
dependency=AST.Dependency(name="httpx-aiohttp", version="0.1.8", optional=True, python=">=3.9")
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔴 httpx-aiohttp Python marker not tightened to >=3.10, creating inconsistency with aiohttp marker

The PR tightens the aiohttp Python marker from >=3.9 to >=3.10 but leaves httpx-aiohttp at >=3.9. The prior change (generators/python/sdk/changes/5.5.5/add-aiohttp-python39-marker.yml) deliberately set both markers to the same value. With this inconsistency, on Python 3.9, pip install sdk[aiohttp] will install httpx-aiohttp (marker matches) but skip our aiohttp>=3.14.0,<4 constraint (marker doesn't match). Since httpx-aiohttp transitively depends on aiohttp, pip will resolve whatever older aiohttp version is compatible with Python 3.9 — likely a version vulnerable to the CVEs this PR is meant to address.

Suggested change
dependency=AST.Dependency(name="httpx-aiohttp", version="0.1.8", optional=True, python=">=3.9")
dependency=AST.Dependency(name="httpx-aiohttp", version="0.1.8", optional=True, python=">=3.10")
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Good catch — fixed in 166501c. Both httpx-aiohttp and aiohttp now use python=">=3.10".

@github-actions
Copy link
Copy Markdown
Contributor Author

github-actions Bot commented Jun 4, 2026

SDK Generation Benchmark Results

Comparing PR branch against median of 5 nightly run(s) on main (latest: 2026-06-04T05:35:26Z).

Full benchmark table (click to expand)
Generator Spec main (generator) main (E2E) PR (generator) Delta
python-sdk square 135s (n=5) 237s (n=5) 132s -3s (-2.2%)

main (generator): generator-only time via --skip-scripts (includes Docker image build, container startup, IR parsing, and code generation — this is the same Docker-based flow customers use via fern generate). main (E2E): full customer-observable time including build/test scripts (nightly baseline, informational). Delta is computed against generator-only baseline.
⚠️ = generation exited with a non-zero exit code (timing may not reflect a successful run).
Baseline from nightly runs on main (latest: 2026-06-04T05:35:26Z). Trigger benchmark-baseline to refresh.
Last updated: 2026-06-04 11:29 UTC

@davidkonigsberg davidkonigsberg merged commit 81bb65d into main Jun 4, 2026
77 checks passed
@davidkonigsberg davidkonigsberg deleted the dependabot-alert-2081-devin branch June 4, 2026 11:35
davidkonigsberg pushed a commit that referenced this pull request Jun 4, 2026
#16235)

chore(deps): remove orphaned seed files for basic-auth-pw-omitted

The seed.yml config for basic-auth-pw-omitted only generates output into
the with-wire-tests/ subfolder. These root-level files were orphaned
from a previous configuration and still referenced aiohttp 3.13.5,
keeping Dependabot alerts #2080 and #2081 open despite the generator
fix in #16230.

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
devin-ai-integration Bot added a commit that referenced this pull request Jun 5, 2026
…E-2026-47266

Both Dependabot alerts #2081 (CVE-2026-47265, cross-origin redirect with
per-request cookies) and #2080 (CVE-2026-47266, deserialization of untrusted
data) reference seed/python-sdk/basic-auth-pw-omitted/poetry.lock which no
longer exists in the repository.

The aiohttp lower bound was already bumped to >=3.14.0 in PR #16230 and all
remaining seed poetry.lock files contain aiohttp 3.14.0 (the patched version).
The orphaned manifest file was removed in PR #16235.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant