opendal icon indicating copy to clipboard operation
opendal copied to clipboard

Better Release Prepare Experience (Interactive Version Updates)

Open tisonkun opened this issue 10 months ago • 1 comments

I'd considering an interactive experience like cargo-release, that prompt package versions one by one and ask the release manager to input the correct version. Then commit the updates as well as generate a release list.

Perhaps pick up in the next month.

Originally posted by @tisonkun in https://github.com/apache/opendal/pull/5592#discussion_r1938426561

tisonkun avatar Feb 02 '25 07:02 tisonkun

I'm interested in implementing this.


I don't want it to be interactive. I'm not comfortable with requiring every release manager to operate things through a TUI. My current idea is to generate something like the following (the format doesn't matter; plain text or TSV both work well):

core 0.51.0 -> 0.51.2
bindings/python 0.44.0 -> 0.45.0
...

Let's call this a release plan. Users can edit this plan however they want. Once the release plan has been discussed and reviewed, the release manager can run just release run to execute the plan, similar to how we currently use just update-version and just release.

The workflow will be:

  • just release plan -> a default release plan generated with all projects bumps a patch version.
  • The plan will be saved to dist/release_plan.txt and print to console.
  • RM will add this release plan in the tracking issues and discussion thread.
  • After this release plan approved, RM and start a PR (it's also fine to discuss in the PR directly)

Xuanwo avatar Feb 02 '25 08:02 Xuanwo