[fdo-internals] FDO RFC 14 -- FDO Release Manager and ReleaseProcess

Daniel Morissette dmorissette at mapgears.com
Fri Apr 4 07:46:55 EDT 2008

Here are some responses based on our experience with MapServer using the 
same model for a few years now:

Orest Halustchak wrote:
> RFC Freeze Date: How do we determine that date? Will it be before end of 
> development, e.g. ‘n’ weeks before end of development?

The idea of RFC freeze date was introduced only in our last release 
(5.0) so we didn't really plan for it ahead of time for 5.0. However 
setting a RFC freeze about 2 weeks before the planned Feature freeze 
seems to make sense to me.

Actually I don't even see the RFC freeze listed in our 5.0 release plan 
(archived at 
but if I remember correctly it was set 2-3 weeks before the feature 
freeze date.

The RFC freeze date, Feature freeze date and target final release date 
are all set at the time that we decide to release and voted by the PSC 
in a motion. Then the release manager's job is to try to make the 
release follow those dates.

> For RFCs that appear after the RFC freeze date, they can simply roll 
> into the next release.

That's what we do.

> Feature freeze date: So, what do we do with any components that have not 
> been completed by this date? They have to be removed from the release?

Well, we try to avoid committing half-baked features to the trunk, so 
they don't need to be removed, they just wait to be committed until 
after the trunk has been branched for the release.

Since we're not in a perfect world, there are always exceptions, and in 
case some components cannot be completed in time for the feature freeze 
then they are either disabled (#ifdef'd by default), or left active and 
called experimental in the release notes.

> Beta releases: 2-3 betas plus a couple of release candidates seems like 
> a lot of separate releases within that 2 month period.

For the MapServer 5.0 release we went even further and experimented for 
the first time with weekly betas. That gave:

     * Feature freeze - July 23, 2007
     * 5.0.0-beta1 - Wed. July 25, 2007
     * 5.0.0-beta2 - Wed Aug. 1, 2007
     * 5.0.0-beta3 - Wed Aug. 8, 2007
     * 5.0.0-beta4 - Wed Aug. 15, 2007
     * 5.0.0-beta5 - Wed Aug. 22, 2007
     * 5.0.0-beta6 -  Wed Aug. 29, 2007
     * 5.0.0-rc1 -  Wed Sept. 5, 2007
     * 5.0.0-rc2 -  Mon Sept. 10, 2007
     * 5.0.0 (final) - Mon Sept. 17, 2007

... yes, that's lots, but that gave an excellent release. The weekly 
beta announcements generated much more interest than usual in the users 
community, they really saw the new release coming and I believe that 
gave us more users testing and feedback. That also forced the developers 
to keep moving since the next beta was never more than a few days away, 
forcing them to fix their bugs right away instead of postponing (and 
eventually forgetting) them.

Daniel Morissette

More information about the fdo-internals mailing list