From 7dcb27a5dc6d0666b00d82d1313ab60387fc9b67 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 1 Sep 2025 14:06:40 +0200 Subject: [PATCH 1/6] toxgen: Add variants --- .github/workflows/test-integrations-ai.yml | 10 ++- scripts/populate_tox/config.py | 14 +++++ scripts/populate_tox/populate_tox.py | 2 - scripts/populate_tox/tox.jinja | 21 ------- .../split_tox_gh_actions.py | 1 + tox.ini | 63 +++++++++++-------- 6 files changed, 61 insertions(+), 50 deletions(-) diff --git a/.github/workflows/test-integrations-ai.yml b/.github/workflows/test-integrations-ai.yml index a784f9fc47..f8ee0a8489 100644 --- a/.github/workflows/test-integrations-ai.yml +++ b/.github/workflows/test-integrations-ai.yml @@ -66,6 +66,10 @@ jobs: run: | set -x # print commands that are executed ./scripts/runtox.sh "py${{ matrix.python-version }}-openai-latest" + - name: Test openai_notiktoken latest + run: | + set -x # print commands that are executed + ./scripts/runtox.sh "py${{ matrix.python-version }}-openai_notiktoken-latest" - name: Test openai_agents latest run: | set -x # print commands that are executed @@ -108,7 +112,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8","3.9","3.10","3.11","3.12","3.13"] + python-version: ["3.6","3.7","3.8","3.9","3.10","3.11","3.12","3.13"] # python3.6 reached EOL and is no longer being supported on # new versions of hosted runners on Github Actions # ubuntu-20.04 is the last version that supported python3.6 @@ -145,6 +149,10 @@ jobs: run: | set -x # print commands that are executed ./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-openai" + - name: Test openai_notiktoken pinned + run: | + set -x # print commands that are executed + ./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-openai_notiktoken" - name: Test openai_agents pinned run: | set -x # print commands that are executed diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index f395289b4a..64595f4996 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -139,6 +139,20 @@ "loguru": { "package": "loguru", }, + "openai": { + "package": "openai", + "deps": { + "*": ["pytest-asyncio", "tiktoken"], + "<1.55": ["httpx<0.28"], + }, + }, + "openai_notiktoken": { + "package": "openai", + "deps": { + "*": ["pytest-asyncio"], + "<1.55": ["httpx<0.28"], + }, + }, "openai_agents": { "package": "openai-agents", "deps": { diff --git a/scripts/populate_tox/populate_tox.py b/scripts/populate_tox/populate_tox.py index 3ca5ab18c8..ac8ef9bcf9 100644 --- a/scripts/populate_tox/populate_tox.py +++ b/scripts/populate_tox/populate_tox.py @@ -76,8 +76,6 @@ "httpx", "langchain", "langchain_notiktoken", - "openai", - "openai_notiktoken", "pure_eval", "quart", "ray", diff --git a/scripts/populate_tox/tox.jinja b/scripts/populate_tox/tox.jinja index 4c3b86af81..4b9d5dea2f 100644 --- a/scripts/populate_tox/tox.jinja +++ b/scripts/populate_tox/tox.jinja @@ -83,13 +83,6 @@ envlist = {py3.9,py3.11,py3.12}-langchain-latest {py3.9,py3.11,py3.12}-langchain-notiktoken - # OpenAI - {py3.9,py3.11,py3.12}-openai-v1.0 - {py3.9,py3.11,py3.12}-openai-v1.22 - {py3.9,py3.11,py3.12}-openai-v1.55 - {py3.9,py3.11,py3.12}-openai-latest - {py3.9,py3.11,py3.12}-openai-notiktoken - # OpenTelemetry (OTel) {py3.7,py3.9,py3.12,py3.13}-opentelemetry @@ -252,20 +245,6 @@ deps = langchain-{latest,notiktoken}: openai>=1.6.1 langchain-latest: tiktoken~=0.6.0 - # OpenAI - openai: pytest-asyncio - openai-v1.0: openai~=1.0.0 - openai-v1.0: tiktoken - openai-v1.0: httpx<0.28.0 - openai-v1.22: openai~=1.22.0 - openai-v1.22: tiktoken - openai-v1.22: httpx<0.28.0 - openai-v1.55: openai~=1.55.0 - openai-v1.55: tiktoken - openai-latest: openai - openai-latest: tiktoken~=0.6.0 - openai-notiktoken: openai - # OpenTelemetry (OTel) opentelemetry: opentelemetry-distro diff --git a/scripts/split_tox_gh_actions/split_tox_gh_actions.py b/scripts/split_tox_gh_actions/split_tox_gh_actions.py index af1ff84cd6..fbadcbcea0 100755 --- a/scripts/split_tox_gh_actions/split_tox_gh_actions.py +++ b/scripts/split_tox_gh_actions/split_tox_gh_actions.py @@ -63,6 +63,7 @@ "cohere", "langchain", "openai", + "openai_notiktoken", "openai_agents", "huggingface_hub", ], diff --git a/tox.ini b/tox.ini index bbc1d57c12..ecfb4cb519 100644 --- a/tox.ini +++ b/tox.ini @@ -10,7 +10,7 @@ # The file (and all resulting CI YAMLs) then need to be regenerated via # "scripts/generate-test-files.sh". # -# Last generated: 2025-08-26T08:59:42.512502+00:00 +# Last generated: 2025-09-01T12:05:42.150928+00:00 [tox] requires = @@ -83,13 +83,6 @@ envlist = {py3.9,py3.11,py3.12}-langchain-latest {py3.9,py3.11,py3.12}-langchain-notiktoken - # OpenAI - {py3.9,py3.11,py3.12}-openai-v1.0 - {py3.9,py3.11,py3.12}-openai-v1.22 - {py3.9,py3.11,py3.12}-openai-v1.55 - {py3.9,py3.11,py3.12}-openai-latest - {py3.9,py3.11,py3.12}-openai-notiktoken - # OpenTelemetry (OTel) {py3.7,py3.9,py3.12,py3.13}-opentelemetry @@ -145,9 +138,19 @@ envlist = {py3.9,py3.11,py3.12}-cohere-v5.13.12 {py3.9,py3.11,py3.12}-cohere-v5.17.0 + {py3.7,py3.11,py3.12}-openai-v1.0.1 + {py3.7,py3.11,py3.12}-openai-v1.35.15 + {py3.8,py3.11,py3.12}-openai-v1.69.0 + {py3.8,py3.12,py3.13}-openai-v1.102.0 + + {py3.6,py3.12,py3.13}-openai_notiktoken-v0.1.3 + {py3.8,py3.12,py3.13}-openai_notiktoken-v0.28.1 + {py3.7,py3.11,py3.12}-openai_notiktoken-v1.0.1 + {py3.8,py3.12,py3.13}-openai_notiktoken-v1.102.0 + {py3.10,py3.11,py3.12}-openai_agents-v0.0.19 {py3.10,py3.12,py3.13}-openai_agents-v0.1.0 - {py3.10,py3.12,py3.13}-openai_agents-v0.2.9 + {py3.10,py3.12,py3.13}-openai_agents-v0.2.10 {py3.8,py3.10,py3.11}-huggingface_hub-v0.22.2 {py3.8,py3.11,py3.12}-huggingface_hub-v0.26.5 @@ -210,7 +213,7 @@ envlist = {py3.8,py3.10,py3.11}-strawberry-v0.209.8 {py3.8,py3.11,py3.12}-strawberry-v0.233.3 {py3.9,py3.12,py3.13}-strawberry-v0.257.0 - {py3.9,py3.12,py3.13}-strawberry-v0.280.0 + {py3.9,py3.12,py3.13}-strawberry-v0.281.0 # ~~~ Network ~~~ @@ -218,6 +221,7 @@ envlist = {py3.7,py3.9,py3.10}-grpc-v1.46.5 {py3.7,py3.11,py3.12}-grpc-v1.60.2 {py3.9,py3.12,py3.13}-grpc-v1.74.0 + {py3.9,py3.12,py3.13}-grpc-v1.75.0rc1 # ~~~ Tasks ~~~ @@ -311,6 +315,7 @@ envlist = {py3.7,py3.12,py3.13}-typer-v0.15.4 {py3.7,py3.12,py3.13}-typer-v0.16.1 + {py3.7,py3.12,py3.13}-typer-v0.17.3 @@ -421,20 +426,6 @@ deps = langchain-{latest,notiktoken}: openai>=1.6.1 langchain-latest: tiktoken~=0.6.0 - # OpenAI - openai: pytest-asyncio - openai-v1.0: openai~=1.0.0 - openai-v1.0: tiktoken - openai-v1.0: httpx<0.28.0 - openai-v1.22: openai~=1.22.0 - openai-v1.22: tiktoken - openai-v1.22: httpx<0.28.0 - openai-v1.55: openai~=1.55.0 - openai-v1.55: tiktoken - openai-latest: openai - openai-latest: tiktoken~=0.6.0 - openai-notiktoken: openai - # OpenTelemetry (OTel) opentelemetry: opentelemetry-distro @@ -525,9 +516,27 @@ deps = cohere-v5.13.12: cohere==5.13.12 cohere-v5.17.0: cohere==5.17.0 + openai-v1.0.1: openai==1.0.1 + openai-v1.35.15: openai==1.35.15 + openai-v1.69.0: openai==1.69.0 + openai-v1.102.0: openai==1.102.0 + openai: pytest-asyncio + openai: tiktoken + openai-v1.0.1: httpx<0.28 + openai-v1.35.15: httpx<0.28 + + openai_notiktoken-v0.1.3: openai==0.1.3 + openai_notiktoken-v0.28.1: openai==0.28.1 + openai_notiktoken-v1.0.1: openai==1.0.1 + openai_notiktoken-v1.102.0: openai==1.102.0 + openai_notiktoken: pytest-asyncio + openai_notiktoken-v0.1.3: httpx<0.28 + openai_notiktoken-v0.28.1: httpx<0.28 + openai_notiktoken-v1.0.1: httpx<0.28 + openai_agents-v0.0.19: openai-agents==0.0.19 openai_agents-v0.1.0: openai-agents==0.1.0 - openai_agents-v0.2.9: openai-agents==0.2.9 + openai_agents-v0.2.10: openai-agents==0.2.10 openai_agents: pytest-asyncio huggingface_hub-v0.22.2: huggingface_hub==0.22.2 @@ -601,7 +610,7 @@ deps = strawberry-v0.209.8: strawberry-graphql[fastapi,flask]==0.209.8 strawberry-v0.233.3: strawberry-graphql[fastapi,flask]==0.233.3 strawberry-v0.257.0: strawberry-graphql[fastapi,flask]==0.257.0 - strawberry-v0.280.0: strawberry-graphql[fastapi,flask]==0.280.0 + strawberry-v0.281.0: strawberry-graphql[fastapi,flask]==0.281.0 strawberry: httpx strawberry-v0.209.8: pydantic<2.11 strawberry-v0.233.3: pydantic<2.11 @@ -613,6 +622,7 @@ deps = grpc-v1.46.5: grpcio==1.46.5 grpc-v1.60.2: grpcio==1.60.2 grpc-v1.74.0: grpcio==1.74.0 + grpc-v1.75.0rc1: grpcio==1.75.0rc1 grpc: protobuf grpc: mypy-protobuf grpc: types-protobuf @@ -782,6 +792,7 @@ deps = typer-v0.15.4: typer==0.15.4 typer-v0.16.1: typer==0.16.1 + typer-v0.17.3: typer==0.17.3 From 8cfb0586025e2869a72395cf008e74a5fed7a8f6 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 1 Sep 2025 15:07:12 +0200 Subject: [PATCH 2/6] . --- .github/workflows/test-integrations-ai.yml | 8 +++--- scripts/populate_tox/config.py | 2 +- .../split_tox_gh_actions.py | 2 +- tox.ini | 27 ++++++++++--------- 4 files changed, 20 insertions(+), 19 deletions(-) diff --git a/.github/workflows/test-integrations-ai.yml b/.github/workflows/test-integrations-ai.yml index f8ee0a8489..d50e6abd03 100644 --- a/.github/workflows/test-integrations-ai.yml +++ b/.github/workflows/test-integrations-ai.yml @@ -62,10 +62,10 @@ jobs: run: | set -x # print commands that are executed ./scripts/runtox.sh "py${{ matrix.python-version }}-langchain-latest" - - name: Test openai latest + - name: Test openai_base latest run: | set -x # print commands that are executed - ./scripts/runtox.sh "py${{ matrix.python-version }}-openai-latest" + ./scripts/runtox.sh "py${{ matrix.python-version }}-openai_base-latest" - name: Test openai_notiktoken latest run: | set -x # print commands that are executed @@ -145,10 +145,10 @@ jobs: run: | set -x # print commands that are executed ./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-langchain" - - name: Test openai pinned + - name: Test openai_base pinned run: | set -x # print commands that are executed - ./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-openai" + ./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-openai_base" - name: Test openai_notiktoken pinned run: | set -x # print commands that are executed diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index 64595f4996..ce0f330503 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -139,7 +139,7 @@ "loguru": { "package": "loguru", }, - "openai": { + "openai_base": { "package": "openai", "deps": { "*": ["pytest-asyncio", "tiktoken"], diff --git a/scripts/split_tox_gh_actions/split_tox_gh_actions.py b/scripts/split_tox_gh_actions/split_tox_gh_actions.py index fbadcbcea0..305ceeae76 100755 --- a/scripts/split_tox_gh_actions/split_tox_gh_actions.py +++ b/scripts/split_tox_gh_actions/split_tox_gh_actions.py @@ -62,7 +62,7 @@ "anthropic", "cohere", "langchain", - "openai", + "openai_base", "openai_notiktoken", "openai_agents", "huggingface_hub", diff --git a/tox.ini b/tox.ini index ecfb4cb519..1c05fb3c21 100644 --- a/tox.ini +++ b/tox.ini @@ -10,7 +10,7 @@ # The file (and all resulting CI YAMLs) then need to be regenerated via # "scripts/generate-test-files.sh". # -# Last generated: 2025-09-01T12:05:42.150928+00:00 +# Last generated: 2025-09-01T12:41:41.493401+00:00 [tox] requires = @@ -138,10 +138,10 @@ envlist = {py3.9,py3.11,py3.12}-cohere-v5.13.12 {py3.9,py3.11,py3.12}-cohere-v5.17.0 - {py3.7,py3.11,py3.12}-openai-v1.0.1 - {py3.7,py3.11,py3.12}-openai-v1.35.15 - {py3.8,py3.11,py3.12}-openai-v1.69.0 - {py3.8,py3.12,py3.13}-openai-v1.102.0 + {py3.6,py3.12,py3.13}-openai_base-v0.1.3 + {py3.8,py3.12,py3.13}-openai_base-v0.28.1 + {py3.7,py3.11,py3.12}-openai_base-v1.0.1 + {py3.8,py3.12,py3.13}-openai_base-v1.102.0 {py3.6,py3.12,py3.13}-openai_notiktoken-v0.1.3 {py3.8,py3.12,py3.13}-openai_notiktoken-v0.28.1 @@ -516,14 +516,15 @@ deps = cohere-v5.13.12: cohere==5.13.12 cohere-v5.17.0: cohere==5.17.0 - openai-v1.0.1: openai==1.0.1 - openai-v1.35.15: openai==1.35.15 - openai-v1.69.0: openai==1.69.0 - openai-v1.102.0: openai==1.102.0 - openai: pytest-asyncio - openai: tiktoken - openai-v1.0.1: httpx<0.28 - openai-v1.35.15: httpx<0.28 + openai_base-v0.1.3: openai==0.1.3 + openai_base-v0.28.1: openai==0.28.1 + openai_base-v1.0.1: openai==1.0.1 + openai_base-v1.102.0: openai==1.102.0 + openai_base: pytest-asyncio + openai_base: tiktoken + openai_base-v0.1.3: httpx<0.28 + openai_base-v0.28.1: httpx<0.28 + openai_base-v1.0.1: httpx<0.28 openai_notiktoken-v0.1.3: openai==0.1.3 openai_notiktoken-v0.28.1: openai==0.28.1 From cd467bf640a78900e59a5554820c2c87e1b1be59 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 1 Sep 2025 15:23:51 +0200 Subject: [PATCH 3/6] . --- scripts/populate_tox/tox.jinja | 3 ++- tox.ini | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/populate_tox/tox.jinja b/scripts/populate_tox/tox.jinja index 4b9d5dea2f..632ce7c71b 100644 --- a/scripts/populate_tox/tox.jinja +++ b/scripts/populate_tox/tox.jinja @@ -380,7 +380,8 @@ setenv = launchdarkly: TESTPATH=tests/integrations/launchdarkly litestar: TESTPATH=tests/integrations/litestar loguru: TESTPATH=tests/integrations/loguru - openai: TESTPATH=tests/integrations/openai + openai_base: TESTPATH=tests/integrations/openai + openai_notiktoken: TESTPATH=tests/integrations/openai openai_agents: TESTPATH=tests/integrations/openai_agents openfeature: TESTPATH=tests/integrations/openfeature opentelemetry: TESTPATH=tests/integrations/opentelemetry diff --git a/tox.ini b/tox.ini index f8e12a9012..301d2f2acb 100644 --- a/tox.ini +++ b/tox.ini @@ -839,7 +839,8 @@ setenv = launchdarkly: TESTPATH=tests/integrations/launchdarkly litestar: TESTPATH=tests/integrations/litestar loguru: TESTPATH=tests/integrations/loguru - openai: TESTPATH=tests/integrations/openai + openai_base: TESTPATH=tests/integrations/openai + openai_notiktoken: TESTPATH=tests/integrations/openai openai_agents: TESTPATH=tests/integrations/openai_agents openfeature: TESTPATH=tests/integrations/openfeature opentelemetry: TESTPATH=tests/integrations/opentelemetry From 67f2678944a2731132f55cb130f9672a1a641683 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 1 Sep 2025 15:40:57 +0200 Subject: [PATCH 4/6] . --- .github/workflows/test-integrations-ai.yml | 2 +- scripts/populate_tox/config.py | 2 ++ tox.ini | 10 +++++----- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-integrations-ai.yml b/.github/workflows/test-integrations-ai.yml index d50e6abd03..a6995fa268 100644 --- a/.github/workflows/test-integrations-ai.yml +++ b/.github/workflows/test-integrations-ai.yml @@ -112,7 +112,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.6","3.7","3.8","3.9","3.10","3.11","3.12","3.13"] + python-version: ["3.8","3.9","3.10","3.11","3.12","3.13"] # python3.6 reached EOL and is no longer being supported on # new versions of hosted runners on Github Actions # ubuntu-20.04 is the last version that supported python3.6 diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index ce0f330503..cad47849ff 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -145,6 +145,7 @@ "*": ["pytest-asyncio", "tiktoken"], "<1.55": ["httpx<0.28"], }, + "python": ">=3.8", }, "openai_notiktoken": { "package": "openai", @@ -152,6 +153,7 @@ "*": ["pytest-asyncio"], "<1.55": ["httpx<0.28"], }, + "python": ">=3.8", }, "openai_agents": { "package": "openai-agents", diff --git a/tox.ini b/tox.ini index 301d2f2acb..0a52a4564c 100644 --- a/tox.ini +++ b/tox.ini @@ -10,7 +10,7 @@ # The file (and all resulting CI YAMLs) then need to be regenerated via # "scripts/generate-test-files.sh". # -# Last generated: 2025-09-01T13:21:57.142546+00:00 +# Last generated: 2025-09-01T13:33:27.071054+00:00 [tox] requires = @@ -138,14 +138,14 @@ envlist = {py3.9,py3.11,py3.12}-cohere-v5.13.12 {py3.9,py3.11,py3.12}-cohere-v5.17.0 - {py3.6,py3.12,py3.13}-openai_base-v0.1.3 + {py3.8,py3.12,py3.13}-openai_base-v0.1.3 {py3.8,py3.12,py3.13}-openai_base-v0.28.1 - {py3.7,py3.11,py3.12}-openai_base-v1.0.1 + {py3.8,py3.11,py3.12}-openai_base-v1.0.1 {py3.8,py3.12,py3.13}-openai_base-v1.102.0 - {py3.6,py3.12,py3.13}-openai_notiktoken-v0.1.3 + {py3.8,py3.12,py3.13}-openai_notiktoken-v0.1.3 {py3.8,py3.12,py3.13}-openai_notiktoken-v0.28.1 - {py3.7,py3.11,py3.12}-openai_notiktoken-v1.0.1 + {py3.8,py3.11,py3.12}-openai_notiktoken-v1.0.1 {py3.8,py3.12,py3.13}-openai_notiktoken-v1.102.0 {py3.10,py3.11,py3.12}-openai_agents-v0.0.19 From 6d47378c88ffd10f48dace52d6d41157a465cd08 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 1 Sep 2025 16:10:40 +0200 Subject: [PATCH 5/6] . --- scripts/populate_tox/config.py | 2 ++ scripts/populate_tox/populate_tox.py | 6 +++++- tox.ini | 24 +++++++++++------------- 3 files changed, 18 insertions(+), 14 deletions(-) diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index cad47849ff..65e463a947 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -141,6 +141,7 @@ }, "openai_base": { "package": "openai", + "integration_name": "openai", "deps": { "*": ["pytest-asyncio", "tiktoken"], "<1.55": ["httpx<0.28"], @@ -149,6 +150,7 @@ }, "openai_notiktoken": { "package": "openai", + "integration_name": "openai", "deps": { "*": ["pytest-asyncio"], "<1.55": ["httpx<0.28"], diff --git a/scripts/populate_tox/populate_tox.py b/scripts/populate_tox/populate_tox.py index ac8ef9bcf9..53d5609d50 100644 --- a/scripts/populate_tox/populate_tox.py +++ b/scripts/populate_tox/populate_tox.py @@ -139,7 +139,11 @@ def _prefilter_releases( - the list of prefiltered releases - an optional prerelease if there is one that should be tested """ - min_supported = _MIN_VERSIONS.get(integration) + integration_name = ( + TEST_SUITE_CONFIG[integration].get("integration_name") or integration + ) + + min_supported = _MIN_VERSIONS.get(integration_name) if min_supported is not None: min_supported = Version(".".join(map(str, min_supported))) else: diff --git a/tox.ini b/tox.ini index 0a52a4564c..eea115876b 100644 --- a/tox.ini +++ b/tox.ini @@ -10,7 +10,7 @@ # The file (and all resulting CI YAMLs) then need to be regenerated via # "scripts/generate-test-files.sh". # -# Last generated: 2025-09-01T13:33:27.071054+00:00 +# Last generated: 2025-09-01T14:09:50.564158+00:00 [tox] requires = @@ -138,14 +138,14 @@ envlist = {py3.9,py3.11,py3.12}-cohere-v5.13.12 {py3.9,py3.11,py3.12}-cohere-v5.17.0 - {py3.8,py3.12,py3.13}-openai_base-v0.1.3 - {py3.8,py3.12,py3.13}-openai_base-v0.28.1 {py3.8,py3.11,py3.12}-openai_base-v1.0.1 + {py3.8,py3.11,py3.12}-openai_base-v1.35.15 + {py3.8,py3.11,py3.12}-openai_base-v1.69.0 {py3.8,py3.12,py3.13}-openai_base-v1.102.0 - {py3.8,py3.12,py3.13}-openai_notiktoken-v0.1.3 - {py3.8,py3.12,py3.13}-openai_notiktoken-v0.28.1 {py3.8,py3.11,py3.12}-openai_notiktoken-v1.0.1 + {py3.8,py3.11,py3.12}-openai_notiktoken-v1.35.15 + {py3.8,py3.11,py3.12}-openai_notiktoken-v1.69.0 {py3.8,py3.12,py3.13}-openai_notiktoken-v1.102.0 {py3.10,py3.11,py3.12}-openai_agents-v0.0.19 @@ -516,24 +516,22 @@ deps = cohere-v5.13.12: cohere==5.13.12 cohere-v5.17.0: cohere==5.17.0 - openai_base-v0.1.3: openai==0.1.3 - openai_base-v0.28.1: openai==0.28.1 openai_base-v1.0.1: openai==1.0.1 + openai_base-v1.35.15: openai==1.35.15 + openai_base-v1.69.0: openai==1.69.0 openai_base-v1.102.0: openai==1.102.0 openai_base: pytest-asyncio openai_base: tiktoken - openai_base-v0.1.3: httpx<0.28 - openai_base-v0.28.1: httpx<0.28 openai_base-v1.0.1: httpx<0.28 + openai_base-v1.35.15: httpx<0.28 - openai_notiktoken-v0.1.3: openai==0.1.3 - openai_notiktoken-v0.28.1: openai==0.28.1 openai_notiktoken-v1.0.1: openai==1.0.1 + openai_notiktoken-v1.35.15: openai==1.35.15 + openai_notiktoken-v1.69.0: openai==1.69.0 openai_notiktoken-v1.102.0: openai==1.102.0 openai_notiktoken: pytest-asyncio - openai_notiktoken-v0.1.3: httpx<0.28 - openai_notiktoken-v0.28.1: httpx<0.28 openai_notiktoken-v1.0.1: httpx<0.28 + openai_notiktoken-v1.35.15: httpx<0.28 openai_agents-v0.0.19: openai-agents==0.0.19 openai_agents-v0.1.0: openai-agents==0.1.0 From 719294669d74de5389f3a6c4782128b32ed4ce9d Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 1 Sep 2025 16:21:26 +0200 Subject: [PATCH 6/6] readme --- scripts/populate_tox/README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scripts/populate_tox/README.md b/scripts/populate_tox/README.md index c9a3b67ba0..c48d57734d 100644 --- a/scripts/populate_tox/README.md +++ b/scripts/populate_tox/README.md @@ -153,6 +153,14 @@ be expressed like so: } ``` +### `integration_name` + +Sometimes, the name of the test suite doesn't match the name of the integration. +For example, we have the `openai_base` and `openai_notiktoken` test suites, both +of which are actually testing the `openai` integration. If this is the case, you can use the `integration_name` key to define the name of the integration. If not provided, it will default to the name of the test suite. + +Linking an integration to a test suite allows the script to access integration configuration like for example the minimum version defined in `sentry_sdk/integrations/__init__.py`. + ## How-Tos