Skip to content

chore(deps): bump h2 from 4.3.0 to 4.4.1 in /packages/python-sdk in the uv group across 1 directory - #1651

Open
dependabot[bot] wants to merge 2 commits into
mainfrom
dependabot/uv/packages/python-sdk/uv-a661626dcb
Open

chore(deps): bump h2 from 4.3.0 to 4.4.1 in /packages/python-sdk in the uv group across 1 directory#1651
dependabot[bot] wants to merge 2 commits into
mainfrom
dependabot/uv/packages/python-sdk/uv-a661626dcb

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 7, 2026

Copy link
Copy Markdown
Contributor

Bumps the uv group with 1 update in the /packages/python-sdk directory: h2.

Updates h2 from 4.3.0 to 4.4.1

Changelog

Sourced from h2's changelog.

4.4.1 (2026-08-03)

Bugfixes

  • Performance improvement: remove consumed frames in-place from data buffer.
  • Reject duplicate Host headers in request headers. Thanks to Sunand Mohan for the report.

4.4.0 (2026-07-23)

API Changes (Backward Incompatible)

  • Support for Python 3.9 has been removed.
  • Support for PyPy 3.9 has been removed.
  • Stream.end_stream() now raises NoSuchStreamError or StreamClosedError exceptions, instead of a generic KeyError.
  • Duplicate content-length headers with different values now raise ProtocolError. Previously, the first content-length header was accepted and later conflicting values were ignored. Thanks to Harshal Parekh for the report.
  • Parse content-length headers according to RFC9110 grammar for numbers (1*DIGIT). Thanks to Arkadiusz Marta for the report.
  • backfill from v4.3.0 Convert emitted events into Python dataclass, which introduces new constructors with required arguments. Instantiating these events without arguments, as previously commonly used API pattern, will no longer work.

API Changes (Backward Compatible)

  • Support for Python 3.14 has been added.
  • H2Connection.receive_data now accepts any byte-like object that implements the buffer protocol, such as bytes, bytearray, and memoryview. Existing bytes callers are unaffected.
  • Align CONNECT pseudo-header validation with RFC 9113 s8.3 and RFC 8441 s4. Ordinary CONNECT now requires :method=CONNECT and :authority, and forbids :scheme/:path. Extended CONNECT (e.g., WebSocket) requires :scheme, :path, :authority plus :protocol. (PR #1309)
  • Fix incorrect substring matching of secure header in cookie and :method.

Bugfixes

  • Fix to allow sending 0 bytes on a stream even if the flow control window is negative.
  • Reject non-zero SETTINGS_ENABLE_PUSH values received from servers.
Commits
  • bc239af v4.4.1
  • 92b925e add test for duplicate host headers
  • 292a408 reject duplicate Host headers in request headers
  • 04d3b87 update changelog
  • 439b970 prepare for next release cycle
  • 9a7ff74 performance: remove consumed frames in place from data buffer (#1321)
  • 6cce763 v4.4.0
  • dfafda3 Bump pytest from 8.4.2 to 9.0.3 (#1320)
  • b45207c dependencies and packaging++
  • c40145f parse content-length headers according to RFC9110 grammar for numbers (1*DI...
  • Additional commits viewable in compare view

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 <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps the uv group with 1 update in the /packages/python-sdk directory: [h2](https://github.com/python-hyper/h2).


Updates `h2` from 4.3.0 to 4.4.1
- [Changelog](https://github.com/python-hyper/h2/blob/master/CHANGELOG.rst)
- [Commits](python-hyper/h2@v4.3.0...v4.4.1)

---
updated-dependencies:
- dependency-name: h2
  dependency-version: 4.4.1
  dependency-type: direct:production
  dependency-group: uv
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Aug 7, 2026
@dependabot
dependabot Bot requested a review from mishushakov as a code owner August 7, 2026 14:17
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Aug 7, 2026
@cla-bot cla-bot Bot added the cla-signed label Aug 7, 2026
@changeset-bot

changeset-bot Bot commented Aug 7, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 225b19f

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@e2b/python-sdk Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Package Artifacts

Built from 24d5505. Download artifacts from this workflow run.

JS SDK (e2b@2.38.2-dependabot-uv-packages-python-sdk-uv-a661626dcb.0):

npm install ./e2b-2.38.2-dependabot-uv-packages-python-sdk-uv-a661626dcb.0.tgz

CLI (@e2b/cli@2.16.2-dependabot-uv-packages-python-sdk-uv-a661626dcb.0):

npm install ./e2b-cli-2.16.2-dependabot-uv-packages-python-sdk-uv-a661626dcb.0.tgz

Python SDK (e2b==2.37.1+dependabot.uv.packages.python.sdk.uv.a661626dcb):

pip install ./e2b-2.37.1+dependabot.uv.packages.python.sdk.uv.a661626dcb-py3-none-any.whl

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ef70caf3ec

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

"black==26.3.1",
"e2b-openapi-python-client==0.26.2",
"datamodel-code-generator==0.64.0",
"datamodel-code-generator==0.72.2",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep the local codegen pin aligned

This bump makes uv run make generate-mcp use datamodel-code-generator 0.72.2 after make init, but repository make codegen still builds codegen.Dockerfile:24 with 0.64.0; the adjacent comment says these pins mirror so local output matches CI. Any future MCP regeneration can now produce different e2b/sandbox/mcp.py depending on whether the developer used the uv environment or the Docker codegen path, so either update the Dockerfile in the same change or leave this pin at 0.64.0.

Useful? React with 👍 / 👎.

Comment on lines 48 to 54
codegen = [
"black==26.3.1",
"e2b-openapi-python-client==0.26.2",
"datamodel-code-generator==0.64.0",
"datamodel-code-generator==0.72.2",
"protoc-gen-connectrpc==0.11.1",
"protoc-gen-py==0.1.1",
]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔴 This PR (nominally an h2 bump) also bumps datamodel-code-generator from 0.64.0 to 0.72.2 in pyproject.toml's codegen dev-dependency group, but codegen.Dockerfile:24 still pins 0.64.0 and was not updated. The comment directly above this group states pins mirror codegen.Dockerfile so local and CI codegen output match — this bump breaks that invariant.

Extended reasoning...

The bug: packages/python-sdk/pyproject.toml bumps the codegen dependency-group pin for datamodel-code-generator from 0.64.0 to 0.72.2 (an 8-minor-version jump), and uv.lock is updated to match. However, codegen.Dockerfile:24 still reads:

RUN pip install black==26.3.1 e2b-openapi-python-client==0.26.2 datamodel-code-generator==0.64.0 protoc-gen-connectrpc==0.11.1 protoc-gen-py==0.1.1

That line was not touched by this PR.

Why existing code doesn'''t prevent it: The comment directly above the codegen group in pyproject.toml (lines 43-47) is explicit about the intended invariant: "Pins mirror codegen.Dockerfile so local output matches CI ... keep the versions in sync." There is no automated check (lint/CI job) enforcing that these two pins stay identical — it'''s a documented convention that this PR silently violates. CLAUDE.md at the repo root reinforces the same expectation for codegen-related pins generally.

Code path that triggers it / step-by-step proof:

  1. A contributor runs uv run make generate-api (or similar) locally after this PR merges. uv resolves datamodel-code-generator per the updated pyproject.toml/uv.lock, i.e. version 0.72.2.
  2. CI/Docker-based codegen instead builds from codegen.Dockerfile, which still installs datamodel-code-generator==0.64.0 via pip install.
  3. datamodel-code-generator is a code generator whose output (formatting, model emission, typing details) can and does change across an 8-minor version range.
  4. If the local contributor regenerates code with 0.72.2 and commits it, CI running the Docker path with 0.64.0 would produce a diff against the committed output (or vice versa for CI-based regeneration), causing generated-code drift / CI mismatches that are confusing to debug because the two toolchains silently disagree.

Impact: No runtime/shipped-SDK behavior is affected today — the h2 bump itself is fine, and no generated files were touched by this PR. The blast radius is limited to the next time someone runs codegen: local and CI/Docker outputs can diverge, and whoever hits this will have to reverse-engineer why the generator behaves differently in the two environments, since the version pins now visibly disagree with the comment describing them as synced.

Fix: Either revert the datamodel-code-generator bump (it looks like an unrelated change swept in by Dependabot/the uv lockfile resolution alongside the h2 bump, given the PR title is "bump h2") or bump codegen.Dockerfile:24'''s datamodel-code-generator==0.64.0 to ==0.72.2 to match, keeping the two pins in sync per the documented invariant.

On severity: This doesn'''t break anything a user would hit today, and it'''s trivial to fix (one line in the Dockerfile, or drop the unrelated bump). But it directly and knowingly violates an explicit, documented invariant in the repo ("keep the versions in sync"), and the failure mode (silent generated-code drift, confusing CI diffs) is exactly the kind of thing that pin comment exists to prevent. All three independent verifiers reached the same conclusion with no refutations. I'''m filing as normal given it contradicts an explicit stated sync requirement, but flag this is close to the nit/normal boundary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants