Skip to content
Open
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,6 @@ Starting with version 4.0.0, `typing_extensions` uses
[Semantic Versioning](https://semver.org/). See the documentation
for more detail.

## Development version
After a release the version is increased once in [pyproject.toml](/pyproject.toml) and
appended with a `.dev` suffix, e.g. `4.0.1.dev`.
Further subsequent updates are not planned between releases.

# Type stubs

A stub file for `typing_extensions` is maintained
Expand Down Expand Up @@ -93,15 +88,18 @@ pipx run pre-commit run -a

# Workflow for PyPI releases

- Make sure you follow the versioning policy in the documentation
(e.g., release candidates before any feature release, do not release development versions)
- Make sure to release at least one release candidate (starting with `rc1`) before making a full release. E.g. release `4.2.0rc1` before releasing `4.2.0`.
When an urgent hotfix is necessary (and you bump only the patch version), you can skip the release candidates.
Comment thread
srittau marked this conversation as resolved.
Outdated

- Ensure that GitHub Actions reports no errors.

- Check that `CHANGELOG.md` accurately reflects all important changes committed to `main` since the previous release.

- Update the version number in `typing_extensions/pyproject.toml` and in
`typing_extensions/CHANGELOG.md`.
`typing_extensions/CHANGELOG.md` by removing `.dev0` and potentially adding the `rcX` suffix:
- `4.1.0.dev0` → `4.1.0rc1`
Comment thread
srittau marked this conversation as resolved.
Outdated
- `4.1.0rc2.dev0` → `4.1.0rc2` or `4.1.0` when making a full release
Comment thread
srittau marked this conversation as resolved.
Outdated
- `4.1.1.dev0` → `4.1.1rc1` or `4.1.1` when making an urgent hotfix
Comment thread
srittau marked this conversation as resolved.
Outdated

- Create a new GitHub release at https://github.com/python/typing_extensions/releases/new.
Details:
Expand All @@ -111,4 +109,6 @@ pipx run pre-commit run -a
- Release automation will finish the release. You'll have to manually
approve the last step before upload.

- After the release has been published on PyPI upgrade the version in number in [pyproject.toml](/pyproject.toml) to a `dev` version of the next planned release. For example, change 4.1.1 to 4.X.X.dev, see also [Development versions](#development-version). # TODO decide on major vs. minor increase.
- After the release has been published on PyPI upgrade the patch or rc version number in [pyproject.toml](/pyproject.toml) and append `.dev0`. For example:
- `4.1.1` → `4.1.2.dev0`
- `4.1.1rc1` → `4.1.1rc2.dev0`
Comment thread
srittau marked this conversation as resolved.
Outdated
Loading