On Wed, Feb 20, 2019 at 9:12 PM Ivan Kelly <iv...@apache.org> wrote:

> > Can anyone propose a change to current release management? Otherwise it
> is
> > not a scalable solution because not every committer knows how to handle
> > this situation clearly.
>
> I agree that not every committer knows this.
> What has worked well for me in the past is to have _every_ commit go
> to master, and cherry-pick nothing until it is decided that a bugfix
> release is needed.

Then the release manager goes through the list of commits that
> occurred on the master branch since the last release on the bugfix
> branch, select those that are required for the bugfix release, and
> then cherry-pick those, in order, to the bugfix branch.
>

That works well for me as well. I think the community needs to come up with
a clear workflow for this.

At minimum, a simple rule should be:
- if a change is merged to master, it should be "tagged" for a major
release;
- if a change is merged directly to a branch, it should be "tagged" for a
minor release;
- if a change is merged to master, and then cherry-picked to a branch, it
should be "tagged" for a major release, and then tagged for a minor release
after cherry-pick. otherwise if we merge a change to master but directly
label it for a minor release, IMO this is an "inconsistent" state in a
source repo.

How to tag the release, and how to cherry-pick is a question to the
community. The community should decide and vote a workflow for tagging and
cherry-pick changes, and *DOCUMENT* it in Pulsar website. So everyone in
the community (including committers, contributors, and users) know exactly
how the release is done.


>
> -Ivan
>

Reply via email to