Skip to content

[codex] Add independent beta release for the Python SDK#24828

Merged
aibrahim-oai merged 4 commits into
mainfrom
dev/python-sdk-beta-release
May 28, 2026
Merged

[codex] Add independent beta release for the Python SDK#24828
aibrahim-oai merged 4 commits into
mainfrom
dev/python-sdk-beta-release

Conversation

@aibrahim-oai
Copy link
Copy Markdown
Collaborator

Why

openai-codex needs a beta release lifecycle without requiring beta releases of its pinned runtime package. Previously, SDK staging rewrote its runtime dependency to the SDK version, which made an SDK-only beta impossible.

What changed

  • Set the initial SDK beta version to 0.1.0b1 and pin it to published stable openai-codex-cli-bin==0.132.0.
  • Decoupled SDK release staging from runtime versioning so it preserves the reviewed exact runtime pin.
  • Added a python-v* tag workflow that builds and publishes only openai-codex through PyPI trusted publishing.
  • Removed the Beta classifier from runtime package metadata for future runtime publications.
  • Regenerated protocol-derived SDK models from the selected stable runtime package.

0.132.0 is the newest stable runtime admitted by the checked-in dependency date fence and retains the Linux wheel family currently used by SDK CI.

Release setup

Before pushing python-v0.1.0b1, configure PyPI trusted publishing for the openai-codex project with workflow python-sdk-release.yml, environment pypi, and job publish-python-sdk.

Validation

  • uv run --frozen --extra dev ruff check src/openai_codex scripts examples tests
  • Parsed .github/workflows/python-sdk-release.yml with PyYAML.
  • Built staged release artifacts locally: openai_codex-0.1.0b1-py3-none-any.whl and openai_codex-0.1.0b1.tar.gz.
  • Verified wheel metadata pins openai-codex-cli-bin==0.132.0.
  • Tests are deferred to online CI for this PR.

@aibrahim-oai aibrahim-oai marked this pull request as ready for review May 27, 2026 23:09
Copy link
Copy Markdown
Contributor

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 25aabfc35d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

fi

cd sdk/python
uv sync --extra dev --frozen
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Run the SDK release build on a musl-compatible runner

For a python-v* tag this job runs on ubuntu-latest, but this uv sync installs the locked openai-codex-cli-bin==0.132.0 dependency before staging. The lockfile only contains macOS, Windows, and musllinux wheels for that package (sdk/python/uv.lock lines 310-319), so on Ubuntu/glibc uv reports that the distribution has no wheel for the current platform and the release workflow fails before publishing. Run this step in the same Alpine/musl environment used by the SDK CI, or avoid requiring the runtime wheel on the Ubuntu release runner.

Useful? React with 👍 / 👎.

Comment thread sdk/python/pyproject.toml
[project]
name = "openai-codex"
version = "0.131.0a4"
version = "0.1.0b1"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep the Python SDK version monotonic

Publishing the new beta as 0.1.0b1 makes it sort lower than the already-published SDK versions such as 0.131.0a4 under PEP 440, so users asking pip/uv for --pre openai-codex or for an upgrade will continue to receive the older 0.131.0a4 release instead of this independent beta. The SDK can pin an older runtime independently, but the SDK distribution version itself still needs to be greater than the existing releases (for example a new major/minor scheme that is monotonic) for the beta release lifecycle to be discoverable by normal package resolution.

Useful? React with 👍 / 👎.

@aibrahim-oai aibrahim-oai enabled auto-merge (squash) May 28, 2026 00:09
@aibrahim-oai aibrahim-oai disabled auto-merge May 28, 2026 00:57
@aibrahim-oai aibrahim-oai merged commit 4d0c4cd into main May 28, 2026
31 checks passed
@aibrahim-oai aibrahim-oai deleted the dev/python-sdk-beta-release branch May 28, 2026 00:57
@github-actions github-actions Bot locked and limited conversation to collaborators May 28, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant