Skip to content

build(deps): update uvicorn requirement from ^0.44.0 to >=0.44,<0.50 - #25

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/uvicorn-gte-0.44-and-lt-0.50
Closed

build(deps): update uvicorn requirement from ^0.44.0 to >=0.44,<0.50#25
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/uvicorn-gte-0.44-and-lt-0.50

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 8, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on uvicorn to permit the latest version.

Release notes

Sourced from uvicorn's releases.

Version 0.49.0

What's Changed

Full Changelog: Kludex/uvicorn@0.48.0...0.49.0

Changelog

Sourced from uvicorn's changelog.

0.49.0 (June 3, 2026)

Changed

  • Bump httptools minimum version to 0.8.0 (#2962)
  • Consume duplicate forwarding headers in ProxyHeadersMiddleware (reverses the 0.48.0 behavior of ignoring them) (#2971)

0.48.0 (May 24, 2026)

Changed

  • Default ssl_ciphers to None and use OpenSSL defaults (#2940)

Fixed

  • Ignore duplicate forwarding headers in ProxyHeadersMiddleware (#2944)

0.47.0 (May 14, 2026)

Added

  • Add ssl_context_factory for custom SSLContext configuration (#2920)

Changed

  • Eagerly import the ASGI app in the parent process (#2919)

Fixed

  • Treat fd=0 as a valid file descriptor with reload/workers (#2927)

0.46.0 (April 23, 2026)

Added

  • Support ws_max_size in wsproto implementation (#2915)
  • Support ws_ping_interval and ws_ping_timeout in wsproto implementation (#2916)

Changed

  • Use bytearray for incoming WebSocket message buffer in websockets-sansio (#2917)

0.45.0 (April 21, 2026)

Added

  • Add --reset-contextvars flag to isolate ASGI request context (#2912)
  • Accept os.PathLike for log_config (#2905)
  • Accept log_level strings case-insensitively (#2907)

... (truncated)

Commits
  • 3ef2e3e Version 0.49.0 (#2973)
  • eeb64b1 Consume duplicate forwarding headers in ProxyHeadersMiddleware (#2971)
  • 630f4ac Make the watchfiles reload tests deterministic (#2972)
  • 9154922 chore(deps): bump the github-actions group across 1 directory with 6 updates ...
  • 739727a Migrate docs deploy from Cloudflare Pages to Workers (#2967)
  • be4a240 Gate docs preview deploy on Cloudflare token presence (#2966)
  • c489d7e Bump httptools minimum version to 0.8.0 (#2962)
  • 9f547bd Skip docs preview deploy for Dependabot PRs (#2961)
  • 44446b8 Migrate documentation from MkDocs Material to Zensical (#2959)
  • cfd659c Bump pymdown-extensions to 10.21.3 (#2958)
  • Additional commits viewable in compare view

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 this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Summary by CodeRabbit

  • Chores
    • Updated uvicorn dependency version constraints for expanded compatibility support.

Updates the requirements on [uvicorn](https://github.com/Kludex/uvicorn) to permit the latest version.
- [Release notes](https://github.com/Kludex/uvicorn/releases)
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md)
- [Commits](Kludex/uvicorn@0.44.0...0.49.0)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-version: 0.49.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: automated, dependencies. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

The uvicorn dependency constraint in pyproject.toml is updated from a caret range (^0.44.0) to an explicit interval (>=0.44,<0.50), permitting versions from 0.44 through 0.49 while excluding 0.50 and later. The standard extras remain unchanged.

Changes

Dependency Updates

Layer / File(s) Summary
Uvicorn version constraint
pyproject.toml
The uvicorn dependency version specifier is changed from ^0.44.0 to >=0.44,<0.50, replacing semantic versioning caret notation with an explicit interval while keeping the standard extras.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and specifically describes the main change: updating the uvicorn dependency constraint from ^0.44.0 to >=0.44,<0.50 in the build configuration.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dependabot/pip/uvicorn-gte-0.44-and-lt-0.50

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

@coderabbitai coderabbitai 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@pyproject.toml`:
- Line 12: The uvicorn dependency range in pyproject.toml (the uvicorn = {extras
= ["standard"], version = ">=0.44,<0.50"} entry) is too permissive and can cause
dependency drift; tighten it to the exact tested version (e.g., "==0.44.0") or
narrow the upper bound to the specific verified minor (e.g., ">=0.44,<0.45") and
then regenerate and commit an updated poetry.lock so installs remain
deterministic. Ensure the change is applied to the uvicorn dependency line in
pyproject.toml and that poetry lockfile is updated and committed.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: ff2bcc04-92bd-4a93-93dd-2eefd96c603f

📥 Commits

Reviewing files that changed from the base of the PR and between 9496795 and 0001ead.

📒 Files selected for processing (1)
  • pyproject.toml

Comment thread pyproject.toml
python = "^3.11"
fastapi = "^0.135.1"
uvicorn = {extras = ["standard"], version = "^0.44.0"}
uvicorn = {extras = ["standard"], version = ">=0.44,<0.50"}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check if httptools is directly or indirectly constrained elsewhere
rg -n 'httptools' --type=toml

Repository: cryptoxdog/l9-codegraph

Length of output: 49


🏁 Script executed:

#!/bin/bash
# Search for proxy middleware usage that could be affected by behavior changes
rg -nP '\bProxyHeadersMiddleware\b' --type=py
rg -nP '(X-Forwarded-|proxy.?header)' --type=py -C2

Repository: cryptoxdog/l9-codegraph

Length of output: 49


🏁 Script executed:

#!/bin/bash
# Verify all uvicorn CLI invocations to assess flag compatibility risk
rg -n 'uvicorn' --type=sh --type=dockerfile -C2

Repository: cryptoxdog/l9-codegraph

Length of output: 102


🌐 Web query:

uvicorn changelog breaking changes versions 0.45 0.46 0.47 0.48 0.49

💡 Result:

As of June 8, 2026, the Uvicorn releases from 0.45.0 to 0.49.0 focused primarily on adding features, improving internal implementation details, and addressing specific behaviors in middlewares. While some changes altered existing behavior (notably in ProxyHeadersMiddleware), the official release notes do not explicitly categorize them as "breaking changes." Below is a summary of the releases: 0.45.0 (April 21, 2026) - Added --reset-contextvars flag to isolate ASGI request context [1][2]. - Allowed case-insensitive log_level strings and accepted os.PathLike for log_config [2]. - Reverted the 0.44.0 behavior that emitted http.disconnect on server shutdown for streaming responses [2]. 0.46.0 (April 23, 2026) - Added support for ws_max_size, ws_ping_interval, and ws_ping_timeout in the wsproto implementation [1][3][4]. - Switched to using bytearray for the incoming WebSocket message buffer in websockets-sansio [3][4]. 0.47.0 (May 14, 2026) - Added ssl_context_factory for custom SSLContext configuration [1][5][6]. - Introduced eager import of the ASGI app in the parent process [1][5][6]. - Fixed an issue to treat fd=0 as a valid file descriptor [1][5][6]. 0.48.0 (May 24, 2026) - Changed the default ssl_ciphers to None, utilizing OpenSSL defaults [1][7][8]. - ProxyHeadersMiddleware was updated to ignore duplicate forwarding headers [1][7][8]. 0.49.0 (June 3, 2026) - Bumped the minimum required version of httptools to 0.8.0 [1][9]. - ProxyHeadersMiddleware was updated to consume duplicate forwarding headers, effectively reversing the behavior introduced in version 0.48.0 [1][9]. Top results used: [1][5][8][2][4][9]

Citations:


Narrow/pin the uvicorn version range to avoid dependency drift
pyproject.toml:12 broadens uvicorn from ^0.44.0 to >=0.44,<0.50 (spanning ~0.44–0.49), which can change transitive behavior/dependencies between installs—even though this repo doesn’t reference httptools directly and doesn’t use ProxyHeadersMiddleware/X-Forwarded-* patterns in code. Recommend pinning an exact uvicorn version (and committing an updated poetry.lock) or tightening the upper bound to the specific tested version.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@pyproject.toml` at line 12, The uvicorn dependency range in pyproject.toml
(the uvicorn = {extras = ["standard"], version = ">=0.44,<0.50"} entry) is too
permissive and can cause dependency drift; tighten it to the exact tested
version (e.g., "==0.44.0") or narrow the upper bound to the specific verified
minor (e.g., ">=0.44,<0.45") and then regenerate and commit an updated
poetry.lock so installs remain deterministic. Ensure the change is applied to
the uvicorn dependency line in pyproject.toml and that poetry lockfile is
updated and committed.

@dependabot @github

dependabot Bot commented on behalf of github Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #29.

@dependabot dependabot Bot closed this Jul 6, 2026
@dependabot
dependabot Bot deleted the dependabot/pip/uvicorn-gte-0.44-and-lt-0.50 branch July 6, 2026 06:09
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.

0 participants