Skip to content

build(deps): bump urllib3 to 2.7.0 — CVE patches (closes #640) - #642

Merged
github-actions[bot] merged 1 commit into
mainfrom
build/issue-640-urllib3-bump
May 11, 2026
Merged

build(deps): bump urllib3 to 2.7.0 — CVE patches (closes #640)#642
github-actions[bot] merged 1 commit into
mainfrom
build/issue-640-urllib3-bump

Conversation

@robotrocketscience

@robotrocketscience robotrocketscience commented May 11, 2026

Copy link
Copy Markdown
Owner

Closes #640.

What lands

- urllib3 2.6.3
+ urllib3 2.7.0

Three-line update to uv.lock only. No pyproject.toml change — urllib3 is a transitive dep with no constraint declared.

Why

GitHub surfaced 2 open Dependabot alerts on main:

Alert Severity Range Fix
Sensitive headers forwarded across origins in proxied low-level redirects high >= 1.23, < 2.7.0 2.7.0
Decompression-bomb safeguards bypassed in parts of the streaming API high >= 2.6.0, < 2.7.0 2.7.0

Both fixed upstream in urllib3 2.7.0.

Verification

Out of scope

  • Audit of other transitive deps. This PR is targeted at the two open alerts only.
  • Adding an explicit urllib3 >= constraint in pyproject.toml. The lockfile pin is sufficient; declaring it would imply we directly depend on urllib3, which we don't.

Summary by Sourcery

Build:

  • Bump urllib3 in uv.lock from 2.6.3 to 2.7.0 as a transitive dependency without changing pyproject configuration.

Two open Dependabot alerts on main flagged urllib3 < 2.7.0:

- Sensitive headers forwarded across origins in proxied low-level
  redirects (>= 1.23, < 2.7.0; high severity).
- Decompression-bomb safeguards bypassed in parts of the streaming
  API (>= 2.6.0, < 2.7.0; high severity).

Both fixed upstream in urllib3 2.7.0. urllib3 is a transitive dep
(no constraint in pyproject.toml), so `uv lock --upgrade-package
urllib3` is the minimal surgical fix.

Closes #640.
@robotrocketscience robotrocketscience added the author-einstein PR coordination mutex label May 11, 2026
@coderabbitai

coderabbitai Bot commented May 11, 2026

Copy link
Copy Markdown

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock, !**/*.lock

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ce5a9411-fb3c-46c3-9616-91e7bde84518

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch build/issue-640-urllib3-bump

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@robotrocketscience robotrocketscience added the attn:review Needs review (PR open, awaiting reviewer) label May 11, 2026
@sourcery-ai

sourcery-ai Bot commented May 11, 2026

Copy link
Copy Markdown

🧙 Sourcery has finished reviewing your pull request!


Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@robotrocketscience

Copy link
Copy Markdown
Owner Author

[claim:review:maxwell:2026-05-11T16:06:46Z]

@robotrocketscience

Copy link
Copy Markdown
Owner Author

LGTM (posting as comment because GitHub blocks self-approval under the shared bot identity).

Verified:

  • Lockfile-only diff +3/-3, only urllib3 package touched (2.6.3 → 2.7.0).
  • urllib3 2.7.0 is published on PyPI (release 2026-05-07); SHA256 in the new wheel entry matches the published wheel hash.
  • Local uv run pytest tests/ after uv sync → 3375 passed, 54 skipped.
  • Discretion grep on github/main...HEAD clean.
  • Surgical: no pyproject.toml change (correctly recognizing urllib3 as transitive).

Body's CVE table matches the visible Dependabot alerts. Closes #640 cleanly.

@robotrocketscience robotrocketscience added the ready-to-merge Trigger merge-train: FF main to this PR's head label May 11, 2026
@robotrocketscience

Copy link
Copy Markdown
Owner Author

[release:review:maxwell:2026-05-11T16:09:21Z]

@github-actions github-actions Bot removed the ready-to-merge Trigger merge-train: FF main to this PR's head label May 11, 2026
@github-actions
github-actions Bot merged commit b5484dd into main May 11, 2026
36 of 39 checks passed
@github-actions

Copy link
Copy Markdown

merge-train: merged b5484ddmain via FF push.

@robotrocketscience
robotrocketscience deleted the build/issue-640-urllib3-bump branch May 14, 2026 04:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

attn:review Needs review (PR open, awaiting reviewer) author-einstein PR coordination mutex

Projects

None yet

Development

Successfully merging this pull request may close these issues.

build(deps): bump urllib3 to >=2.7.0 — CVE patches for header-forwarding + decompression-bomb

1 participant