>
> Or, we could emphasize the shift in process with bigger changes:
> i. Instead of cutting "release/1.13.0" on May 4, we could instead cut
> "support/1.13"
> ii instead of creating "apache-release-1-13-0-main" pipeline, we would
> instead create "apache-release-1-13-main"
> iii. Instead of cleaning up the pipeline and branch after 1.13.0 was
> released, we could keep it around for 9 months and re-use it for collecting
> patches and making patch releases during that time.
>
+1 I cannot see any argument against cutting a release branch for the minor
version and keeping it around.

The community process around deciding how long to gather fixes before
> shipping a patch release isn’t any easier either way.

How about we wait for someone to call out the need to ship a patch release.  At
that point we use the rule of thumb "aim for no more than 1 patch release
per minor per month" to guide our community discussion.

I would like to see more discussion on the community impact of increasing
> the commitment required of a release manager.  In the short term it would
> be good for Geode to have someone focused on improving the release process
> for a longer period of time than a single release.  But in the long term,
> people may be less likely to volunteer, and release experience will be
> concentrated in fewer members of the community...

Are there more things that could be automated? When I filled the role ~1
year ago there was lots of copying and pasting of scripts and I even wrote
one to help validate fixVersions. Although release process automation
should probably be taken to a different discussion, since it's mostly
separate form Anthony's proposal.


On Tue, Feb 25, 2020 at 11:06 AM Owen Nichols <onich...@pivotal.io> wrote:

> These concerns make sense.  We could satisfy them within our existing
> “on-demand” process:
>
> 1) the first time there is a change to backport to support branches,
> propose the patch release.  Now we have a branch.  Decide as a community
> how urgently it needs to be released vs how long to hold it open for other
> potential fixes.
>
> Or, we could emphasize the shift in process with bigger changes:
> i. Instead of cutting "release/1.13.0" on May 4, we could instead cut
> "support/1.13"
> ii instead of creating "apache-release-1-13-0-main" pipeline, we would
> instead create "apache-release-1-13-main"
> iii. Instead of cleaning up the pipeline and branch after 1.13.0 was
> released, we could keep it around for 9 months and re-use it for collecting
> patches and making patch releases during that time.
>
> The community process around deciding how long to gather fixes before
> shipping a patch release isn’t any easier either way.
>
> One advantage of our current process is that a release doesn’t happen
> until someone volunteers to make it happen.  We can do as many or as few
> patch releases as the community is willing -- a release always has a
> champion.
>
> I would like to see more discussion on the community impact of increasing
> the commitment required of a release manager.  In the short term it would
> be good for Geode to have someone focused on improving the release process
> for a longer period of time than a single release.  But in the long term,
> people may be less likely to volunteer, and release experience will be
> concentrated in fewer members of the community...
>
>
> > On Feb 25, 2020, at 9:29 AM, Anthony Baker <aba...@pivotal.io> wrote:
> >
> > Here’s a couple things I’d like to avoid:
> >
> > 1) Issuing a patch release for every single commit that we back port
> onto a supported minor version.  This seems like a high cost approach.  Of
> course, some issues may be important enough to require that.
> >
> > 2) Merging a change to develop, and then having to come back weeks later
> and back porting the change to a release branch.  It just seems less
> optimal since I’ll have lost the context on the changes, particularly if
> the cherry-pick is non-trivial.
> >
> > More comments below.
> >
> > Anthony
> >
> >
> >> On Feb 24, 2020, at 2:16 PM, Owen Nichols <onich...@pivotal.io> wrote:
> >>
> >> Hi Alexander, currently we don’t start a patch release until someone
> proposes a critical fix, which then drives the release (the community may
> propose “extra” fixes to tag along once a release branch is cut).  This
> keeps the process simple, neat and tidy.
> >>
> >> Another option I hadn’t thought of is to begin collecting “extra” fixes
> proactively on a “dormant” branch, so that when someone finally proposes
> releasing a patch, it will already be primed with a bunch of fixes.  This
> adds complexity (does a different standard apply to bring fixes to a
> dormant branch?  Are release branches separate from support branches?  How
> will committers be able to keep track of what is dormant and what is not?)
> >>
> >
> > Why not just either a) keep the release branch alive? Or b) create a
> support branch from the release tag?
> >
> >> To implement an N-2 support policy, does it make more sense for Geode
> to make small focused patch releases when needed, or to maintain what
> amounts to “3 develop branches at all times”?
> >>
> >
> > To me, “develop branch” implies ongoing work.  I’m proposing “support
> branch” which means only important changes agreed upon by the project
> community.
> >
> >
> >>
> >>> On Feb 24, 2020, at 11:00 AM, Alexander Murmann <amurm...@pivotal.io>
> wrote:
> >>>
> >>> Thanks for proposing this, Anthony!
> >>>
> >>>
> >>>> I don’t think it’s necessary for this proposal to re-define or clarify
> >>>> what constitutes a critical fix; it sounds like the bar would be the
> same
> >>>> as the standard we already apply when back-porting to release branches
> >>>> (proposal /w justification, and 3 votes in favor).  The only
> difference
> >>>> seems to be that now proposals may list up to three target branches,
> not
> >>>> just one.
> >>>>
> >>> re: Owen
> >>> TL;DR: +1 using the same process as we use for merging critical fixes
> >>> during an ongoing release seems appropriate.
> >>>
> >>> Generally merging a fix to a dormant release branch seems less
> problematic
> >>> than merging a fix to an active release branch where a merge will
> reset all
> >>> release work that has already happened. The cost of merging to a
> >>> dormant release branch is much lower than merging to one that's being
> >>> actively released. Ideally we could just do a PR to merge fixes back in
> >>> most cases. Unfortunately, I believe it's unreasonable to expect that
> >>> everyone will be aware at all times what's actively being released and
> >>> what's not => Let's pretend we are always shipping these branches.
> >>>
> >>>
> >>>
> >>>
> >>> On Fri, Feb 21, 2020 at 7:35 PM Owen Nichols <onich...@pivotal.io>
> wrote:
> >>>
> >>>> Thank you Anthony for proposing this “N-2” support policy.  It isn’t
> a big
> >>>> change, but it is helpful to know that the Geode PMC will now be
> standing
> >>>> behind (and ready to vote on) patch releases within a 9-month window.
> >>>>
> >>>> Overall, this sounds much like how 1.9.1 and 1.9.2 started as
> community
> >>>> proposals, found a release manager, and went on to be successfully
> released.
> >>>>
> >>>> I don’t think it’s necessary for this proposal to re-define or clarify
> >>>> what constitutes a critical fix; it sounds like the bar would be the
> same
> >>>> as the standard we already apply when back-porting to release branches
> >>>> (proposal /w justification, and 3 votes in favor).  The only
> difference
> >>>> seems to be that now proposals may list up to three target branches,
> not
> >>>> just one.
> >>>>
> >>>> I also don’t think it’s necessary to alter our current process to
> maintain
> >>>> a standing "support/x.y" branch.  The proposal states that patch
> releases
> >>>> will be “ad-hoc (as needed)”.  Our current process serves this quite
> well:
> >>>> we propose a patch release at the time it is needed, then get a
> release
> >>>> manager and create a release branch specifically for that release
> (e.g.
> >>>> release/1.9.2 was created from the rel/v1.9.1 tag), then clean up
> >>>> afterwards so no unattended pipelines or branches linger.
> >>>>
> >>>> The rotating release manager role has been a hallmark of the Geode
> >>>> community process, so I hope this proposal will not dissuade anyone
> >>>> interested in helping with a release.  However, getting the automation
> >>>> improvements we need will require some continuity over several
> releases.  I
> >>>> would love to volunteer for this!
> >>>>
> >>>> -Owen
> >>>>
> >>>>> On Feb 21, 2020, at 5:30 PM, Anthony Baker <aba...@apache.org>
> wrote:
> >>>>>
> >>>>> Hi everyone,
> >>>>>
> >>>>> I'd like to propose shipping patch releases of Geode as a way to
> >>>>> improve our engagement and support of our user community.  Please
> >>>>> review the details in the linked RFC [1] and kindly offer your
> >>>>> thoughts in this thread.
> >>>>>
> >>>>>
> >>>>> Thanks,
> >>>>> Anthony
> >>>>>
> >>>>> [1]
> >>>>
> https://cwiki.apache.org/confluence/display/GEODE/Shipping+patch+releases
> >>>>
> >>>>
> >>
> >

Reply via email to