Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump starlette from 0.37.2 to 0.40.0 in the pip group across 1 directory #144

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 20, 2024

Bumps the pip group with 1 update in the / directory: starlette.

Updates starlette from 0.37.2 to 0.40.0

Release notes

Sourced from starlette's releases.

Version 0.40.0

This release fixes a Denial of service (DoS) via multipart/form-data requests.

You can view the full security advisory: GHSA-f96h-pmfr-66vw

Fixed

  • Add max_part_size to MultiPartParser to limit the size of parts in multipart/form-data requests fd038f3.

Version 0.39.2

Fixed

  • Allow use of request.url_for when only "app" scope is available #2672.
  • Fix internal type hints to support python-multipart==0.0.12 #2708.

Full Changelog: encode/starlette@0.39.1...0.39.2

Version 0.39.1

Fixed

  • Avoid regex re-compilation in responses.py and schemas.py #2700.
  • Improve performance of get_route_path by removing regular expression usage #2701.
  • Consider FileResponse.chunk_size when handling multiple ranges #2703.
  • Use token_hex for generating multipart boundary strings #2702.

Full Changelog: encode/starlette@0.39.0...0.39.1

Version 0.39.0

Added

  • Add support for HTTP Range to FileResponse #2697

Full Changelog: encode/starlette@0.38.6...0.39.0

Version 0.38.6

Fixed

  • Close unclosed MemoryObjectReceiveStream in TestClient #2693.

Full Changelog: encode/starlette@0.38.5...0.38.6

... (truncated)

Changelog

Sourced from starlette's changelog.

0.40.0 (October 15, 2024)

This release fixes a Denial of service (DoS) via multipart/form-data requests.

You can view the full security advisory: GHSA-f96h-pmfr-66vw

Fixed

  • Add max_part_size to MultiPartParser to limit the size of parts in multipart/form-data requests fd038f3.

0.39.2 (September 29, 2024)

Fixed

  • Allow use of request.url_for when only "app" scope is available #2672.
  • Fix internal type hints to support python-multipart==0.0.12 #2708.

0.39.1 (September 25, 2024)

Fixed

  • Avoid regex re-compilation in responses.py and schemas.py #2700.
  • Improve performance of get_route_path by removing regular expression usage #2701.
  • Consider FileResponse.chunk_size when handling multiple ranges #2703.
  • Use token_hex for generating multipart boundary strings #2702.

0.39.0 (September 23, 2024)

Added

0.38.6 (September 22, 2024)

Fixed

  • Close unclosed MemoryObjectReceiveStream in TestClient #2693.

0.38.5 (September 7, 2024)

Fixed

  • Schedule BackgroundTasks from within BaseHTTPMiddleware #2688. This behavior was removed in 0.38.3, and is now restored.

0.38.4 (September 1, 2024)

... (truncated)

Commits

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 merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @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.

Summary by Sourcery

Update the Starlette dependency from version 0.37.2 to 0.40.0 to address multiple bug fixes, including a security vulnerability, and to enhance functionality with support for HTTP Range in FileResponse.

Bug Fixes:

  • Fix a Denial of Service (DoS) vulnerability via multipart/form-data requests by adding max_part_size to MultiPartParser.
  • Allow use of request.url_for when only 'app' scope is available.
  • Fix internal type hints to support python-multipart==0.0.12.
  • Avoid regex re-compilation in responses.py and schemas.py to improve performance.
  • Consider FileResponse.chunk_size when handling multiple ranges.
  • Close unclosed MemoryObjectReceiveStream in TestClient.

Enhancements:

  • Add support for HTTP Range to FileResponse.

@dependabot dependabot bot added dependencies Dependency updates and their version upgrades. python Pull requests that update Python code labels Dec 20, 2024
Copy link

sourcery-ai bot commented Dec 20, 2024

Reviewer's Guide by Sourcery

This pull request updates the Starlette dependency from version 0.37.2 to 0.40.0 in the requirements.txt file. The update includes several bug fixes and improvements, such as fixing a Denial of Service vulnerability via multipart/form-data requests, improving performance by avoiding regex re-compilation, and adding support for HTTP Range in FileResponse.

Sequence diagram showing improved multipart/form-data request handling

sequenceDiagram
    participant C as Client
    participant MP as MultiPartParser
    participant S as Server

    Note over MP: New max_part_size limit
    C->>S: POST multipart/form-data request
    S->>MP: Parse request
    alt Part size > max_part_size
        MP-->>S: Reject request
        S-->>C: 413 Request Entity Too Large
    else Part size <= max_part_size
        MP-->>S: Process request
        S-->>C: 200 OK
    end
Loading

Sequence diagram for HTTP Range support in FileResponse

sequenceDiagram
    participant C as Client
    participant FR as FileResponse
    participant S as Server

    C->>S: GET request with Range header
    S->>FR: Handle request
    alt Valid range request
        FR-->>C: 206 Partial Content
        Note over FR,C: Returns requested chunks
    else Invalid range
        FR-->>C: 416 Range Not Satisfiable
    end
Loading

File-Level Changes

Change Details Files
Update Starlette dependency version
  • Bumped Starlette version from 0.37.2 to 0.40.0 in requirements.txt
requirements.txt

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.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a 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. You can also use
    this command to specify where the summary should be inserted.

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

@dependabot dependabot bot force-pushed the dependabot/pip/pip-f0796b5709 branch from f295028 to 01ff4a5 Compare December 23, 2024 22:12
@surchs
Copy link
Contributor

surchs commented Jan 7, 2025

@dependabot rebase

Bumps the pip group with 1 update in the / directory: [starlette](https://github.com/encode/starlette).


Updates `starlette` from 0.37.2 to 0.40.0
- [Release notes](https://github.com/encode/starlette/releases)
- [Changelog](https://github.com/encode/starlette/blob/master/docs/release-notes.md)
- [Commits](encode/starlette@0.37.2...0.40.0)

---
updated-dependencies:
- dependency-name: starlette
  dependency-type: direct:production
  dependency-group: pip
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/pip/pip-f0796b5709 branch from 01ff4a5 to 94187eb Compare January 7, 2025 14:39
@surchs
Copy link
Contributor

surchs commented Jan 7, 2025

We'll have to bump to https://github.com/fastapi/fastapi/releases/tag/0.115.3 so fastapi can handle starlette>0.40

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Dependency updates and their version upgrades. python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant