Description
README.release.md contains only one instruction: run the make_release_commit Nox session and follow its output. The implementation in noxfile.py validates an X.Y.Z version, requires a clean worktree, runs Towncrier, and prints manual commit, push, and tag commands. .github/workflows/cd.yml then builds tagged revisions, creates a GitHub release, and publishes non-prerelease builds to PyPI when credentials are present. None of these boundaries, prerequisites, or failure points are explained in the release guide.
Steps to reproduce
1. Open README.release.md.
2. Try to determine which branch must be used, what the Nox task changes, when to commit, when to tag, and when PyPI publishing occurs.
3. Compare the missing information with noxfile.py and .github/workflows/cd.yml.
Expected behavior
The release guide should document the clean-worktree requirement, version format, changelog-fragment review and compilation, release commit, CI gate, Git tag, GitHub release, stable-versus-prerelease PyPI behavior, required credentials, and post-release verification. It should also explain recovery before and after a tag is pushed, including how to handle a failed CI/CD run without reusing a published version incorrectly.
Actual behavior
The guide delegates the process to terminal output and leaves maintainers dependent on implementation details. It does not explain that make_release_commit prepares changes but does not itself commit or tag, or that the CD workflow may create a GitHub release without publishing to PyPI when its token is unavailable.
Environment
- Python version: Any supported version
- b2sdk version:
master at f3ab7b71
- OS: Any
Description
README.release.mdcontains only one instruction: run themake_release_commitNox session and follow its output. The implementation innoxfile.pyvalidates anX.Y.Zversion, requires a clean worktree, runs Towncrier, and prints manual commit, push, and tag commands..github/workflows/cd.ymlthen builds tagged revisions, creates a GitHub release, and publishes non-prerelease builds to PyPI when credentials are present. None of these boundaries, prerequisites, or failure points are explained in the release guide.Steps to reproduce
Expected behavior
The release guide should document the clean-worktree requirement, version format, changelog-fragment review and compilation, release commit, CI gate, Git tag, GitHub release, stable-versus-prerelease PyPI behavior, required credentials, and post-release verification. It should also explain recovery before and after a tag is pushed, including how to handle a failed CI/CD run without reusing a published version incorrectly.
Actual behavior
The guide delegates the process to terminal output and leaves maintainers dependent on implementation details. It does not explain that
make_release_commitprepares changes but does not itself commit or tag, or that the CD workflow may create a GitHub release without publishing to PyPI when its token is unavailable.Environment
masteratf3ab7b71