Skip to content

chore(deps): bump python-multipart from 0.0.22 to 0.0.31#3112

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/python-multipart-0.0.31
Open

chore(deps): bump python-multipart from 0.0.22 to 0.0.31#3112
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/python-multipart-0.0.31

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 16, 2026

Copy link
Copy Markdown
Contributor

Bumps python-multipart from 0.0.22 to 0.0.31.

Release notes

Sourced from python-multipart's releases.

Version 0.0.31

What's Changed

Full Changelog: Kludex/python-multipart@0.0.30...0.0.31

Version 0.0.30

What's Changed

Full Changelog: Kludex/python-multipart@0.0.29...0.0.30

Version 0.0.29

What's Changed

Full Changelog: Kludex/python-multipart@0.0.28...0.0.29

Version 0.0.28

What's Changed

Full Changelog: Kludex/python-multipart@0.0.27...0.0.28

Version 0.0.27

What's Changed

Full Changelog: Kludex/python-multipart@0.0.26...0.0.27

Version 0.0.26

What's Changed

Full Changelog: Kludex/python-multipart@0.0.25...0.0.26

Version 0.0.25

What's Changed

... (truncated)

Changelog

Sourced from python-multipart's changelog.

0.0.31 (2026-06-04)

  • Speed up multipart header parsing and callback dispatch #295.
  • Bound header field name size before validating #296.
  • Validate Content-Length is non-negative in parse_form #297.

0.0.30 (2026-05-31)

  • Parse application/x-www-form-urlencoded bodies per the WHATWG URL standard, treating only & as a field separator #290.
  • Ignore RFC 2231/5987 extended parameters (name*, filename*) in parse_options_header, keeping the plain parameter authoritative per RFC 7578 §4.2 #291.

0.0.29 (2026-05-17)

  • Handle malformed RFC 2231 continuations in parse_options_header #270.

0.0.28 (2026-05-10)

  • Speed up partial-boundary tail scan via bytes.find #281.
  • Cap multipart boundary length at 256 bytes #282.

0.0.27 (2026-04-27)

  • Add multipart header limits #267.
  • Pass parse offsets via constructors #268.

0.0.26 (2026-04-10)

  • Skip preamble before the first multipart boundary more efficiently #262.
  • Silently discard epilogue data after the closing multipart boundary #259.

0.0.25 (2026-04-10)

  • Add MIME content type info to File #143.
  • Handle CTE values case-insensitively #258.
  • Remove custom FormParser classes #257.
  • Add UPLOAD_DELETE_TMP to FormParser config #254.
  • Emit field_end for trailing bare field names on finalize #230.
  • Handle multipart headers case-insensitively #252.
  • Apply Apache-2.0 properly #247.

0.0.24 (2026-04-05)

  • Validate chunk_size in parse_form() #244.

0.0.23 (2026-04-05)

  • Remove unused trust_x_headers parameter and X-File-Name fallback #196.
  • Return processed length from QuerystringParser._internal_write #229.
  • Cleanup metadata dunders from __init__.py #227.
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 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)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [python-multipart](https://github.com/Kludex/python-multipart) from 0.0.22 to 0.0.31.
- [Release notes](https://github.com/Kludex/python-multipart/releases)
- [Changelog](https://github.com/Kludex/python-multipart/blob/main/CHANGELOG.md)
- [Commits](Kludex/python-multipart@0.0.22...0.0.31)

---
updated-dependencies:
- dependency-name: python-multipart
  dependency-version: 0.0.31
  dependency-type: indirect
...

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 Jul 16, 2026

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM — routine Dependabot lockfile bump of python-multipart 0.0.22 → 0.0.31.

What was reviewed:

  • The diff is confined to uv.lock; the pyproject.toml floor (python-multipart>=0.0.9) is unchanged, so this only affects the SDK's own dev/CI environment, not downstream installs.
  • Checked the SDK's exposure to the release-note changes: python-multipart is used indirectly via starlette's request.form() in the OAuth handlers (authorize, token, revoke, client_auth). The 0.0.30 urlencoded-separator change (only & splits fields) matches standard OAuth form encoding, and CI's test suite exercises these endpoints.
  • Verified the lock entry is a normal registry update (new sdist/wheel URLs + hashes from pypi.org).
Extended reasoning...

Overview

This is a Dependabot-generated PR that bumps python-multipart from 0.0.22 to 0.0.31 in uv.lock only. No source code, no pyproject.toml constraint, and no CI configuration is touched. The dependency floor remains >=0.0.9, consistent with the repo's guideline of not raising floors for upstream changes alone — this bump merely refreshes the pinned version used for the SDK's own locked environments.

Security risks

The upstream changes between 0.0.22 and 0.0.31 are largely hardening (bounded header field names, boundary-length cap, non-negative Content-Length validation, RFC 2231 parameter handling) plus performance work — net-positive from a security standpoint. The lock entry points at pypi.org with updated sha256 hashes for both sdist and wheel, which is the normal shape for a registry version bump; uv verifies these hashes at install time.

Level of scrutiny

Low. Lockfile-only dependency bumps are mechanical and reversible. The one behavior-relevant upstream change is 0.0.30's switch to treating only & as the urlencoded field separator (WHATWG-aligned). The SDK parses form bodies only in the OAuth handlers via starlette's request.form(), and OAuth 2.0 mandates standard &-separated application/x-www-form-urlencoded bodies, so this does not affect the SDK's behavior in practice.

Other factors

The bug hunting system found no issues, and the CI matrix (3.10–3.14 across platforms, locked and lowest-direct resolutions) exercises the form-parsing paths through the auth handler tests, which would surface any regression from the new version. No prior reviews or outstanding comments exist on this PR.

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

Labels

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