Skip to content

Bump locked aiohttp and cryptography for HIGH severity CVEs - #6837

Open
masenf wants to merge 3 commits into
mainfrom
claude/sec-alerts-aiohttp-cryptography-ypb8ve
Open

Bump locked aiohttp and cryptography for HIGH severity CVEs#6837
masenf wants to merge 3 commits into
mainfrom
claude/sec-alerts-aiohttp-cryptography-ypb8ve

Conversation

@masenf

@masenf masenf commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Dependabot flagged two transitive dependencies in uv.lock:

aiohttp 3.14.1 -> 3.14.3 (GHSA-cq5v-8q36-5273 / CVE-2026-69244)
cryptography 49.0.0 -> 50.0.0 (GHSA-g6cj-pr64-35w5 / CVE-2026-69247)

Both reach the lock only through the docs app: reflex-enterprise pulls
asgiproxy (-> aiohttp) and joserfc (-> cryptography). Neither is a
dependency of the published reflex package, so this is a lockfile-only
fix with no impact on installs of reflex itself.

aiohttp 3.14.3 published outside the 7 day exclude-newer window and
resolves on its own. cryptography 50.0.0 published inside it, so add an
exclude-newer exemption alongside the existing starlette one. Since
cryptography is transitive there is no version floor to pin, and the
exemption keeps future security releases resolvable immediately rather
than aging out of the window first.

Verified the patched versions against their consumers: joserfc 1.7.1
round-trips a JWT on cryptography 50.0.0, and asgiproxy 0.2.0 imports
cleanly on aiohttp 3.14.3.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D

Review in cubic

claude added 2 commits August 4, 2026 01:04
Dependabot flagged two transitive dependencies in uv.lock:

  aiohttp       3.14.1 -> 3.14.3  (GHSA-cq5v-8q36-5273 / CVE-2026-69244)
  cryptography  49.0.0 -> 50.0.0  (GHSA-g6cj-pr64-35w5 / CVE-2026-69247)

Both reach the lock only through the docs app: reflex-enterprise pulls
asgiproxy (-> aiohttp) and joserfc (-> cryptography). Neither is a
dependency of the published reflex package, so this is a lockfile-only
fix with no impact on installs of reflex itself.

aiohttp 3.14.3 published outside the 7 day exclude-newer window and
resolves on its own. cryptography 50.0.0 published inside it, so add an
exclude-newer exemption alongside the existing starlette one. Since
cryptography is transitive there is no version floor to pin, and the
exemption keeps future security releases resolvable immediately rather
than aging out of the window first.

Verified the patched versions against their consumers: joserfc 1.7.1
round-trips a JWT on cryptography 50.0.0, and asgiproxy 0.2.0 imports
cleanly on aiohttp 3.14.3.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D
`chore` is not a configured towncrier type in pyproject.toml (the types
are breaking, deprecation, feature, bugfix, performance, docs, misc), so
`_has_pending_fragments()` in scripts/release.py skipped these files and
they would never have reached a CHANGELOG:

  news/6836.chore.md                      -> news/6836.misc.md
  news/+sec-aiohttp-cryptography.chore.md -> news/+sec-aiohttp-cryptography.misc.md

Both now render under the Miscellaneous heading, verified with
`towncrier build --draft`.

Also expand the dependency-bump entry: the aiohttp 3.14.1 -> 3.14.3 jump
clears CVE-2026-59881 and CVE-2026-69243 (both fixed in 3.14.2) in
addition to the reported CVE-2026-69244, and the entry now notes these
are docs-app transitive dependencies rather than shipped ones.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D
@masenf
masenf requested a review from a team as a code owner August 4, 2026 02:31
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.

Replaces the `+`-prefixed placeholder now that the PR number is known, so
the changelog entry links back to the pull request.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D
@codspeed-hq

codspeed-hq Bot commented Aug 4, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 26 untouched benchmarks
⏩ 8 skipped benchmarks1


Comparing claude/sec-alerts-aiohttp-cryptography-ypb8ve (1c95997) with main (a348aea)

Open in CodSpeed

Footnotes

  1. 8 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@greptile-apps

greptile-apps Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Updates the docs workspace’s locked transitive dependencies to patched releases and exempts cryptography from the repository’s package-age restriction so security releases can resolve immediately.

  • Locks aiohttp 3.14.3 and cryptography 50.0.0 with regenerated distribution metadata.
  • Adds the cryptography exclude-newer exemption in project and lock configuration.
  • Adds a security-update news fragment and corrects an existing fragment’s Towncrier type.

Confidence Score: 5/5

The PR appears safe to merge with no actionable defects identified in the dependency configuration, generated lockfile, or news fragments.

The patched transitive dependencies remain resolvable for the docs workspace’s supported environment, the resolver exemption is represented consistently in project and lock configuration, and the fragment rename aligns with the configured changelog types.

Important Files Changed

Filename Overview
pyproject.toml Adds a documented cryptography exemption to the existing uv exclude-newer package table; no actionable issue found.
uv.lock Regenerates the workspace lock for patched aiohttp and cryptography releases with consistent dependency and artifact metadata.
news/6837.misc.md Adds a correctly named miscellaneous news fragment describing the transitive security dependency updates.
news/6836.misc.md Renames an existing fragment from the unsupported chore type to the configured misc type.

Reviews (1): Last reviewed commit: "Name the dependency-bump news fragment a..." | Re-trigger Greptile

masenf added a commit that referenced this pull request Aug 4, 2026
* Update dev pillow pin to 12.3 (#6836)

* Bump locked aiohttp and cryptography for HIGH severity CVEs

Dependabot flagged two transitive dependencies in uv.lock:

  aiohttp       3.14.1 -> 3.14.3  (GHSA-cq5v-8q36-5273 / CVE-2026-69244)
  cryptography  49.0.0 -> 50.0.0  (GHSA-g6cj-pr64-35w5 / CVE-2026-69247)

Both reach the lock only through the docs app: reflex-enterprise pulls
asgiproxy (-> aiohttp) and joserfc (-> cryptography). Neither is a
dependency of the published reflex package, so this is a lockfile-only
fix with no impact on installs of reflex itself.

aiohttp 3.14.3 published outside the 7 day exclude-newer window and
resolves on its own. cryptography 50.0.0 published inside it, so add an
exclude-newer exemption alongside the existing starlette one. Since
cryptography is transitive there is no version floor to pin, and the
exemption keeps future security releases resolvable immediately rather
than aging out of the window first.

Verified the patched versions against their consumers: joserfc 1.7.1
round-trips a JWT on cryptography 50.0.0, and asgiproxy 0.2.0 imports
cleanly on aiohttp 3.14.3.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D

* Rename chore news fragments to misc so they materialize

`chore` is not a configured towncrier type in pyproject.toml (the types
are breaking, deprecation, feature, bugfix, performance, docs, misc), so
`_has_pending_fragments()` in scripts/release.py skipped these files and
they would never have reached a CHANGELOG:

  news/6836.chore.md                      -> news/6836.misc.md
  news/+sec-aiohttp-cryptography.chore.md -> news/+sec-aiohttp-cryptography.misc.md

Both now render under the Miscellaneous heading, verified with
`towncrier build --draft`.

Also expand the dependency-bump entry: the aiohttp 3.14.1 -> 3.14.3 jump
clears CVE-2026-59881 and CVE-2026-69243 (both fixed in 3.14.2) in
addition to the reported CVE-2026-69244, and the entry now notes these
are docs-app transitive dependencies rather than shipped ones.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D

* Name the dependency-bump news fragment after PR #6837

Replaces the `+`-prefixed placeholder now that the PR number is known, so
the changelog entry links back to the pull request.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ULSRWe743saVEBbvBxuL9D

---------

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants