Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include cheatsheet for release process #127

Merged
merged 5 commits into from
Nov 14, 2024
Merged
Changes from 2 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
10 changes: 10 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -182,3 +182,13 @@ Git tag for the full version number, like `git tag 0.21.1`, and
push the tag to GitHub.

After the release, you need to cherry-pick the release notes prep from `stable/*` to the `main` branch _and_ the stable branch for the latest minor version. For example, if the latest minor version is `0.3` and you released the patch `0.2.3`, then you need the copy the release notes `0.2.3.rst` into both `main` and `stable/0.3`. This ensures that the release notes show up for all future versions.

### Cheatsheet for release process

* Create branch ``jt-release-notes-x.x.x`` (ie: ``jt-release-notes-0.9.1``)
Copy link
Member

Choose a reason for hiding this comment

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

Do we really need to start the branch name with jt-*?

Copy link
Contributor Author

@jesus-talavera-ibm jesus-talavera-ibm Nov 14, 2024

Choose a reason for hiding this comment

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

You a right! Sorry, my mistake. The rest of the branch name wasn't correct neither. I just fixed it

55383f9

* Update [docs/conf.py](docs/conf.py) and [setup.py](setup.py) with new x.x.x version
* Review that changes in this release are included here [release-notes/unreleased](release-notes/unreleased). If we find something is missing, we still can add it manually at this point (to know how to create it, refer to ``Adding a new release note`` section)
* Run ``towncrier build --version=x.x.x --yes`` so release notes from [release-notes/unreleased](release-notes/unreleased) are flatten to [release-notes/x.x.x.rst](release-notes/x.x.x.rst)
y4izus marked this conversation as resolved.
Show resolved Hide resolved
* Create PR called ``Preparing release qiskit-ibm-transpiler x.x.x`` from ``jt-release-notes-x.x.x`` to ``main|stable/x.x``
* Once PR is merged, add a tag to that commit merge or squash merge with value ``x.x.x`` (ie: ``0.9.1``)
* After that tag is pushed, GitHub actions will automatically release that new version to [pypi](https://pypi.org/project/qiskit-ibm-transpiler/)