(security) Upgrade Starlette to >= 1.0.1 to fix CVE-2026-48710 (#45675)

Signed-off-by: jperezde <jperezde@redhat.com> Co-authored-by: Isotr0py <mozf@mail2.sysu.edu.cn>

Juan Pérez de Algaba committed Jun 18, 2026 at 21:35 UTC f6ba7209632936d4908499afc799e96f6eee2725
4 files changed +49 -98
requirements/common.txt
+3 -2
@@ -11,13 +11,14 @@ transformers >= 5.5.3
11 tokenizers >= 0.21.1 # Required for fast incremental detokenization.
12 safetensors >= 0.6.2 # MXFP4/MXFP6 dtype support (F8_E8M0, F4) added in 0.6.0: https://github.com/huggingface/safetensors/pull/611
13 protobuf >= 5.29.6, !=6.30.*, !=6.31.*, !=6.32.*, !=6.33.0.*, !=6.33.1.*, !=6.33.2.*, !=6.33.3.*, !=6.33.4.* # Required by LlamaTokenizer, gRPC. CVE-2026-0994
14 -fastapi[standard] >= 0.115.0 # Required by FastAPI's form models in the OpenAI API server's audio transcriptions endpoint.
14 +fastapi[standard] >= 0.133.0, < 0.137.0 # First version supporting Starlette 1.0; < 0.137.0 avoids route-tree change that breaks model-hosting-container-standards handler overrides.
15 +starlette >= 1.0.1 # CVE-2026-48710: Host header injection in < 1.0.1
16 aiohttp >= 3.13.3
17 openai >= 2.0.0 # For Responses API with reasoning content
18 pydantic >= 2.12.0
19 prometheus_client >= 0.18.0
20 pillow # Required for image processing
20 -prometheus-fastapi-instrumentator >= 7.0.0
21 +prometheus-fastapi-instrumentator >= 8.0.0 # v8 unblocks starlette >= 1.0
22 tiktoken >= 0.6.0 # Required for DBRX tokenizer
23 lm-format-enforcer == 0.11.3
24 llguidance >= 1.7.0, < 1.8.0; platform_machine == "x86_64" or platform_machine == "arm64" or platform_machine == "aarch64" or platform_machine == "ppc64le"
requirements/test/cuda.txt
+23 -48
@@ -35,14 +35,11 @@ arctic-inference==0.1.1
35 # via -r requirements/test/cuda.in
36 argcomplete==3.5.1
37 # via datamodel-code-generator
38 -arrow==1.3.0
39 - # via isoduration
38 attrs==24.2.0
39 # via
40 # aiohttp
41 # hypothesis
42 # jsonschema
45 - # pytest-subtests
43 # referencing
44 audioread==3.0.1
45 # via librosa
@@ -57,9 +54,7 @@ azure-identity==1.25.2
54 azure-storage-blob==12.28.0
55 # via runai-model-streamer-azure
56 backoff==2.2.1
60 - # via
61 - # -r requirements/test/cuda.in
62 - # schemathesis
57 + # via -r requirements/test/cuda.in
58 bitsandbytes==0.49.2
59 # via -r requirements/test/cuda.in
60 black==24.10.0
@@ -110,7 +105,6 @@ colorama==0.4.6
105 # via
106 # perceptron
107 # sacrebleu
113 - # schemathesis
108 colorful==0.5.6
109 # via ray
110 colorlog==6.10.1
@@ -183,7 +177,7 @@ et-xmlfile==2.0.0
177 # via openpyxl
178 evaluate==0.4.3
179 # via lm-eval
186 -fastapi==0.128.0
180 +fastapi==0.136.3
181 # via
182 # -c requirements/common.txt
183 # gpt-oss
@@ -206,8 +200,6 @@ filelock==3.16.1
200 # virtualenv
201 fonttools==4.55.0
202 # via matplotlib
209 -fqdn==1.5.1
210 - # via jsonschema
203 frozendict==2.4.6
204 # via einx
205 frozenlist==1.5.0
@@ -269,7 +261,7 @@ h11==0.14.0
261 # uvicorn
262 h2==4.3.0
263 # via httpx
272 -harfile==0.3.0
264 +harfile==0.5.0
265 # via schemathesis
266 hf-xet==1.4.3
267 # via huggingface-hub
@@ -309,7 +301,7 @@ hypothesis==6.131.0
301 # hypothesis-graphql
302 # hypothesis-jsonschema
303 # schemathesis
312 -hypothesis-graphql==0.11.1
304 +hypothesis-graphql==0.13.0
305 # via schemathesis
306 hypothesis-jsonschema==0.23.1
307 # via schemathesis
@@ -318,7 +310,6 @@ idna==3.10
310 # anyio
311 # email-validator
312 # httpx
321 - # jsonschema
313 # requests
314 # yarl
315 imagehash==4.3.2
@@ -335,8 +326,6 @@ instanttensor==0.1.5
326 # via -r requirements/test/cuda.in
327 isodate==0.7.2
328 # via azure-storage-blob
338 -isoduration==20.11.0
339 - # via jsonschema
329 isort==5.13.2
330 # via datamodel-code-generator
331 jinja2==3.1.6
@@ -356,15 +345,14 @@ joblib==1.4.2
345 # librosa
346 # nltk
347 # scikit-learn
359 -jsonpointer==3.0.0
360 - # via jsonschema
348 jsonschema==4.23.0
349 # via
350 # -c requirements/common.txt
351 # hypothesis-jsonschema
352 # mistral-common
353 # ray
367 - # schemathesis
354 +jsonschema-rs==0.46.5
355 + # via schemathesis
356 jsonschema-specifications==2024.10.1
357 # via jsonschema
358 junit-xml==1.9
@@ -715,18 +703,20 @@ pydantic-core==2.41.1
703 pydantic-extra-types==2.10.5
704 # via mistral-common
705 pygments==2.18.0
718 - # via rich
706 + # via
707 + # pytest
708 + # rich
709 pyjwt==2.11.0
710 # via msal
711 pyparsing==3.2.0
712 # via matplotlib
723 -pyrate-limiter==3.7.0
713 +pyrate-limiter==4.4.0
714 # via schemathesis
715 pystemmer==3.0.0
716 # via mteb
717 pytablewriter==1.2.0
718 # via lm-eval
729 -pytest==8.3.5
719 +pytest==9.1.0
720 # via
721 # -r requirements/test/cuda.in
722 # buildkite-test-collector
@@ -737,10 +727,9 @@ pytest==8.3.5
727 # pytest-mock
728 # pytest-rerunfailures
729 # pytest-shard
740 - # pytest-subtests
730 # pytest-timeout
731 # schemathesis
743 -pytest-asyncio==0.24.0
732 +pytest-asyncio==1.4.0
733 # via -r requirements/test/cuda.in
734 pytest-cov==6.3.0
735 # via -r requirements/test/cuda.in
@@ -752,13 +741,10 @@ pytest-rerunfailures==14.0
741 # via -r requirements/test/cuda.in
742 pytest-shard==0.1.2
743 # via -r requirements/test/cuda.in
755 -pytest-subtests==0.14.1
756 - # via schemathesis
744 pytest-timeout==2.3.1
745 # via -r requirements/test/cuda.in
746 python-dateutil==2.9.0.post0
747 # via
761 - # arrow
748 # botocore
749 # matplotlib
750 # pandas
@@ -829,15 +815,12 @@ requests==2.32.3
815 # tiktoken
816 responses==0.25.3
817 # via genai-perf
832 -rfc3339-validator==0.1.4
833 - # via jsonschema
834 -rfc3987==1.3.8
835 - # via jsonschema
818 rich==13.9.4
819 # via
820 # genai-perf
821 # mteb
822 # perceptron
823 + # schemathesis
824 # typer
825 rouge-score==0.1.2
826 # via lm-eval
@@ -868,7 +851,7 @@ safetensors==0.7.0
851 # segmentation-models-pytorch
852 # timm
853 # transformers
871 -schemathesis==3.39.15
854 +schemathesis==4.21.6
855 # via -r requirements/test/cuda.in
856 scikit-image==0.25.2
857 # via albumentations
@@ -912,7 +895,6 @@ six==1.16.0
895 # junit-xml
896 # opencensus
897 # python-dateutil
915 - # rfc3339-validator
898 # rouge-score
899 smart-open==7.1.0
900 # via ray
@@ -938,10 +920,10 @@ sqlalchemy==2.0.41
920 # optuna
921 sqlitedict==2.1.0
922 # via lm-eval
941 -starlette==0.50.0
923 +starlette==1.3.1
924 # via
925 + # -c requirements/common.txt
926 # fastapi
944 - # schemathesis
927 # starlette-testclient
928 starlette-testclient==0.4.1
929 # via schemathesis
@@ -966,6 +948,7 @@ tenacity==9.1.2
948 # gpt-oss
949 # lm-eval
950 # plotly
951 + # schemathesis
952 tensorizer==2.10.1
953 # via -r requirements/test/cuda.in
954 termcolor==3.1.0
@@ -990,10 +973,6 @@ tokenizers==0.22.2
973 # -c requirements/common.txt
974 # -r requirements/test/cuda.in
975 # transformers
993 -tomli==2.2.1
994 - # via schemathesis
995 -tomli-w==1.2.0
996 - # via schemathesis
976 torch==2.11.0+cu130
977 # via
978 # -c requirements/cuda.txt
@@ -1066,8 +1045,6 @@ typer==0.15.2
1045 # huggingface-hub
1046 # perceptron
1047 # transformers
1069 -types-python-dateutil==2.9.0.20241206
1070 - # via arrow
1048 typing-extensions==4.15.0
1049 # via
1050 # -c requirements/common.txt
@@ -1092,6 +1069,8 @@ typing-extensions==4.15.0
1069 # pydantic
1070 # pydantic-core
1071 # pydantic-extra-types
1072 + # pytest-asyncio
1073 + # schemathesis
1074 # sentence-transformers
1075 # sqlalchemy
1076 # starlette
@@ -1099,11 +1078,11 @@ typing-extensions==4.15.0
1078 # typer
1079 # typing-inspection
1080 typing-inspection==0.4.2
1102 - # via pydantic
1081 + # via
1082 + # fastapi
1083 + # pydantic
1084 tzdata==2024.2
1085 # via pandas
1105 -uri-template==1.3.0
1106 - # via jsonschema
1086 urllib3==2.2.3
1087 # via
1088 # blobfile
@@ -1122,8 +1101,6 @@ vocos==0.1.0
1101 # via -r requirements/test/cuda.in
1102 wcwidth==0.2.13
1103 # via ftfy
1125 -webcolors==24.11.1
1126 - # via jsonschema
1104 werkzeug==3.1.3
1105 # via schemathesis
1106 word2number==1.1
@@ -1135,8 +1112,6 @@ xxhash==3.5.0
1112 # datasets
1113 # evaluate
1114 yarl==1.17.1
1138 - # via
1139 - # aiohttp
1140 - # schemathesis
1115 + # via aiohttp
1116 zipp==3.23.0
1117 # via importlib-metadata
requirements/test/rocm.txt
+21 -47
@@ -51,15 +51,12 @@ arctic-inference==0.1.1
51 # via -r requirements/test/rocm.in
52 argcomplete==3.6.3
53 # via datamodel-code-generator
54 -arrow==1.4.0
55 - # via isoduration
54 astor==0.8.1
55 # via depyf
56 attrs==26.1.0
57 # via
58 # aiohttp
59 # jsonschema
62 - # pytest-subtests
60 # referencing
61 audioread==3.0.1
62 # via librosa
@@ -74,9 +71,7 @@ azure-identity==1.25.3
71 azure-storage-blob==12.28.0
72 # via runai-model-streamer-azure
73 backoff==2.2.1
77 - # via
78 - # -r requirements/test/rocm.in
79 - # schemathesis
74 + # via -r requirements/test/rocm.in
75 bitsandbytes==0.49.2
76 # via -r requirements/test/rocm.in
77 black==26.3.1
@@ -139,7 +134,6 @@ colorama==0.4.6
134 # via
135 # perceptron
136 # sacrebleu
142 - # schemathesis
137 colorful==0.5.8
138 # via ray
139 colorlog==6.10.1
@@ -258,8 +252,6 @@ filelock==3.25.2
252 # virtualenv
253 fonttools==4.62.1
254 # via matplotlib
261 -fqdn==1.5.1
262 - # via jsonschema
255 frozendict==2.4.7
256 # via einx
257 frozenlist==1.8.0
@@ -328,7 +320,7 @@ h11==0.16.0
320 # uvicorn
321 h2==4.3.0
322 # via httpx
331 -harfile==0.4.0
323 +harfile==0.5.0
324 # via schemathesis
325 hf-xet==1.4.3
326 # via huggingface-hub
@@ -378,7 +370,7 @@ hypothesis==6.151.9
370 # hypothesis-graphql
371 # hypothesis-jsonschema
372 # schemathesis
381 -hypothesis-graphql==0.12.0
373 +hypothesis-graphql==0.13.0
374 # via schemathesis
375 hypothesis-jsonschema==0.23.1
376 # via schemathesis
@@ -387,7 +379,6 @@ idna==3.11
379 # anyio
380 # email-validator
381 # httpx
390 - # jsonschema
382 # requests
383 # yarl
384 ijson==3.5.0
@@ -408,8 +399,6 @@ interegular==0.3.3
399 # via lm-format-enforcer
400 isodate==0.7.2
401 # via azure-storage-blob
411 -isoduration==20.11.0
412 - # via jsonschema
402 isort==8.0.1
403 # via datamodel-code-generator
404 jinja2==3.1.6
@@ -435,8 +424,6 @@ joblib==1.5.3
424 # librosa
425 # nltk
426 # scikit-learn
438 -jsonpointer==3.1.0
439 - # via jsonschema
427 jsonschema==4.26.0
428 # via
429 # -c requirements/common.txt
@@ -445,7 +432,8 @@ jsonschema==4.26.0
432 # mcp
433 # mistral-common
434 # ray
448 - # schemathesis
435 +jsonschema-rs==0.46.5
436 + # via schemathesis
437 jsonschema-specifications==2025.9.1
438 # via jsonschema
439 junit-xml==1.9
@@ -792,7 +780,7 @@ prometheus-client==0.24.1
780 # opentelemetry-exporter-prometheus
781 # prometheus-fastapi-instrumentator
782 # ray
795 -prometheus-fastapi-instrumentator==7.1.0
783 +prometheus-fastapi-instrumentator==8.0.0
784 # via
785 # -c requirements/common.txt
786 # -r requirements/test/../common.txt
@@ -876,20 +864,22 @@ pydantic-settings==2.13.1
864 # fastapi
865 # mcp
866 pygments==2.19.2
879 - # via rich
867 + # via
868 + # pytest
869 + # rich
870 pyjwt==2.12.1
871 # via
872 # mcp
873 # msal
874 pyparsing==3.3.2
875 # via matplotlib
886 -pyrate-limiter==3.9.0
876 +pyrate-limiter==4.4.0
877 # via schemathesis
878 pystemmer==3.0.0
879 # via mteb
880 pytablewriter==1.2.1
881 # via lm-eval
892 -pytest==8.3.5
882 +pytest==9.1.0
883 # via
884 # -r requirements/test/rocm.in
885 # buildkite-test-collector
@@ -900,10 +890,9 @@ pytest==8.3.5
890 # pytest-mock
891 # pytest-rerunfailures
892 # pytest-shard
903 - # pytest-subtests
893 # pytest-timeout
894 # schemathesis
906 -pytest-asyncio==0.24.0
895 +pytest-asyncio==1.4.0
896 # via -r requirements/test/rocm.in
897 pytest-cov==6.3.0
898 # via -r requirements/test/rocm.in
@@ -915,13 +904,10 @@ pytest-rerunfailures==14.0
904 # via -r requirements/test/rocm.in
905 pytest-shard==0.1.2
906 # via -r requirements/test/rocm.in
918 -pytest-subtests==0.14.2
919 - # via schemathesis
907 pytest-timeout==2.3.1
908 # via -r requirements/test/rocm.in
909 python-dateutil==2.9.0.post0
910 # via
924 - # arrow
911 # botocore
912 # matplotlib
913 # pandas
@@ -1016,16 +1002,13 @@ requests==2.32.5
1002 # tiktoken
1003 responses==0.26.0
1004 # via genai-perf
1019 -rfc3339-validator==0.1.4
1020 - # via jsonschema
1021 -rfc3987==1.3.8
1022 - # via jsonschema
1005 rich==14.3.3
1006 # via
1007 # genai-perf
1008 # mteb
1009 # perceptron
1010 # rich-toolkit
1011 + # schemathesis
1012 # typer
1013 rich-toolkit==0.19.7
1014 # via
@@ -1063,7 +1046,7 @@ safetensors==0.7.0
1046 # segmentation-models-pytorch
1047 # timm
1048 # transformers
1066 -schemathesis==3.39.15
1049 +schemathesis==4.21.6
1050 # via -r requirements/test/rocm.in
1051 scikit-image==0.26.0
1052 # via albumentations
@@ -1120,7 +1103,6 @@ six==1.17.0
1103 # junit-xml
1104 # opencensus
1105 # python-dateutil
1123 - # rfc3339-validator
1106 # rouge-score
1107 smart-open==7.5.1
1108 # via ray
@@ -1149,13 +1131,14 @@ sqlitedict==2.1.0
1131 # via lm-eval
1132 sse-starlette==3.3.4
1133 # via mcp
1152 -starlette==0.52.1
1134 +starlette==1.3.1
1135 # via
1136 + # -c requirements/common.txt
1137 + # -r requirements/test/../common.txt
1138 # fastapi
1139 # mcp
1140 # model-hosting-container-standards
1141 # prometheus-fastapi-instrumentator
1158 - # schemathesis
1142 # sse-starlette
1143 # starlette-testclient
1144 starlette-testclient==0.4.1
@@ -1182,6 +1165,7 @@ tenacity==9.1.4
1165 # via
1166 # gpt-oss
1167 # lm-eval
1168 + # schemathesis
1169 tensorizer==2.10.1
1170 # via
1171 # -c requirements/rocm.txt
@@ -1215,10 +1199,6 @@ tokenizers==0.22.2
1199 # -r requirements/test/../common.txt
1200 # -r requirements/test/rocm.in
1201 # transformers
1218 -tomli==2.4.0
1219 - # via schemathesis
1220 -tomli-w==1.2.0
1221 - # via schemathesis
1202 torch-c-dlpack-ext==0.1.5
1203 # via tilelang
1204 tqdm==4.67.3
@@ -1301,8 +1281,10 @@ typing-extensions==4.15.0
1281 # pydantic
1282 # pydantic-core
1283 # pydantic-extra-types
1284 + # pytest-asyncio
1285 # referencing
1286 # rich-toolkit
1287 + # schemathesis
1288 # sentence-transformers
1289 # sqlalchemy
1290 # starlette
@@ -1317,10 +1299,6 @@ typing-inspection==0.4.2
1299 # mcp
1300 # pydantic
1301 # pydantic-settings
1320 -tzdata==2025.3
1321 - # via arrow
1322 -uri-template==1.3.0
1323 - # via jsonschema
1302 urllib3==2.6.3
1303 # via
1304 # blobfile
@@ -1351,8 +1329,6 @@ watchfiles==1.1.1
1329 # uvicorn
1330 wcwidth==0.6.0
1331 # via ftfy
1354 -webcolors==25.10.0
1355 - # via jsonschema
1332 websockets==16.0
1333 # via uvicorn
1334 werkzeug==3.1.6
@@ -1370,9 +1346,7 @@ xxhash==3.6.0
1346 # datasets
1347 # evaluate
1348 yarl==1.23.0
1373 - # via
1374 - # aiohttp
1375 - # schemathesis
1349 + # via aiohttp
1350 z3-solver==4.15.4.0
1351 # via tilelang
1352 zipp==3.23.0
requirements/test/xpu.txt
+2 -1
@@ -593,8 +593,9 @@ soxr==0.5.0.post1
593 # mistral-common
594 sqlitedict==2.1.0
595 # via lm-eval
596 -starlette==1.0.0
596 +starlette==1.3.1
597 # via
598 + # -c requirements/common.txt
599 # fastapi
600 # starlette-testclient
601 starlette-testclient==0.4.1