This is an automated email from the ASF dual-hosted git repository.
yihua pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hudi-rs.git
The following commit(s) were added to refs/heads/main by this push:
new 922a62cd fix(release): align the release guide and scripts with their
actual behavior (#717)
922a62cd is described below
commit 922a62cd0ae9af6d0737dd70c4c786ac0de542ff
Author: Y Ethan Guo <[email protected]>
AuthorDate: Thu Sep 3 19:21:05 2026 -0700
fix(release): align the release guide and scripts with their actual
behavior (#717)
---
release/README.md | 12 +++++++-----
release/publish_src_release.sh | 4 +++-
release/upload_src_release_to_dev.sh | 9 ++++++++-
release/verify_src_release.sh | 7 ++++---
4 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/release/README.md b/release/README.md
index 5547cdcd..705f7a66 100644
--- a/release/README.md
+++ b/release/README.md
@@ -31,7 +31,7 @@ This issue tracks the release process as instructed in the
[release guide](https
### Issues
-- [ ] All other issues in the [release
milestone](https://github.com/apache/hudi-rs/milestone/1) should be closed.
+- [ ] All other issues in the [release
milestone](https://github.com/apache/hudi-rs/milestone/xxx) should be closed.
> [!IMPORTANT]
> Highlight blocker issues if any
@@ -89,8 +89,9 @@ named `release/1.0.x`.
For a patch release, don't cut a new branch, use its base release branch. For
example, if it's `0.3.1`, cherry-pick
fixes to `release/0.3.x`.
-Create and merge a PR to bump the major or minor version on the `main` branch.
For example, if the current version
-is `0.3.0`, bump it to `0.5.0` or `1.0.0`.
+Create and merge a PR to bump the major or minor version on the `main` branch,
using
+`./release/bump_version_in_main.sh`. For example, if the current version is
`0.5.0-dev`, bump it to
+`0.6.0-dev` (minor) or `1.0.0-dev` (major); `main` always carries the `-dev`
suffix.
On the release branch, bump the version to indicate pre-release by pushing a
commit.
@@ -273,7 +274,8 @@ CODE_SIGNING_KEY=<your code-signing key id>
./release/upload_src_release_to_dev.sh $RELEASE_VER $CODE_SIGNING_KEY
-./release/publish_src_release.sh $RELEASE_VER $CODE_SIGNING_KEY
+# re-uses the already-signed artifacts from the dev repo, so no signing key is
needed
+./release/publish_src_release.sh $RELEASE_VER
```
// TODO support verify local copy
@@ -317,7 +319,7 @@ git cliff release-$PREV_RELEASE_VER..HEAD | pbcopy
git cliff release-$PREV_RELEASE_VER..HEAD | xclip
```
-In your fork, create a new branch from `main`, prepend the clipboard content
to `changelog.md`, then commit and open a PR to merge into `main`.
+In your fork, create a new branch from `main`, prepend the clipboard content
to `CHANGELOG.md`, then commit and open a PR to merge into `main`.
```shell
git commit -am "chore: update changelog for x.y.z"
diff --git a/release/publish_src_release.sh b/release/publish_src_release.sh
index f43734b5..eb304829 100755
--- a/release/publish_src_release.sh
+++ b/release/publish_src_release.sh
@@ -31,7 +31,9 @@ dist_dirname=hudi-rs-$hudi_version
echo "❗️ Publishing $dist_dirname"
-work_dir="$TMPDIR$(date +'%Y-%m-%d-%H-%M-%S')"
+tmp_root="${TMPDIR:-/tmp}"
+work_dir="${tmp_root%/}/$(date +'%Y-%m-%d-%H-%M-%S')"
+mkdir -p "$work_dir"
svn_dev_url="https://dist.apache.org/repos/dist/dev/hudi/$dist_dirname"
svn_dev_dir="$work_dir/$dist_dirname"
diff --git a/release/upload_src_release_to_dev.sh
b/release/upload_src_release_to_dev.sh
index 240d99ec..8f8a91f6 100755
--- a/release/upload_src_release_to_dev.sh
+++ b/release/upload_src_release_to_dev.sh
@@ -40,6 +40,12 @@ hudi_version=$1
signing_key=$2
repo=dev
+version_pattern="^[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9]+)?$"
+if [[ ! "$hudi_version" =~ $version_pattern ]]; then
+ echo "❌ Version must be in format X.Y.Z or X.Y.Z-{alpha|beta|rc}.W"
+ exit 1
+fi
+
echo "❗️ Releasing Hudi version $hudi_version"
echo "❗️ Uploading to https://dist.apache.org/repos/dist/$repo/hudi/"
echo "❗️ Using signing key: $signing_key"
@@ -55,7 +61,8 @@ fi
dist_repo_subpath=hudi-rs-$hudi_version
-work_dir="$TMPDIR$(date +'%Y-%m-%d-%H-%M-%S')"
+tmp_root="${TMPDIR:-/tmp}"
+work_dir="${tmp_root%/}/$(date +'%Y-%m-%d-%H-%M-%S')"
src_rel_dir="$work_dir/$dist_repo_subpath"
echo ">>> Archiving branch $curr_branch to $src_rel_dir"
mkdir -p "$src_rel_dir"
diff --git a/release/verify_src_release.sh b/release/verify_src_release.sh
index e44b8615..ab6e7959 100755
--- a/release/verify_src_release.sh
+++ b/release/verify_src_release.sh
@@ -29,14 +29,15 @@ fi
hudi_version=$1
repo=$2
-version_pattern="^[0-9]+\.[0-9]+\.[0-9]+(-rc\.[0-9]+)?$"
+version_pattern="^[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9]+)?$"
if [[ ! "$hudi_version" =~ $version_pattern ]]; then
- echo "ERROR: version must be in format X.Y.Z or X.Y.Z-rc.W"
+ echo "ERROR: version must be in format X.Y.Z or X.Y.Z-{alpha|beta|rc}.W"
exit 1
fi
-work_dir="$TMPDIR$(date +'%Y-%m-%d-%H-%M-%S')/svn_dir"
+tmp_root="${TMPDIR:-/tmp}"
+work_dir="${tmp_root%/}/$(date +'%Y-%m-%d-%H-%M-%S')/svn_dir"
hudi_artifact="hudi-rs-$hudi_version"
svn_url="https://dist.apache.org/repos/dist/$repo/hudi/$hudi_artifact"
echo "Checking out src release from $svn_url to $work_dir"