diff --git a/llvm/docs/HowToReleaseLLVM.rst b/llvm/docs/HowToReleaseLLVM.rst --- a/llvm/docs/HowToReleaseLLVM.rst +++ b/llvm/docs/HowToReleaseLLVM.rst @@ -115,7 +115,7 @@ :: - $ git tag -a llvmorg-N-init + $ git tag -sa llvmorg-N-init #. Clear the release notes in trunk. @@ -130,10 +130,7 @@ ^^^^^^^^^^^^^^^^^^^ After creating the LLVM release branch, update the release branches' -``CMakeLists.txt`` versions from '``X.0.0git``' to '``X.0.0``'. - -In addition, the version numbers of all the Bugzilla components must be updated -for the next release. +version with the script in ``llvm/utils/release/bump-version.py``. Tagging the LLVM Release Candidates ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -142,7 +139,7 @@ :: - $ git tag -a llvmorg-X.Y.Z-rcN + $ git tag -sa llvmorg-X.Y.Z-rcN The Release Manager must supply pre-packaged source tarballs for users. This can be done with the export.sh script in utils/release. @@ -206,12 +203,12 @@ The official release managers are: -* Major releases (X.0): Hans Wennborg -* Stable releases (X.n): Tom Stellard +* Even releases: Tom Stellard (tstellar@redhat.com) +* Odd releases: Tobias Hieta (tobias@hieta.se) The official release testers are volunteered from the community and have consistently validated and released binaries for their targets/OSs. To contact -them, you should post on the `Discourse forums (Project +them, you should post on the `Discourse forums (Project Infrastructure - Release Testers). `_ The official testers list is in the file ``RELEASE_TESTERS.TXT``, in the ``LLVM`` @@ -247,7 +244,7 @@ architecture. We also ask that the OS distribution release managers test their packages with -the first candidate of every release, and report any *new* errors in Bugzilla. +the first candidate of every release, and report any *new* errors in GitHub. If the bug can be reproduced with an unpatched upstream version of the release candidate (as opposed to the distribution's own build), the priority should be release blocker. @@ -265,16 +262,10 @@ --------------------- Every regression that is found during the tests (as per the criteria above), -should be filled in a bug in Bugzilla with the priority *release blocker* and -blocking a specific release. - -To help manage all the bugs reported and which ones are blockers or not, a new -"[meta]" bug should be created and all regressions *blocking* that Meta. Once -all blockers are done, the Meta can be closed. +should be filled in a bug in GitHub and added to the release milestone. If a bug can't be reproduced, or stops being a blocker, it should be removed -from the Meta and its priority decreased to *normal*. Debugging can continue, -but on trunk. +from the Milestone. Debugging can continue, but on trunk. Backport Requests ----------------- @@ -317,13 +308,8 @@ issue. If all the tests pass, then the pull request can be merged. If not, then add a comment on the issue asking someone to take a look at the failures. -#. Once the pull request has been merged push it to the official release branch: - - :: - - git checkout release/XX.x - git pull --ff-only https://github.com/llvm/llvm-project-release-prs release/XX.x - git push https://github.com/llvm/llvm-project release/XX.x:release/XX.x +#. Once the pull request has been merged push it to the official release branch + with the script ``llvm/utils/git/sync-release-repo.sh``. Then add a comment to the issue stating that the fix has been merged along with the git hashes from the release branch. Add the release:merged label to the issue @@ -360,15 +346,6 @@ ABI compatibility with the previous major release. -Merging Patches -^^^^^^^^^^^^^^^ - -Use the ``git cherry-pick -x`` command to merge patches to the release branch: - -#. ``git cherry-pick -x abcdef0`` - -#. Run regression tests. - Release Final Tasks ------------------- @@ -395,7 +372,7 @@ :: - $ git tag -a llvmorg-X.Y.Z + $ git tag -sa llvmorg-X.Y.Z $ git push https://github.com/llvm/llvm-project.git llvmorg-X.Y.Z Update the LLVM Website @@ -435,7 +412,7 @@ :: - $ git log --format="[%h %s](https://github.com/llvm/llvm-project/commit/%H)" llvmorg-X.0.N-1..llvmorg-X.0.N + $ git log --format="- %aN: [%s (%h)](https://github.com/llvm/llvm-project/commit/%H)" llvmorg-X.0.N-1..llvmorg-X.0.N Once the release has been announced add a link to the announcement on the llvm homepage (from the llvm-www repo) in the "Release Emails" section.