Skip to content

Commit e7130e8

Browse files
authored
Fix CI (#3834)
The latest release of httpx seems to have broken the test clients of some older versions of Litestar, Starlite, Anthropic, Langchain, OpenAI, Starlette. Pinning httpx for old versions. Also tweaking what versions to test against.
1 parent 65b1791 commit e7130e8

File tree

2 files changed

+38
-22
lines changed

2 files changed

+38
-22
lines changed

.github/workflows/test-integrations-ai.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ jobs:
9999
strategy:
100100
fail-fast: false
101101
matrix:
102-
python-version: ["3.7","3.9","3.11","3.12","3.13"]
102+
python-version: ["3.8","3.9","3.11","3.12","3.13"]
103103
# python3.6 reached EOL and is no longer being supported on
104104
# new versions of hosted runners on Github Actions
105105
# ubuntu-20.04 is the last version that supported python3.6

tox.ini

Lines changed: 37 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ envlist =
3333
{py3.8,py3.12,py3.13}-aiohttp-latest
3434

3535
# Anthropic
36-
{py3.7,py3.11,py3.12}-anthropic-v{0.16,0.25}
36+
{py3.8,py3.11,py3.12}-anthropic-v{0.16,0.28,0.40}
3737
{py3.7,py3.11,py3.12}-anthropic-latest
3838

3939
# Ariadne
@@ -164,23 +164,24 @@ envlist =
164164

165165
# Langchain
166166
{py3.9,py3.11,py3.12}-langchain-v0.1
167+
{py3.9,py3.11,py3.12}-langchain-v0.3
167168
{py3.9,py3.11,py3.12}-langchain-latest
168169
{py3.9,py3.11,py3.12}-langchain-notiktoken
169170

170171
# Litestar
171-
# litestar 2.0.0 is the earliest version that supports Python < 3.12
172172
{py3.8,py3.11}-litestar-v{2.0}
173-
# litestar 2.3.0 is the earliest version that supports Python 3.12
174-
{py3.12}-litestar-v{2.3}
175-
{py3.8,py3.11,py3.12}-litestar-v{2.5}
173+
{py3.8,py3.11,py3.12}-litestar-v{2.6}
174+
{py3.8,py3.11,py3.12}-litestar-v{2.12}
176175
{py3.8,py3.11,py3.12}-litestar-latest
177176

178177
# Loguru
179178
{py3.6,py3.11,py3.12}-loguru-v{0.5}
180179
{py3.6,py3.12,py3.13}-loguru-latest
181180

182181
# OpenAI
183-
{py3.9,py3.11,py3.12}-openai-v1
182+
{py3.9,py3.11,py3.12}-openai-v1.0
183+
{py3.9,py3.11,py3.12}-openai-v1.22
184+
{py3.9,py3.11,py3.12}-openai-v1.55
184185
{py3.9,py3.11,py3.12}-openai-latest
185186
{py3.9,py3.11,py3.12}-openai-notiktoken
186187

@@ -256,8 +257,8 @@ envlist =
256257

257258
# Starlette
258259
{py3.7,py3.10}-starlette-v{0.19}
259-
{py3.7,py3.11}-starlette-v{0.20,0.24,0.28}
260-
{py3.8,py3.11,py3.12}-starlette-v{0.32,0.36}
260+
{py3.7,py3.11}-starlette-v{0.24,0.28}
261+
{py3.8,py3.11,py3.12}-starlette-v{0.32,0.36,0.40}
261262
{py3.8,py3.12,py3.13}-starlette-latest
262263

263264
# Starlite
@@ -326,8 +327,10 @@ deps =
326327

327328
# Anthropic
328329
anthropic: pytest-asyncio
329-
anthropic-v0.25: anthropic~=0.25.0
330+
anthropic-v{0.16,0.28}: httpx<0.28.0
330331
anthropic-v0.16: anthropic~=0.16.0
332+
anthropic-v0.28: anthropic~=0.28.0
333+
anthropic-v0.40: anthropic~=0.40.0
331334
anthropic-latest: anthropic
332335

333336
# Ariadne
@@ -404,6 +407,7 @@ deps =
404407
django: psycopg2-binary
405408
django-v{1.11,2.0,2.1,2.2,3.0,3.1,3.2}: djangorestframework>=3.0.0,<4.0.0
406409
django-v{2.0,2.2,3.0,3.2,4.0,4.1,4.2,5.0,5.1}: channels[daphne]
410+
django-v{2.2,3.0}: six
407411
django-v{1.11,2.0,2.2,3.0,3.2}: Werkzeug<2.1.0
408412
django-v{1.11,2.0,2.2,3.0}: pytest-django<4.0
409413
django-v{3.2,4.0,4.1,4.2,5.0,5.1}: pytest-django
@@ -517,22 +521,25 @@ deps =
517521
langchain-v0.1: openai~=1.0.0
518522
langchain-v0.1: langchain~=0.1.11
519523
langchain-v0.1: tiktoken~=0.6.0
520-
langchain-latest: langchain
521-
langchain-latest: langchain-openai
522-
langchain-latest: openai>=1.6.1
524+
langchain-v0.1: httpx<0.28.0
525+
langchain-v0.3: langchain~=0.3.0
526+
langchain-v0.3: langchain-community
527+
langchain-v0.3: tiktoken
528+
langchain-v0.3: openai
529+
langchain-{latest,notiktoken}: langchain
530+
langchain-{latest,notiktoken}: langchain-openai
531+
langchain-{latest,notiktoken}: openai>=1.6.1
523532
langchain-latest: tiktoken~=0.6.0
524-
langchain-notiktoken: langchain
525-
langchain-notiktoken: langchain-openai
526-
langchain-notiktoken: openai>=1.6.1
527533

528534
# Litestar
529535
litestar: pytest-asyncio
530536
litestar: python-multipart
531537
litestar: requests
532538
litestar: cryptography
539+
litestar-v{2.0,2.6}: httpx<0.28
533540
litestar-v2.0: litestar~=2.0.0
534-
litestar-v2.3: litestar~=2.3.0
535-
litestar-v2.5: litestar~=2.5.0
541+
litestar-v2.6: litestar~=2.6.0
542+
litestar-v2.12: litestar~=2.12.0
536543
litestar-latest: litestar
537544

538545
# Loguru
@@ -541,8 +548,14 @@ deps =
541548

542549
# OpenAI
543550
openai: pytest-asyncio
544-
openai-v1: openai~=1.0.0
545-
openai-v1: tiktoken~=0.6.0
551+
openai-v1.0: openai~=1.0.0
552+
openai-v1.0: tiktoken
553+
openai-v1.0: httpx<0.28.0
554+
openai-v1.22: openai~=1.22.0
555+
openai-v1.22: tiktoken
556+
openai-v1.22: httpx<0.28.0
557+
openai-v1.55: openai~=1.55.0
558+
openai-v1.55: tiktoken
546559
openai-latest: openai
547560
openai-latest: tiktoken~=0.6.0
548561
openai-notiktoken: openai
@@ -655,16 +668,18 @@ deps =
655668
starlette: pytest-asyncio
656669
starlette: python-multipart
657670
starlette: requests
658-
starlette: httpx
659671
# (this is a dependency of httpx)
660672
starlette: anyio<4.0.0
661673
starlette: jinja2
674+
starlette-v{0.19,0.24,0.28,0.32,0.36}: httpx<0.28.0
675+
starlette-v0.40: httpx
676+
starlette-latest: httpx
662677
starlette-v0.19: starlette~=0.19.0
663-
starlette-v0.20: starlette~=0.20.0
664678
starlette-v0.24: starlette~=0.24.0
665679
starlette-v0.28: starlette~=0.28.0
666680
starlette-v0.32: starlette~=0.32.0
667681
starlette-v0.36: starlette~=0.36.0
682+
starlette-v0.40: starlette~=0.40.0
668683
starlette-latest: starlette
669684

670685
# Starlite
@@ -673,6 +688,7 @@ deps =
673688
starlite: requests
674689
starlite: cryptography
675690
starlite: pydantic<2.0.0
691+
starlite: httpx<0.28
676692
starlite-v{1.48}: starlite~=1.48.0
677693
starlite-v{1.51}: starlite~=1.51.0
678694

0 commit comments

Comments
 (0)