Skip to content

Commit 24afdb3

Browse files
tests: Generate some of the Web 2 tox entries by toxgen (#3981)
- remove hardcoded entries for `falcon`, `starlite`, `pyramid`, `bottle`, `tornado` from the tox template - remove them from the ignore list in `populate_tox.py` - run `populate_tox.py` to fill in entries for them - run `split_gh_tox_actions.py` to generate the CI yaml files so that they correspond to the new tox.ini The remaining integrations in this group are not trivial to port to the script, I'll do this step by step in follow-up PRs. --------- Co-authored-by: Daniel Szoke <[email protected]>
1 parent 8f22def commit 24afdb3

File tree

5 files changed

+103
-133
lines changed

5 files changed

+103
-133
lines changed

.github/workflows/test-integrations-web-2.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
strategy:
3030
fail-fast: false
3131
matrix:
32-
python-version: ["3.6","3.7","3.8","3.9","3.11","3.12","3.13"]
32+
python-version: ["3.8","3.9","3.11","3.12","3.13"]
3333
# python3.6 reached EOL and is no longer being supported on
3434
# new versions of hosted runners on Github Actions
3535
# ubuntu-20.04 is the last version that supported python3.6
@@ -121,7 +121,7 @@ jobs:
121121
strategy:
122122
fail-fast: false
123123
matrix:
124-
python-version: ["3.6","3.7","3.8","3.9","3.11","3.12","3.13"]
124+
python-version: ["3.6","3.7","3.8","3.9","3.10","3.11","3.12","3.13"]
125125
# python3.6 reached EOL and is no longer being supported on
126126
# new versions of hosted runners on Github Actions
127127
# ubuntu-20.04 is the last version that supported python3.6

scripts/populate_tox/config.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@
1313
},
1414
"python": ">=3.8",
1515
},
16+
"bottle": {
17+
"package": "bottle",
18+
"deps": {
19+
"*": ["werkzeug<2.1.0"],
20+
},
21+
},
1622
"celery": {
1723
"package": "celery",
1824
"deps": {
@@ -26,6 +32,10 @@
2632
"dramatiq": {
2733
"package": "dramatiq",
2834
},
35+
"falcon": {
36+
"package": "falcon",
37+
"python": "<3.13",
38+
},
2939
"flask": {
3040
"package": "flask",
3141
"deps": {
@@ -64,6 +74,12 @@
6474
"*": ["mockupdb"],
6575
},
6676
},
77+
"pyramid": {
78+
"package": "pyramid",
79+
"deps": {
80+
"*": ["werkzeug<2.1.0"],
81+
},
82+
},
6783
"redis_py_cluster_legacy": {
6884
"package": "redis-py-cluster",
6985
},
@@ -90,6 +106,20 @@
90106
"py3.6": ["aiocontextvars"],
91107
},
92108
},
109+
"starlite": {
110+
"package": "starlite",
111+
"deps": {
112+
"*": [
113+
"pytest-asyncio",
114+
"python-multipart",
115+
"requests",
116+
"cryptography",
117+
"pydantic<2.0.0",
118+
"httpx<0.28",
119+
],
120+
},
121+
"python": "<=3.11",
122+
},
93123
"statsig": {
94124
"package": "statsig",
95125
"deps": {
@@ -102,6 +132,16 @@
102132
"*": ["httpx"],
103133
},
104134
},
135+
"tornado": {
136+
"package": "tornado",
137+
"deps": {
138+
"*": ["pytest"],
139+
"<=6.4.1": [
140+
"pytest<8.2"
141+
], # https://github.com/tornadoweb/tornado/pull/3382
142+
"py3.6": ["aiocontextvars"],
143+
},
144+
},
105145
"trytond": {
106146
"package": "trytond",
107147
"deps": {

scripts/populate_tox/populate_tox.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,11 @@
5858
"aws_lambda",
5959
"beam",
6060
"boto3",
61-
"bottle",
6261
"chalice",
6362
"cohere",
6463
"cloud_resource_context",
6564
"cohere",
6665
"django",
67-
"falcon",
6866
"fastapi",
6967
"gcp",
7068
"grpc",
@@ -77,15 +75,12 @@
7775
"openai",
7876
"openai_notiktoken",
7977
"pure_eval",
80-
"pyramid",
8178
"quart",
8279
"ray",
8380
"redis",
8481
"requests",
8582
"rq",
8683
"sanic",
87-
"starlite",
88-
"tornado",
8984
}
9085

9186

scripts/populate_tox/tox.jinja

Lines changed: 0 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,6 @@ envlist =
7070
{py3.11,py3.12}-boto3-v{1.34}
7171
{py3.11,py3.12,py3.13}-boto3-latest
7272

73-
# Bottle
74-
{py3.6,py3.9}-bottle-v{0.12}
75-
{py3.6,py3.12,py3.13}-bottle-latest
76-
7773
# Chalice
7874
{py3.6,py3.9}-chalice-v{1.16}
7975
{py3.8,py3.12,py3.13}-chalice-latest
@@ -100,12 +96,6 @@ envlist =
10096
{py3.10,py3.11,py3.12}-django-v{5.0,5.1}
10197
{py3.10,py3.12,py3.13}-django-latest
10298

103-
# Falcon
104-
{py3.6,py3.7}-falcon-v{1,1.4,2}
105-
{py3.6,py3.11,py3.12}-falcon-v{3}
106-
{py3.8,py3.11,py3.12}-falcon-v{4}
107-
{py3.7,py3.11,py3.12}-falcon-latest
108-
10999
# FastAPI
110100
{py3.7,py3.10}-fastapi-v{0.79}
111101
{py3.8,py3.12,py3.13}-fastapi-latest
@@ -154,12 +144,6 @@ envlist =
154144
# pure_eval
155145
{py3.6,py3.12,py3.13}-pure_eval
156146

157-
# Pyramid
158-
{py3.6,py3.11}-pyramid-v{1.6}
159-
{py3.6,py3.11,py3.12}-pyramid-v{1.10}
160-
{py3.6,py3.11,py3.12}-pyramid-v{2.0}
161-
{py3.6,py3.11,py3.12}-pyramid-latest
162-
163147
# Quart
164148
{py3.7,py3.11}-quart-v{0.16}
165149
{py3.8,py3.11,py3.12}-quart-v{0.19}
@@ -191,15 +175,6 @@ envlist =
191175
{py3.8,py3.11,py3.12}-sanic-v{24.6}
192176
{py3.9,py3.12,py3.13}-sanic-latest
193177

194-
# Starlite
195-
{py3.8,py3.11}-starlite-v{1.48,1.51}
196-
# 1.51.14 is the last starlite version; the project continues as litestar
197-
198-
# Tornado
199-
{py3.8,py3.11,py3.12}-tornado-v{6.0}
200-
{py3.8,py3.11,py3.12}-tornado-v{6.2}
201-
{py3.8,py3.11,py3.12}-tornado-latest
202-
203178
# === Integrations - Auto-generated ===
204179
# These come from the populate_tox.py script. Eventually we should move all
205180
# integration tests there.
@@ -291,11 +266,6 @@ deps =
291266
boto3-v1.34: boto3~=1.34.0
292267
boto3-latest: boto3
293268
294-
# Bottle
295-
bottle: Werkzeug<2.1.0
296-
bottle-v0.12: bottle~=0.12.0
297-
bottle-latest: bottle
298-
299269
# Chalice
300270
chalice: pytest-chalice==0.0.5
301271
chalice-v1.16: chalice~=1.16.0
@@ -334,14 +304,6 @@ deps =
334304
django-v5.1: Django==5.1rc1
335305
django-latest: Django
336306
337-
# Falcon
338-
falcon-v1.4: falcon~=1.4.0
339-
falcon-v1: falcon~=1.0
340-
falcon-v2: falcon~=2.0
341-
falcon-v3: falcon~=3.0
342-
falcon-v4: falcon~=4.0
343-
falcon-latest: falcon
344-
345307
# FastAPI
346308
fastapi: httpx
347309
# (this is a dependency of httpx)
@@ -431,13 +393,6 @@ deps =
431393
# pure_eval
432394
pure_eval: pure_eval
433395
434-
# Pyramid
435-
pyramid: Werkzeug<2.1.0
436-
pyramid-v1.6: pyramid~=1.6.0
437-
pyramid-v1.10: pyramid~=1.10.0
438-
pyramid-v2.0: pyramid~=2.0.0
439-
pyramid-latest: pyramid
440-
441396
# Quart
442397
quart: quart-auth
443398
quart: pytest-asyncio
@@ -497,24 +452,6 @@ deps =
497452
sanic-v24.6: sanic~=24.6.0
498453
sanic-latest: sanic
499454
500-
# Starlite
501-
starlite: pytest-asyncio
502-
starlite: python-multipart
503-
starlite: requests
504-
starlite: cryptography
505-
starlite: pydantic<2.0.0
506-
starlite: httpx<0.28
507-
starlite-v{1.48}: starlite~=1.48.0
508-
starlite-v{1.51}: starlite~=1.51.0
509-
510-
# Tornado
511-
# Tornado <6.4.1 is incompatible with Pytest ≥8.2
512-
# See https://github.com/tornadoweb/tornado/pull/3382.
513-
tornado-{v6.0,v6.2}: pytest<8.2
514-
tornado-v6.0: tornado~=6.0.0
515-
tornado-v6.2: tornado~=6.2.0
516-
tornado-latest: tornado
517-
518455
# === Integrations - Auto-generated ===
519456
# These come from the populate_tox.py script. Eventually we should move all
520457
# integration tests there.

0 commit comments

Comments
 (0)