Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Sat, 2007-10-13 at 14:07 +0200, Justin Smith wrote:
> On Fri, 2007-10-12 at 20:51 -0400, Ken Smith wrote:
> > Sorry for the delay with getting that rolling. We
> > decided to shift to time-based release cycles instead of feature-based
> > release cycles.

> Hi Ken!
> Perhaps i've missed something. Can you provide more information about
> this topic, please?
> Thank you!

Releases of new major branches (e.g. the branching of RELENG_7 and the
progress towards releasing FreeBSD-7.0) used to be focused on a specific
set of features. For example having fine-grained SMP completed. The
result of taking that approach (particularly if you include too many
features) was clear with what happened to RELENG_5 (FreeBSD-5.X). Most
people feel that branch did not go well.

As we approached FreeBSD-6.0 my predecessor Scott Long started to
advocate us focusing on having specific time based targets for beginning
the branching process instead of us focusing on specific feature(s)
needing to be completed. For the majority of even large changes like
SMP this is feasible in theory (and with a bit more work practice)
because most often it can be broken up in steps which is exactly what in
the end happend with SMP - we're still reliant on the Giant lock in a
few places but it's almost completely gone now. And during that
development time the system is still perfectly usable, it's just not
fully taking advantage of the improvements (yet). As long as all the
developers know (and keep in mind while they're working) the time
targets they can make sure any subsystems they're rototilling are stable
as we near the branch date.

Shifting gears like that takes time. I have a long list of things I
need to do better as we approach the time we want the release process
for 8.0 to start. And we can wind up with nits like one of the things
that slowed down the progress on getting RELENG_7 ready - in the end it
was decided one of the subsystems is definitely something we want to
implement but it was a little bit too unstable right now to be included
in the release so it needed to be backed out and hooks needed to be put
in place so it could be added back in when it's ready.

The current proposal is that we shoot for doing major branches every 18
months. It remains to be seen if that's reasonable. In general we feel
the time based release cycle is the right thing to do but there is a lot
of stuff that needs to be adapted to that mode of operation.

Ken Smith
- From there to here, from here to | kensmith@cse.buffalo.edu
there, funny things are everywhere. |
- Theodore Geisel |

Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

Version: GnuPG v1.4.6 (FreeBSD)