--+QahgC5+KEYLbs62
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sat, Nov 05, 2011 at 03:11:55PM +0900, Yuki Sonoda (Yugui) wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Hi,
> 
> == Background
> I have been maintaining ruby_1_9_1 and ruby_1_9_2 branch.
> Ruby 1.9 is now stable as Ruby 1.8 was, but it has not yet reached to
> the bugless nirvana. So Ruby 1.9 needs continuous maintenance.
> 
> But actually ruby_1_9_1 is no longer well-maintained. My backports to
> ruby_1_9_? tend to be late. There is a bottle-neck.
> 
> The bottle-neck is review process for commits in trunk.
> A few bug is branch-specific. Most of bugs in Ruby 1.9.x reproduce
> with trunk too. So I rarely need to write a branch specific patch.
> Just backporting from trunk fixes most of bugs in Ruby 1.9.x.
> But I need to read a commit carefully and run unit tests before
> backport the commit. This review process takes really really long.
> That's why patch level releases have been late.
> 
> == Proposal
> Let's parallelize the bottle-neck.
> Review and tests are necessary for stability and compatibility of
> released branches but these processes can be parallelized.
> I propose the following process:
> 
> * A committer who fixed a bug in trunk should also check if the bug
>   reproduces with other active branches. If reproduces, (s)he should
>   create a backport request on the Redmine.
>   * Or anyone who want us to backport a commit in trunk can create a
>     backport request.
> * Another committer review the request. This reviewer checks if this
>   commit is good enough and backport it to the older branch.

I think this is good.  If a committer requests to backport something,
and another committer approves the backport request, shouldn't the
original requester actually perform the commit?

> * Any committer who thinks the backport breaks compatiblity can revert
>   it.
>   * Eventually the maintainer of the branch decides to revert or not.
> 
> CI and a new Redmine plugin can help this process.
> * Automatic request triggered by commit message?
> 
> And the branch maintainer can have time to plan the next patch-level
> release.

I think this is very good.  I don't like overwhelming you with backport
requests.  It seems like too much work for one person, especially when
you take stdlib in to account.

-- 
Aaron Patterson
http://tenderlovemaking.com/

--+QahgC5+KEYLbs62
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (Darwin)

iQEcBAEBAgAGBQJOt1DlAAoJEJUxcLy0/6/GsngH/jwkMq9wF0cbuh9HwbW6DFl9
ALKqgaqPvlsBV71+NEzndtsp00+gWgMpqjsdgx7/rdts3HXdfcLIUOPeQq74WU/Q
sYxAghars/xasSemIpl91sqYlhrSh/EFhmFTR5Ac3IX3UlH0vfyNPjM4++Dx7g6E
iPIMtsYlO7xNOZtxDsvZRl1je/fbz3cBrvt2eaXgglN6RYqMpC6PO61XpaAMVj7o
xHwK9tHVj3lTtzhywc+nPt6A/6AXWtz/1IzCqq4cykDDut8NKEmY6EjRTDY9aHdS
pkX/B/5wJc/BL292jrXC+xRskoFddEYEQSQUzT/eJmVaRcRQO6X0NptGjaGoGX4tM
-----END PGP SIGNATURE-----

--+QahgC5+KEYLbs62--