<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY email 'freebsd-qa'>
<!ENTITY date "$FreeBSD$">
<!ENTITY title "FreeBSD 4.7 Release Process">
<!ENTITY % navinclude.download "INCLUDE">
]>

<html>
&header;

<h1>Introduction</h1>

<p>This is a specific schedule for the release of FreeBSD 4.7.  For
  more general information about the release engineering process,
  please see the <a href="&base;/releng/index.html">Release
  Engineering</a> section of the web site.</p>

<p>General discussions about the release engineering process or
  quality assurance issues should be sent to the public <a
  href="mailto:freebsd-qa@FreeBSD.org">freebsd-qa</a> mailing list.
  <a
  href="&base;/doc/en_US.ISO8859-1/books/faq/misc.html#DEFINE-MFC">MFC</a>
  requests should be sent to <a
  href="mailto:re@FreeBSD.org">re@FreeBSD.org</a>.</p>

<h1>Schedule</h1>

<table class="tblbasic">
  <tr><td>Action</td><td>Expected</td><td>Actual</td><td>Description</td>
      </tr>
  <tr>
    <td>Reminder announcement</td><td>06&nbsp;Aug&nbsp;2002</td><td>06&nbsp;Aug&nbsp;2002</td>
    <td>Release Engineers send announcement email to
      developers@FreeBSD.org with a rough schedule for the FreeBSD 4.7
      release.</td>
  </tr>
  <tr>
    <td>4.7-PRERELEASE Testing Guide published</td><td>Ongoing</td><td>02 Sep 2002</td>
    <td>A <a href="&base;/releases/4.7R/qa.html">testing guide</a>
      should be published with information about recent changes and
      areas of the system that should be thoroughly tested during the
      pre-release/RC period.</td>
  </tr>
  <tr>
    <td><tt>4.7-PRERELEASE</tt></td>
    <td>01&nbsp;Sep&nbsp;2002</td>
    <td>02&nbsp;Sep&nbsp;2002</td>
    <td><tt>newvers.sh</tt>, and <tt>release.ent</tt> updated.</td>
  </tr>
  <tr>
    <td>FTP site updated</td>
    <td>01 Sep 2002</td>
    <td>02 Sep 2002</td>
    <td><tt>pkg_add -r</tt> works for <tt>4.7-PRERELEASE</tt> machines.</td>
  </tr>
  <tr>
    <td>Code freeze begins</td>
    <td>01 Sep 2002</td>
    <td>01 Sep 2002</td>

    <td>After this date, all commits to the <tt>RELENG_4</tt> branch
      must be approved by <a
      href="mailto:re@FreeBSD.org">re@FreeBSD.org</a>.  Certain highly
      active documentation committers are exempt from this rule for
      routine man page / release note updates.  Heads-up emails
      should be sent to the developers@, stable@, and qa@ lists.</td>
  </tr>

  <tr>
    <td>Commercial software demos updated.</td>
    <td>--</td>
    <td>--</td>
    <td>The second disc contains commercial software demos, these
      demos should be updated to contain the latest versions.</td>
  </tr>

  <tr>
    <td><tt>4.7-RC</tt></td>
    <td>15 Sep 2002</td>
    <td>16 Sep 2002</td>
    <td><tt>newvers.sh</tt> and <tt>release.ent</tt> updated.</td>
  </tr>

  <tr>
    <td>Announce the Ports Freeze</td>
    <td>15 Sep 2002</td>
    <td>16 Sep 2002</td>
    <td>Someone from <tt>portmgr</tt> should email
    <tt>freebsd-ports@</tt> and BCC: <tt>developers@</tt> to set a date
    for the week long ports freeze and tagging of the ports tree.</td>
  </tr>

  <tr>
    <td>First release candidate</td>
    <td>15 Sep 2002</td>
    <td>18 Sep 2002</td>
    <td>The first release candidate for the x86 and Alpha architecture is
      released.  ISO images should be uploaded to
      <tt>ftp-master.FreeBSD.org</tt> and
    <tt>releng4.FreeBSD.org</tt>.  A network install directory should
    be uploaded to <tt>ftp-master.FreeBSD.org</tt>.  The
    <tt>packages</tt> directory should be a <em>relative</em> symlink,
    as described in the releng article.
  </tr>

  <tr>
    <td>Heads up to -stable</td>
    <td>17 Sep 2002</td>
    <td>18 Sep 2002</td>
    <td>A message should be sent to <tt>qa@FreeBSD.org</tt> and
    <tt>stable@FreeBSD.org</tt> after the snapshot is uploaded.</td>
  </tr>

  <tr>
    <td>Package split posted</td>
    <td>17 Sep 2002</td>
    <td>--</td>

    <td>The proposed package split (which packages go on which disc of
      the 4 CD set) should be posted to <tt>qa@FreeBSD.org</tt>,
      <tt>ports@FreeBSD.org</tt>, and <tt>stable@FreeBSD.org</tt>.</td>

  </tr>

  <tr>
    <td>Second release candidate</td>
    <td>--</td>
    <td>27 Sep 2002</td>
    <td>Note: the release date of this candidate depends on the user
    experience with RC1.</td>
  </tr>

  <tr>
    <td>Third release candidate</td>
    <td>--</td>
    <td>07 Oct 2002</td>
    <td></td>
  </tr>

  <tr>
    <td>Ports tree frozen</td>
    <td>20 Sep 2002</td>
    <td>21 Sep 2002</td>
    <td>Only approved commits will be permitted to the <tt>ports/</tt>
      tree during the freeze.</td>
  </tr>

  <tr>
    <td>Ports tree tagged</td>
    <td>24 Sep 2002</td>
    <td>01 Oct 2002</td>
    <td><tt>RELEASE_4_7_0</tt> tag for <tt>ports/</tt>.</td>
  </tr>

  <tr>
    <td>Ports tree unfrozen</td>
    <td>24 Sep 2002</td>
    <td>05 Oct 2002</td>
    <td>After the <tt>ports</tt> tree is tagged,
      the <tt>ports/</tt> tree will be re-opened for commits, but
      commits made after tagging will not go in 4.7-RELEASE.</td>
  </tr>

  <tr>
    <td>Final package build starts
    <td>25 Sep 2002</td>
    <td>05 Oct 2002</td>
    <td>The ports cluster and <a href="http://bento.FreeBSD.org">bento</a>
    build final packages.</td>
  </tr>

  <tr>
    <td>Package split</td>
    <td>26 Sep 2002</td>
    <td>08 Oct 2002</td>
    <td>The packages must be split so that packages with similar
      dependencies appear on each of the four discs, with the most
      popular packages appearing on the first disc.</td>
  </tr>
  <tr>
    <td>doc tree tagged.</td>
    <td>27 Sep 2002</td>
    <td>01 Oct 2002</td>
    <td><tt>RELEASE_4_7_0</tt> tag for docs.</td>
  </tr>

  <tr>
    <td><tt>RELENG_4_7</tt> branch</td>
    <td>28 Sep 2002</td>
    <td>06 Oct 2002</td>
    <td>The release branch is created.</td>
  </tr>

  <tr>
    <td>Note to freebsd-stable@</td>
    <td>28 Sep 2002</td>
    <td>06 Oct 2002</td>
    <td>A note should be sent to the freebsd-stable@ list to let
    over-anxious users know that the tags have been created but the
    release still isn't ready.  Tags may be slid before the
    announcement goes out.  Point users to freebsd-qa@ for
    details.</td>
  </tr>

  <tr>
    <td>Version numbers bumped.</td>
    <td>29 Sep 2002</td>
    <td>07 Oct 2002</td>
    <td>The files listed <a
    href="&base;/doc/en_US.ISO8859-1/articles/releng/article.html#VERSIONBUMP">here</a>
    are updated to reflect the fact that this is FreeBSD 4.7.</td>
  </tr>

  <tr>
    <td>Update man.cgi on the website.</td>
    <td>29 Sep 2002</td>
    <td>06 Oct 2002</td>
    <td>Make sure the 4.7 manual pages are being displayed by default
    for the man->web gateway.  Also make sure these man pages are
    pointed to by docs.sgml.</td>
  </tr>

  <tr>
    <td>src tree tagged.</td>
    <td>29 Sep 2002</td>
    <td>06 Oct 2002</td>
    <td><tt>RELENG_4_7_0_RELEASE</tt> tag for src.</td>
  </tr>

  <tr>
    <td>Final builds.</td>
    <td>08 Oct 2002</td>
    <td>08 Oct 2002</td>
    <td>Final builds for x86 and Alpha in a pristine environment.</td>
  </tr>

  <tr>
    <td>Warn <tt>hubs@FreeBSD.org</tt></td>
    <td>30 Sep 2002</td>
    <td>09 Oct 2002</td>
    <td>Heads up email to <a
    href="mailto:hubs@FreeBSD.org">hubs@FreeBSD.org</a> to give admins
    time to prepare for the load spike to come.  The
      site administrators have frequently requested advance notice for
      new ISOs.</td>
  </tr>

  <tr>
    <td>Upload to <tt>ftp-master</tt>.</td>
    <td>08 Oct 2002</td>
    <td>09 Oct 2002</td>
    <td>release and packages uploaded to <tt>ftp-master.FreeBSD.org</tt></td>
  </tr>

  <tr>
    <td>Announcement</td>
    <td>08 Oct 2002</td>
    <td>10 Oct 2002</td>
    <td>Announcement sent out after a majority of the mirrors have
    received the bits.</td>
  </tr>

  <tr>
    <td>Unfreeze the tree</td>
    <td>08 Oct 2002</td>
    <td>10 Oct 2002</td>
    <td>Announcement to developers@ explaining that the release is
     out, and commits to RELENG_4 no longer require approval.  Also
     note the policy for commits to the RELENG_4_7 branch.</td>
  </tr>


</table>

    &footer;

  </body>
</html>
