Repository navigation
fix(deps): update dependency starlette to v1 - #36
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
2 times, most recently
from
May 18, 2026 10:36
e3d39fc to
a26b9b2
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
3 times, most recently
from
May 28, 2026 17:04
c85d457 to
040d65d
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
May 31, 2026 04:38
040d65d to
3ae1898
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
2 times, most recently
from
June 12, 2026 18:39
49b66d9 to
01816fd
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
July 21, 2026 01:54
01816fd to
71ab4f8
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
3 times, most recently
from
August 5, 2026 17:35
81d9582 to
8fe018a
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
2 times, most recently
from
August 8, 2026 21:56
ea6c4df to
effd27b
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
August 26, 2026 15:38
effd27b to
d1ce52d
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
September 1, 2026 01:06
d1ce52d to
abea85c
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
2 times, most recently
from
September 3, 2026 03:25
abea85c to
fc9313a
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
3 times, most recently
from
September 7, 2026 23:09
937ec31 to
27a10d1
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
September 15, 2026 15:32
27a10d1 to
b894f92
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
September 23, 2026 17:47
b894f92 to
d13832c
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
2 times, most recently
from
October 18, 2026 17:30
3e0b255 to
f99b64c
Compare
renovate
Bot
force-pushed
the
renovate/starlette-1.x
branch
from
October 24, 2026 17:28
f99b64c to
57613c4
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
>=0.52.1,<1.0.0→>=1.10.0,<1.11.0Release Notes
Kludex/starlette (starlette)
v1.10.0: Version 1.10.0Compare Source
📝 Leaner URL-encoded form parsing
Starlette 1.10.0 parses URL-encoded forms with less memory and CPU, no longer drops the last field when a stream ends early, and lets you compare
FormDatathat holds several uploads under one key.uv pip install starlette==1.10.0FormParserbuilds each field in the parser callbacks instead of queueing every event and replaying it. On CodSpeed, 1000 fields went from 42.8 ms to 34.9 ms and from 63.5 KB to 54.5 KB, and themax_fieldslimit case went from 6,880 B to 864 B.b""no longer lose their last field.FormDatawith repeated uploads can be compared (#3619). Comparing twoFormDataobjects with severalUploadFilevalues under the same key used to raiseTypeError.QueryParams("a=1&a=2")andQueryParams("a=2&a=1")are no longer equal, matching whatgetlist()returns.starlette.formparsers.FormMessageis deprecated (#3724). The parser no longer uses it, andFormParser.messagesis gone. CallingFormMessage(...)emits aStarletteDeprecationWarning.🧭 Routing and URL generation
url_path_for("route", category="{id}", id="42")on/{category}/{id}now returns/{id}/42instead of/42/42. Substitution also got faster, from 549 ns to 520 ns with two parameters and from 1,078 ns to 779 ns with five.Matchmembers are compared by identity, cutting up to 4.9% of the instructions per dispatch in the routing benchmarks.WSGIMiddlewarestripsroot_pathonly at a path segment boundary (#3718). A request to/applicationunder aroot_pathof/appno longer becomes/lication.FloatConvertorreports NaN and infinity correctly (#3716). NaN was reported as a negative float.🛡️ Middleware, responses and config
HTTPException, no longer pins per-request objects in memory.http.response.startwithoutheaders(#3721).BaseHTTPMiddleware,GZipMiddlewareandSessionMiddlewaredefault the omitted field to an empty list instead of raisingKeyError.FileResponseignoresRangeon methods other thanGETandHEAD(#3679). APOSTendpoint that returns a file now sends the full file, as RFC 9110 requires.Configstrips one pair of matching outer quotes from env file values (#3720).KEY='say "hi"'now reads assay "hi"instead ofsay "hi.Full changelog: 1.9.0...1.10.0
v1.9.0: Version 1.9.0Compare Source
This release streams
TestClientresponse bodies, soclient.stream()returns before the application finishes. It also escapes path delimiters when building URLs, matches host names case-insensitively, and keeps every existingVaryheader.Changed
TestClientresponse bodies, soclient.stream()returns before the application finishes. Closing an unfinished streamed response now cancels the application #3491.Fixed
?,#,\and a leading//in the request path when buildingrequest.url, and\and a leading//inurl_path_for#3671.Content-Lengthwhen the response body is a typed or multidimensionalmemoryview#3622.HEADin theAllowheader ofHTTPEndpoint405 responses whenGETis defined #3585.Hostrouting andTrustedHostMiddleware#3542.Varyheader inMutableHeaders.add_vary_header(), used byGZipMiddlewareandSessionMiddleware#3675.Full changelog: 1.8.0...1.9.0
v1.8.0: Version 1.8.0Compare Source
This release adds HTTP 103 Early Hints, preserves response trailers through
GZipMiddleware, and stopsFileResponsetransfers when clients disconnect. Starlette now requires Python 3.11.Added
Request.send_early_hints()for HTTP 103 Early Hints through the ASGIhttp.response.early_hintextension #3435.Changed
application/grpcandapplication/grpc+...) fromGZipMiddlewarecompression by default #3565.http.response.startimmediately inGZipMiddlewarefor responses with an existingContent-Encoding, status206, or an excluded content type, instead of waiting for the first body chunk #3631.Fixed
GZipMiddleware#3565.FileResponsetransfers when the client disconnects #3523.RangewhenIf-Rangecontains a weak ETag #3567.Allow: GET, HEADinStaticFiles405responses #3640.Request.stream()generators deterministically, avoiding "Exception ignored" errors with stackedBaseHTTPMiddleware#3628.Vary: CookiewhenSession.pop()removes an existing key #3186.Max-Age=0on the session cookie whenSessionMiddlewareusesmax_age=0#3651.URL.replace()#3617.Full changelog: 1.7.0...1.8.0
v1.7.0: Version 1.7.0Compare Source
This release adds experimental OpenTelemetry tracing, HTTP
QUERYsupport, and response trailers inTestClient. Starlette now requires AnyIO 4.Added
OpenTelemetryMiddlewarefor HTTP server spans, with URL exclusions and custom tracer providers #3438, #3463, and #3520.scope["route"]#3438.QUERYHTTP method inHTTPEndpoint, CORS, and OpenAPI 3.2 schema generation #3489.TestClientand expose them throughresponse.extensions["http.response.trailers"]#3563.SessionMiddleware#3510.partitionedtoResponse.delete_cookie()on Python 3.14 and later #3376.TrustedHostMiddlewareandTestClient#3471.Changed
anyio>=4.0.0,<5, dropping support for AnyIO 3 #3512.WebSocketDisconnected, aRuntimeErrorsubclass, for disconnected WebSocket operations #2767.Collection[str]inCORSMiddlewareconfiguration annotations, including sets and frozensets #3518.Fixed
BaseHTTPMiddleware#3476.400for invalid multipart parser input #3492.Vary: Originon all normal CORS responses and vary preflight responses by all request headers that affect them #3516 and #3517.Hostheaders and IPv6 authorities consistently across URL construction, host routing, and redirect middleware #3472.Rangeheaders whenFileResponsehas a status other than200, preserving its status and full body #3568.If-None-Match: *inStaticFiles#3201.StaticFileswithout raising an assertion error #3532.popitem()and|=#3436.WebSocketEndpoint.decode()#3372.identityonSimpleUserandUnauthenticatedUser#3271.HTTPExceptionto use non-standard status codes without an explicitdetail#3545.TestClientand add explicit imports inWSGIMiddlewarefor AnyIO 4.15 compatibility #3498 and #3501.ServerErrorMiddleware#2858.Full changelog: 1.6.0...1.7.0
v1.6.0: Version 1.6.0Compare Source
What's Changed
max_body_sizetoStarletteand route classes by @Kludex in #3431http.response.debuginfo via response extensions by @y2kbugger in #3130New Contributors
Full Changelog: Kludex/starlette@1.5.1...1.6.0
v1.5.1: Version 1.5.1Compare Source
What's Changed
bytes=5-4by @nikolauspschuetz in encode#3389FileResponseto 100 ranges by @Kludex in encode#3430Full Changelog: Kludex/starlette@1.5.0...1.5.1
v1.5.0: Version 1.5.0Compare Source
This release is all about giving
GZipMiddlewaresome love. 🗜️What's Changed
exclude_content_typesparameter toGZipMiddlewareby @Kludex in encode#3418GZipMiddlewareby @Kludex in encode#3420GZipMiddlewareby @Kludex in encode#3421Full Changelog: Kludex/starlette@1.4.1...1.5.0
v1.4.1: Version 1.4.1Compare Source
What's Changed
thread_minimum_sizeinGZipResponderby @Kludex in #3415Full Changelog: Kludex/starlette@1.4.0...1.4.1
v1.4.0: Version 1.4.0Compare Source
What's Changed
zlib.compressobjinstead ofGzipFileinGZipMiddlewareby @Kludex in #3411New Contributors
Full Changelog: Kludex/starlette@1.3.1...1.4.0
v1.3.1: Version 1.3.1Compare Source
What's Changed
StarletteDeprecationWarninginstead ofDeprecationWarningby @Kludex in #3119max_fieldsandmax_part_sizeinFormParserby @Kludex in #3329FormParserlimits in parser callbacks by @Kludex in #3331Full Changelog: Kludex/starlette@1.3.0...1.3.1
v1.3.0: Version 1.3.0Compare Source
What's Changed
FileResponseby @jiyujie2006 in #3307OSErroralongsideMultiPartExceptionwhen closing temp files by @N3XT3R1337 in #3191httpx2to thefullextra by @Kludex in #3323removeprefixto strip weak ETag indicator inis_not_modifiedby @gnosyslambda in #3193request.urlfrom structured components by @Kludex in #3326New Contributors
Full Changelog: Kludex/starlette@1.2.1...1.3.0
v1.2.1: Version 1.2.1Compare Source
What's Changed
httpx2for type checking in thetestclientmodule by @leifwar in #3304New Contributors
Full Changelog: Kludex/starlette@1.2.0...1.2.1
v1.2.0: Version 1.2.0Compare Source
What's Changed
Full Changelog: Kludex/starlette@1.1.0...1.2.0
v1.1.0: Version 1.1.0Compare Source
What's Changed
"application/octet-stream"as theFileResponsemedia type fallback by @ATOM00blue in #3283HTTPEndpointby @Kludex in #3286StaticFiles.lookup_pathby @Kludex in #3287New Contributors
Full Changelog: Kludex/starlette@1.0.1...1.1.0
v1.0.1: Version 1.0.1Compare Source
What's Changed
Hostheader when constructingrequest.urlby @Kludex in #3279Full Changelog: Kludex/starlette@1.0.0...1.0.1
v1.0.0: Version 1.0.0Compare Source
Starlette 1.0 is here! 🎉
After nearly eight years since its creation, Starlette has reached its first stable release.
A special thank you to @lovelydinosaur, the creator of Starlette, Uvicorn, HTTPX and MkDocs, whose work helped to lay the foundation for the modern async Python ecosystem. 🙏
Thank you to @adriangb, @graingert, @agronholm, @florimondmanca, @aminalaee, @tiangolo, @alex-oleshkevich, @abersheeran, and @uSpike for helping make Starlette what it is today. And to all my sponsors - especially @tiangolo, @huggingface, and @elevenlabs - thank you for your support!
Thank you to all 290+ contributors who have shaped Starlette over the years! ❤️
Read more on the blog post.
Check out the full release notes at https://www.starlette.io/release-notes/#100-march-22-2026
Full Changelog: Kludex/starlette@1.0.0rc1...1.0.0
Configuration
📅 Schedule: (UTC)
* 0-3 * * *)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.