This is now documented at 
https://pulsar.apache.org/contribute/maintenance-process/
Contributions are welcome to improve this starting point.

-Lari

On 2024/08/21 12:26:08 Lari Hotari wrote:
> Dear Apache Pulsar Committers,
> 
> I hope this email finds you well. I wanted to share some important reminders 
> regarding PR merging and release management. This reminder is for Apache 
> Pulsar committers since they have access for these tasks. Please take a 
> moment to review the following information:
> 
> Labeling PRs for Release Branches
> 
> Before merging a PR, please ensure you label the releases where the PR should 
> also be applied. Our current process involves adding release labels for the 
> next pending releases so that we also cherry-pick fixes to maintenance 
> branches.
> 
> Always label non-breaking fixes to the supported maintenance version branches 
> (currently branch-3.0 and branch-3.3). Right now 3.0.7 is the next release 
> for branch-3.0 and 3.3.1 is the next release for branch-3.3. The respective 
> PR labels are release/3.0.7 and release/3.3.1.
> 
> These labels are crucial for searching PRs that need to be cherry-picked 
> during the release process.
> 
> Cherry-picking Process
> 
> The cherry-picking process is partially explained in our release process 
> documentation: 
> https://pulsar.apache.org/contribute/release-process/#cherry-picking-changes-scheduled-for-the-release
> There's an ongoing discussion about improving this process: 
> https://lists.apache.org/thread/j6qvt45rndnvjypcmqxsfmddqt41bxjv
> 
> Current Process and Responsibilities
> 
> It's sufficient to add the labels while merging. This is the expectation for 
> the Apache Pulsar committer that merges a PR. A PR shouldn't be merged 
> without checking that it contains the necessary labels.
> 
> Committers actively working as release managers will handle cherry-picking 
> and backporting.
> Release managers will request specific backports when a PR cannot be easily 
> backported due to merge conflicts.
> 
> Cherry-picking
> 
> Cherry-picks should be performed in the same order as the PRs were merged in 
> the master branch.
> This is necessary to reduce unnecessary merge conflicts in maintenance 
> branches.
> Cherry-picking should retain a reference to the original commit. This can be 
> achieved by passing the "-x" argument so that cherry-picks are performed with 
> "git cherry-pick -x <commit hash>" command.
> 
> Handling Merge Conflicts
> 
> Merge conflicts are common, and it's necessary to understand the tooling and 
> process to handle conflict resolution. Please refer to 
> https://pulsar.apache.org/contribute/setup-git/ for suggestions on setting up 
> git with proper merge & diff tools for maintaining Pulsar.
> 
> In cases where a PR cannot be applied without substantial backporting effort 
> or risk of breaking changes, a separate PR to the maintenance branch is 
> requested from the original PR author. If the author is not willing to do 
> this work, the release manager attempts to find a volunteer to handle this.
> 
> In some cases, a large number of merge conflict signals that there's a 
> dependent PR that is needed also in the maintenance branch which hasn't been 
> cherry-picked. It is useful to review the dependency and consider 
> cherry-picking it. Only non-breaking bug fixes or minor improvements 
> (excludes PIP related changes) can be cherry-picked without discussion on the 
> dev mailing list. Backporting is necessary when a fix depends on newer PIP 
> related changes.
> 
> Call for Volunteers
> 
> We're looking for volunteers to help with these tasks. If you're interested 
> in the release manager role for upcoming Pulsar releases, please:
> 
> - Suggest it on this dev mailing list, or
> - Express interest on the Pulsar Slack #dev channel
> 
> I'm one of the committers who can help with various Pulsar release 
> maintenance tasks. Feel free to ping me or others on the Pulsar Slack #dev 
> channel for assistance.
> 
> We're excited to welcome new volunteers to sign up and contribute to these 
> important processes!
> We are looking for volunteers that are already Apache Pulsar committers since 
> that is a requirement for performing release management tasks.
> 
> There are plenty of contribution opportunities for volunteers that aren't yet 
> Apache Pulsar committers. There's a separate page about becoming a Apache 
> Pulsar core developer and committer [1]. 
> 
> Best regards,
> 
> Lari
> 
> [1] https://pulsar.apache.org/contribute/become-core-developer/
> 

Reply via email to