Skip to content

👷 ci(release): adopt shared release workflow - #282

Draft
gaborbernat wants to merge 18 commits into
pytest-dev:mainfrom
gaborbernat:fix/release-contract
Draft

gaborbernat wants to merge 18 commits into
pytest-dev:mainfrom
gaborbernat:fix/release-contract

Conversation

@gaborbernat

@gaborbernat gaborbernat commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

This draft brings pytest-env onto the shared release path. The PR news check accepts named or numbered fragments and remains required even when skip news is present; the shared validator decides whether the label permits an empty set. Release preparation uses a repository-scoped App token. The tagged path checks the source, builds the distribution, and renders notes before writing a draft GitHub Release. It uploads only missing distributions to PyPI, verifies the full published file set, then publishes the GitHub Release. The write-token jobs do not install project tools. The GitHub Release Action receives the repository explicitly because its jobs run without a checkout.

The changelog now covers all 29 PyPI versions with user-facing categories, stable anchors, and human author credits. Four early PyPI versions have no Git tags or GitHub Releases; their entries are based on the corresponding version commits. This PR does not create those tags or edit live Release bodies.

The lock retains the project's selectable dependency groups and build backend across supported Python versions and platforms, with a seven-day update cutoff. Frozen pre-commit hooks and exact mdformat plugins have a weekly update route. The package metadata now declares its import name and SPDX license, and the published README resolves its repository links.

Pytest-dev still needs a repository-scoped release App client ID and private key in the protected release-auth environment before the first prepared release. Keep this PR in draft until the shared release-creator and github-workflows revisions are published and the temporary pins are replaced.

Release jobs now install only the tool groups they use from the full project lock.

@gaborbernat gaborbernat added the skip news PR does not need a changelog entry label Oct 20, 2026
@gaborbernat gaborbernat changed the title 🔧 build(release): lock all project groups 👷 ci(release): adopt shared release workflow Oct 21, 2026
@gaborbernat gaborbernat added documentation Improvements or additions to documentation enhancement New feature or request and removed skip news PR does not need a changelog entry labels Oct 21, 2026
Use release-creator 0.5.0 from the project lock. Open weekly release-tool
PRs with the repo-only App so pull request checks run on those changes.
The App needs Pull requests write as well as Contents write.
Use the current shared actions and release-creator 0.5.1 to enforce
the full project lock during release work. Rerun bot PR cooldown checks
daily after their seven-day age gate.

This branch has not been deployed

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

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant