Skip to content

Sync PyPI metadata with release docs#283

Open
bmdhodl wants to merge 3 commits intomainfrom
codex/pypi-readme-sync
Open

Sync PyPI metadata with release docs#283
bmdhodl wants to merge 3 commits intomainfrom
codex/pypi-readme-sync

Conversation

@bmdhodl
Copy link
Copy Markdown
Owner

@bmdhodl bmdhodl commented Mar 28, 2026

Summary

  • generate the PyPI package README from the root README plus the current changelog section for the tagged SDK version
  • pin source-doc links in the generated README to the release tag so the PyPI page stays aligned with what shipped
  • enforce the sync in CI and regenerate it automatically in the publish workflow

Proof

  • full local suite passed: 558 passed, coverage 93.96%
  • structural tests passed
  • bandit passed
  • python -m build ./sdk passed
  • python -m twine check sdk/dist/* passed
  • built wheel and sdist metadata both contain the generated release notes and version-pinned links
  • proof artifacts:
    • .codex-proof/pypi-readme-metadata.txt
    • output/playwright/pypi-sync-home.png
    • output/playwright/pypi-sync-signin.png

Notes

  • this keeps PyPI synced on every release without adding any SDK runtime dependency
  • sdk/PYPI_README.md is generated; source-of-truth is README.md + CHANGELOG.md

@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds an automated pipeline to keep the SDK’s PyPI long description aligned with the shipped release: the PyPI README is generated from README.md plus the current version’s changelog section, with repository links pinned to the release tag, and enforced in CI/publish.

Changes:

  • Add scripts/generate_pypi_readme.py to generate/check sdk/PYPI_README.md with version-pinned links and embedded release notes.
  • Switch package metadata to publish sdk/PYPI_README.md as the PyPI readme, and add CI + publish workflow steps to enforce/regenerate it.
  • Add a test to validate generation and sync of the committed PyPI README.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
scripts/generate_pypi_readme.py Implements generator/checker for the PyPI README with version-pinned link rewriting and changelog extraction.
sdk/PYPI_README.md Adds the generated PyPI README artifact committed to the repo.
sdk/pyproject.toml Points project.readme to PYPI_README.md for PyPI metadata.
sdk/tests/test_pypi_readme_sync.py Adds tests to validate generated content and sync with committed README.
.github/workflows/ci.yml Enforces README sync in CI and extends ruff lint to the generator script.
.github/workflows/publish.yml Regenerates the PyPI README before building/publishing on tag pushes.
ops/04-DEFINITION_OF_DONE.md Adds release checklist item to ensure PyPI README regeneration/sync.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants