xref: /llvm-project/third-party/benchmark/docs/releasing.md (revision a5b797172cc902db166e9a695716fb81405f86e4)
15dda2efdSMircea Trofin# How to release
25dda2efdSMircea Trofin
35dda2efdSMircea Trofin* Make sure you're on main and synced to HEAD
4*a5b79717SMircea Trofin* Ensure the project builds and tests run
55dda2efdSMircea Trofin    * `parallel -j0 exec ::: test/*_test` can help ensure everything at least
65dda2efdSMircea Trofin      passes
75dda2efdSMircea Trofin* Prepare release notes
85dda2efdSMircea Trofin    * `git log $(git describe --abbrev=0 --tags)..HEAD` gives you the list of
95dda2efdSMircea Trofin      commits between the last annotated tag and HEAD
105dda2efdSMircea Trofin    * Pick the most interesting.
11*a5b79717SMircea Trofin* Create one last commit that updates the version saved in `CMakeLists.txt` and `MODULE.bazel`
12*a5b79717SMircea Trofin  to the release version you're creating. (This version will be used if benchmark is installed
13*a5b79717SMircea Trofin  from the archive you'll be creating in the next step.)
145dda2efdSMircea Trofin
155dda2efdSMircea Trofin```
16*a5b79717SMircea Trofinproject (benchmark VERSION 1.8.0 LANGUAGES CXX)
17a290770fSMircea Trofin```
18a290770fSMircea Trofin
19*a5b79717SMircea Trofin```
20*a5b79717SMircea Trofinmodule(name = "com_github_google_benchmark", version="1.8.0")
215dda2efdSMircea Trofin```
225dda2efdSMircea Trofin
235dda2efdSMircea Trofin* Create a release through github's interface
245dda2efdSMircea Trofin    * Note this will create a lightweight tag.
255dda2efdSMircea Trofin    * Update this to an annotated tag:
265dda2efdSMircea Trofin      * `git pull --tags`
275dda2efdSMircea Trofin      * `git tag -a -f <tag> <tag>`
28a290770fSMircea Trofin      * `git push --force --tags origin`
29*a5b79717SMircea Trofin* Confirm that the "Build and upload Python wheels" action runs to completion
30*a5b79717SMircea Trofin    * Run it manually if it hasn't run.
31*a5b79717SMircea Trofin    * IMPORTANT: When re-running manually, make sure to select the newly created `<tag>` as the workflow version in the "Run workflow" tab on the GitHub Actions page.
32