SIGN IN SIGN UP

chore: remove unused dependencies and pin build tooling (#3650)

## Summary

- Remove unused runtime and development dependencies.
- Keep pandas type stubs in the development environment rather than the
`datalib` extra.
- Replace the affected file-test matchers with direct assertions and pin
the existing README build hook.
- Refresh the lockfiles without upgrading retained packages. No SDK API
or Python-version changes.

## Dependency counts

Counts are unique third-party distribution names across supported
lockfile markers.

| Scope | Before | After |
| --- | ---: | ---: |
| Default runtime | 17 | 15 |
| All runtime extras | 41 | 37 |
| Development lock | 98 | 88 |

## Validation

- Ruff, Pyright, mypy, and import checks pass.
- Wheel and source distribution build and dependency-metadata checks
pass.
- Full mocked tests: 7,664 passed / 31 skipped with Pydantic v2; 7,650
passed / 45 skipped with v1.

[Full dependency review (internal access
required)](https://github.com/openai/openai-python-internal/blob/67531d875450449e2120a3aa54e4343fecf7bf21/docs/dependency-audit/2026-08-18/README.md).

Co-authored-by: apcha-oai <228803254+apcha-oai@users.noreply.github.com>
A
Alex Chang committed
eee8e4a7d0e42bb0d6b9aa01c4dd8e04aaac3ff4
Parent: 44c1560
Committed by GitHub <noreply@github.com> on 8/18/2026, 8:57:41 PM