Skip to content

MAINT: Support OpenAI 2 and 3 - #3214

Merged
Roman Lutz (romanlutz) merged 4 commits into
mainfrom
dependabot/uv/openai-3.29.0
Oct 15, 2026
Merged

Roman Lutz (romanlutz) merged 4 commits into
mainfrom
dependabot/uv/openai-3.29.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Description

Support OpenAI SDK 2 and 3 without requiring a LiteLLM prerelease.

  • Declare openai>=2.20.0,<4. SDK 2 remains supported, while default package installations can select SDK 3. The next untested major version is excluded.
  • Leave the LiteLLM requirements unchanged. The shared development lock retains stable LiteLLM 1.104.0 and OpenAI 2.54.0, matching main. Stable LiteLLM's openai<3 requirement selects the supported SDK 2 line when that extra is installed. No third-party locked package differs from main.
  • Test Python 3.11 and 3.14 with OpenAI 2.20.0, 2.54.0, 3.0.0, and 3.29.0 without LiteLLM. Test stable LiteLLM with SDK 2 and explicitly reject a prerelease in that CI path. There is no dependency on a future LiteLLM release.
  • Compare normalized URL components and separately exercise outgoing HTTP/WebSocket URLs through fabricated transport responses.
  • Retain the videos adapter for compatible endpoints with five scoped deprecation type-check exceptions. Runtime SDK warnings remain visible; this does not restore OpenAI's retired Sora service.
  • Document custom HTTPX/HTTPX2 clients, exception boundaries, TLS trust stores, and package versus development-lock resolution.

Tests and Documentation

Current head 21b6f405: all 36 required checks passed. build_and_test passed all 24 OS/Python/extras test jobs, all eight SDK compatibility jobs, and all three pre-commit jobs. Coverage, Docker, frontend, documentation, and CodeQL workflows also passed. The previously failing macOS 3.11/all-extras job passed on this head without skipping tests or weakening analytics deadlines.

Local environment: Windows x64, Python 3.14.4. Provider responses and WebSocket frames are fabricated; no provider credentials or paid API calls were used.

  • uv run --frozen --no-sync python -m pytest -q -n 4 --dist=loadfile --timeout=120 tests\unit\prompt_target tests\unit\embedding tests\unit\auth tests\unit\backend\test_analytics_routes.py tests\unit\memory\test_attack_analytics_eval_identity.py --tb=short: 2,256 passed, 1 skipped with stable LiteLLM 1.104.0 and OpenAI 2.54.0, including both analytics files from the old macOS failure.
  • uv run --frozen --no-sync --with openai==2.20.0 python -m pytest -q --timeout=120 tests\unit\prompt_target\target\test_openai_sdk_compatibility.py tests\unit\prompt_target\target\test_openai_url_warnings.py tests\unit\prompt_target\target\test_litellm_chat_target.py --tb=short: 177 passed with stable LiteLLM.
  • Base-install controls after uv sync --frozen verified that LiteLLM was absent: compatibility, URL, error-handling, target-auth, and embedding tests each produced 159 passed, 8 optional LiteLLM cases skipped on SDK 3.0.0 and 3.29.0. The full commands are encoded in the compatibility workflow and were also exercised by the passing current-head matrix.
  • uv run --frozen --no-sync ty check pyrit tests\unit\prompt_target\target\test_openai_sdk_compatibility.py tests\unit\prompt_target\target\test_openai_url_warnings.py --output-format concise: passed with stable dependencies and all extras.
  • uv run --frozen --no-sync python -m build_scripts.validate_docs: passed.
  • uv lock --check --offline: passed.
  • Commit-time documentation, YAML, whitespace, and Ruff hooks: passed. Current-head remote pre-commit jobs also passed.

Documentation: updated doc/code/targets/0_prompt_targets.md and OpenAI target constructor documentation. No notebook code changed, so JupyText execution was not needed. Live-provider integration tests were not run.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Oct 14, 2026
@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.14, dev)

     1 files  ± 0       1 suites  ±0   8m 2s ⏱️ -16s
28 081 tests +64  27 756 ✅ +56  325 💤 +8  0 ❌ ±0 
28 185 runs  +64  27 860 ✅ +56  325 💤 +8  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

@dependabot
dependabot Bot force-pushed the dependabot/uv/openai-3.29.0 branch from 256bc34 to e57cd44 Compare October 15, 2026 02:55
@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.12, dev)

     1 files  ± 0       1 suites  ±0   6m 42s ⏱️ +16s
28 081 tests +64  27 756 ✅ +56  325 💤 +8  0 ❌ ±0 
28 185 runs  +64  27 860 ✅ +56  325 💤 +8  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

Bumps [openai](https://github.com/openai/openai-python) from 2.54.0 to 3.29.0.
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](openai/openai-python@v2.54.0...v3.29.0)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 3.29.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/uv/openai-3.29.0 branch from e57cd44 to 9f9f21d Compare October 15, 2026 03:57
Bound OpenAI to >=2.20.0,<4 and temporarily pin the SDK-compatible LiteLLM development release. Cover native and legacy transports, errors, authentication, binary responses, embeddings, and realtime on both SDK lines, with a CI matrix for base and LiteLLM installations. Document the stable LiteLLM release gate and retain compatible video endpoints with narrow deprecation exceptions.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 963182a0-189b-4a74-bbbd-f7229781f6e2
@romanlutz Roman Lutz (romanlutz) changed the title MAINT: Bump openai from 2.54.0 to 3.29.0 MAINT: Support OpenAI 2 and 3 Oct 15, 2026
@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.11, dev)

     1 files  ± 0       1 suites  ±0   7m 43s ⏱️ -12s
28 081 tests +64  27 756 ✅ +56  325 💤 +8  0 ❌ ±0 
28 185 runs  +64  27 860 ✅ +56  325 💤 +8  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.14, dev_all)

     1 files  ± 0       1 suites  ±0   8m 53s ⏱️ +7s
28 411 tests +64  28 405 ✅ +64  6 💤 ±0  0 ❌ ±0 
28 515 runs  +64  28 509 ✅ +64  6 💤 ±0  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.11, dev_all)

     1 files  ± 0       1 suites  ±0   8m 16s ⏱️ + 3m 4s
28 411 tests +64  28 405 ✅ +64  6 💤 ±0  0 ❌ ±0 
28 515 runs  +64  28 509 ✅ +64  6 💤 ±0  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.12, dev_all)

     1 files  ± 0       1 suites  ±0   6m 56s ⏱️ +9s
28 411 tests +64  28 405 ✅ +64  6 💤 ±0  0 ❌ ±0 
28 515 runs  +64  28 509 ✅ +64  6 💤 ±0  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.13, dev)

     1 files  ± 0       1 suites  ±0   8m 0s ⏱️ +13s
28 081 tests +64  27 756 ✅ +56  325 💤 +8  0 ❌ ±0 
28 185 runs  +64  27 860 ✅ +56  325 💤 +8  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Pytest (3.13, dev_all)

     1 files  ± 0       1 suites  ±0   8m 46s ⏱️ + 3m 6s
28 411 tests +64  28 405 ✅ +64  6 💤 ±0  0 ❌ ±0 
28 515 runs  +64  28 509 ✅ +64  6 💤 ±0  0 ❌ ±0 

Results for commit 21b6f40. ± Comparison against base commit 5393655.

♻️ This comment has been updated with latest results.

Restore the stable LiteLLM and OpenAI 2 development lock. Test SDK 3 in base installations without LiteLLM, restrict stable LiteLLM compatibility jobs to SDK 2, and remove the unnecessary prerelease release gate.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 963182a0-189b-4a74-bbbd-f7229781f6e2
@romanlutz
Roman Lutz (romanlutz) merged commit 566e470 into main Oct 15, 2026
73 checks passed
@romanlutz
Roman Lutz (romanlutz) deleted the dependabot/uv/openai-3.29.0 branch October 15, 2026 06:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant