[docs] Update HowToReleaseLLVM documentation.

There was a bunch of references to bugzilla and other old
instructions in there. I have updated it to match the current
reality.

Reviewed By: tstellar

Differential Revision: https://reviews.llvm.org/D149131
This commit is contained in:
Tobias Hieta 2023-04-25 09:54:33 +02:00
parent 1675a14b8d
commit 33f509b2f4
No known key found for this signature in database
GPG Key ID: 44F2485E45D59042

View File

@ -115,7 +115,7 @@ Branch the Git trunk using the following procedure:
::
$ git tag -a llvmorg-N-init
$ git tag -sa llvmorg-N-init
#. Clear the release notes in trunk.
@ -130,10 +130,7 @@ Update LLVM Version
^^^^^^^^^^^^^^^^^^^
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 @@ Tag release candidates:
::
$ 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 @@ release is out, all bugs reported will have to go on the next stable release.
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). <https://discourse.llvm.org/c/infrastructure/release-testers/66>`_
The official testers list is in the file ``RELEASE_TESTERS.TXT``, in the ``LLVM``
@ -247,7 +244,7 @@ We ask that all LLVM developers test the release in any the following ways:
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 @@ Reporting Regressions
---------------------
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 @@ This section describes how to triage bug reports:
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 @@ Below are the rules regarding patching the release branch:
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 @@ Tag the final release sources:
::
$ 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 @@ using this command and add it to the post.
::
$ 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.