Commit 169019b
authored
[python] bump generated client dependency floors above vulnerable ranges (#24186)
* [python] bump generated client dependency floors above vulnerable ranges
The python client generator's manifest templates declared urllib3/aiohttp/pytest floors that intersect known-vulnerable release ranges. Generated clients are libraries without a lockfile, so the dependency graph records the declared range and vulnerability scanners (Dependabot, pip-audit) flag any range that intersects a vulnerable one — every generated client trips security alerts for its downstream consumers even when the resolved version is safe.
Raise the floors above the currently-published advisory ranges (keeping the urllib3 < 3.0.0 cap):
urllib3 >= 2.1.0 -> >= 2.7.0 (GHSA-mf9v-mfxr-j63j / CVE-2026-44432, GHSA-qccp-gfcp-xxvc / CVE-2026-44431)
aiohttp >= 3.8.4 -> >= 3.14.1
pytest >= 7.2.1 -> >= 9.0.3 (GHSA-6w46-j5rx-g56g / CVE-2025-71176, dev-only)
Regenerate the affected python samples.
Signed-off-by: Johannes Würbach <johannes.wuerbach@googlemail.com>
* [python] keep bumped dependency floors installable on Python 3.9
The floors in the previous commit (urllib3 >= 2.7.0, aiohttp >= 3.14.1, pytest >= 9.0.3) are only published for Python >= 3.10, but the generated clients declare requires-python = ">=3.9". Python 3.9 consumers would fail to resolve these dependencies (the exact conflict raised in review).
Lower the floors to the highest releases still published for Python 3.9, keeping them well above the original ranges:
urllib3 >= 2.7.0 -> >= 2.6.3 (last 2.6.x; 2.7.0 first requires Python >= 3.10)
aiohttp >= 3.14.1 -> >= 3.13.5 (last 3.13.x; 3.14.0 first requires Python >= 3.10)
pytest >= 9.0.3 -> >= 8.4.2 (last 8.x; 9.0.0 first requires Python >= 3.10; dev-only)
These floors clear the older/high-severity advisories the original ranges intersected while staying installable under the declared requires-python. The most recent fixes (urllib3 GHSA-mf9v-mfxr-j63j / GHSA-qccp-gfcp-xxvc, the aiohttp <= 3.14.0 batch, pytest GHSA-6w46-j5rx-g56g) ship only in releases that require Python >= 3.10, so fully clearing them at the declaration level would require raising requires-python to >= 3.10 (a breaking change left to maintainers). Consumers on Python >= 3.10 still resolve to those patched releases naturally, since the floors are open-ended upward.
Regenerate the affected python samples.
Signed-off-by: Johannes Würbach <johannes.wuerbach@googlemail.com>
---------
Signed-off-by: Johannes Würbach <johannes.wuerbach@googlemail.com>1 parent eae9b36 commit 169019b
28 files changed
Lines changed: 39 additions & 39 deletions
File tree
- modules/openapi-generator/src/main/resources/python
- samples
- client/echo_api
- python-disallowAdditionalPropertiesIfNotPresent
- python
- openapi3/client/petstore
- python-aiohttp
- python-httpx-sync
- python-httpx
- python-lazyImports
- python
Lines changed: 5 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
| 37 | + | |
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| |||
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
65 | | - | |
| 65 | + | |
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
| 72 | + | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| |||
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
104 | | - | |
| 104 | + | |
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
| 16 | + | |
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
26 | | - | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
0 commit comments