diff --git a/tox.ini b/tox.ini index 3bfddd2..8ef9795 100644 --- a/tox.ini +++ b/tox.ini @@ -1,27 +1,33 @@ [tox] -envlist = py{38,39,310,311}-websockets{latest,11.0}-pyaudio{latest,0.2}-httpx{latest,0.24,0.23,0.22,0.21}-pydantic{latest,2,1.10,1.9,1.8,1.7}-typing-extensions +envlist = + # Test latest versions across all Python versions + py{38,39,310,311}-latest + # Test oldest supported versions + py38-oldest + # Test pydantic v1/v2 compatibility + py311-pydantic1 [testenv] deps = - # library dependencies - websocketslatest: websockets - websockets11.0: websockets>=11.0.0,<12.0.0 - httpxlatest: httpx - httpx0.24: httpx>=0.24.0,<0.25.0 - httpx0.23: httpx>=0.23.0,<0.24.0 - httpx0.22: httpx>=0.22.0,<0.23.0 - httpx0.21: httpx>=0.21.0,<0.22.0 - pydanticlatest: pydantic - pydantic2: pydantic>=2 - pydantic1.10: pydantic>=1.10.0,<1.11.0,!=1.10.7 - pydantic1.9: pydantic>=1.9.0,<1.10.0 - pydantic1.8: pydantic>=1.8.0,<1.9.0 - pydantic1.7: pydantic>=1.7.0,<1.8.0 - typing-extensions: typing-extensions>=3.7 - # extra dependencies - pyaudiolatest: pyaudio - pyaudio0.2: pyaudio>=0.2.13,<0.3.0 - # test dependencies + # Latest versions (default) + latest: websockets + latest: httpx + latest: pydantic + latest: pyaudio + latest: typing-extensions>=3.7 + # Oldest supported versions + oldest: websockets>=11.0.0,<12.0.0 + oldest: httpx>=0.21.0,<0.22.0 + oldest: pydantic>=1.7.0,<1.8.0 + oldest: pyaudio>=0.2.13,<0.3.0 + oldest: typing-extensions>=3.7 + # Pydantic v1 for compatibility testing + pydantic1: websockets + pydantic1: httpx + pydantic1: pydantic>=1.10.0,<2.0.0,!=1.10.7 + pydantic1: pyaudio + pydantic1: typing-extensions>=3.7 + # Test dependencies pytest pytest-httpx pytest-xdist