This is an automated email from the ASF dual-hosted git repository.
sejer pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-wayang-website.git
The following commit(s) were added to refs/heads/main by this push:
new 228356c0 Update how-to-make-a-release.md
228356c0 is described below
commit 228356c0f2cbfc1d0286b425817d346b83d92fa5
Author: mspruc <[email protected]>
AuthorDate: Tue Jun 24 10:10:06 2025 +0200
Update how-to-make-a-release.md
added extra step for branching before mvn release:branch, since mvn
release:branch commits directly to your working branch, if you are on main this
will cause mvn release:branch to fail since main is protected.
---
docs/community/how-to-make-a-release.md | 24 +++++++++++++++---------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/docs/community/how-to-make-a-release.md
b/docs/community/how-to-make-a-release.md
index 5f79e9b1..94e36e33 100644
--- a/docs/community/how-to-make-a-release.md
+++ b/docs/community/how-to-make-a-release.md
@@ -10,31 +10,37 @@ This guide documents the steps to be followed when making a
release.
**Convention**: The repository should be in a snapshot version of the next
release. For instance, 1.0.1-SNAPSHOT means that the next release number should
be 1.0.1.
-The process in general is as follows. The release manager creates the right
artifacts (source files) using maven commands. This forms a release candidate.
Then the release candidate, which should be uploaded in the "development
directory" of the apache svn server, goes for voting first in the PPMC and then
in the general incubator list. Once accepted by the latter, the release can
actually happen, where the artifacts are uploaded to the "release directory" of
the apache svn server and p [...]
+The process in general is as follows. The release manager creates the right
artifacts (source files) using maven commands. This forms a release candidate.
Then the release candidate, which should be uploaded in the "development
directory" of the apache svn server, goes for voting first in the PPMC and then
in the general incubator list. Once accepted by the latter, the release can
actually happen, where the artifacts are uploaded to the "release directory" of
the apache svn server and po [...]
+
+**If any Maven step should fail**:
+Please note that `mvn:release` commands eagerly commit directly to your
working branch, if your command fails you may have to revert the last commit.
1. Clone the repo or pull latest changes:
``git pull``
2. Create release branch:
-``mvn release:branch -DbranchName=rel/1.0.0-rc5``
+- (This step is only neccessary if you don't have write access to main branch)
+ ``git checkout -b release-prep``
+- ``mvn release:branch -DbranchName=rel/1.0.0-rc5``
+
-3. Switch to branch:
+4. Switch to branch:
``git checkout rel/1.0.0-rc5``
-4. Set upstream of branch:
+5. Set upstream of branch:
``git push -u <remote_name> <branch_name>``
-5. Update RELEASE_NOTES and check NOTICE to have the correct year
+6. Update RELEASE_NOTES and check NOTICE to have the correct year
-6. Check if everything is working:
+7. Check if everything is working:
``mvn clean install``
-7. Check if there are no SNAPSHOT references: ``find . -type f -name 'pom.xml'
-exec grep -l "SNAPSHOT" {} \;``
+8. Check if there are no SNAPSHOT references: ``find . -type f -name 'pom.xml'
-exec grep -l "SNAPSHOT" {} \;``
-8. Run ``mvn release:clean``
+9. Run ``mvn release:clean``
-9. Modify the tag in the root pom.xml file to contain the right version with
the rc number:
+10. Modify the tag in the root pom.xml file to contain the right version with
the rc number:
`` <tag>v1.0.0-rc5</tag>`` (2 places in the file)
Now depending if it's the first time you do a release continue with the
following steps, otherwise jump to step **16**.