[e9a646]: releasechecklist Maximize Restore History

Download this file

releasechecklist    198 lines (197 with data), 7.5 kB

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="content-type">
  <title>OProfile release checklist</title>
</head>
<body>
<h1><a name="OProfile_release_checklist"></a>OProfile release checklist</h1>
<span style="font-weight: bold;"><br>
Note:</span> The OProfile maintainer must give you admin privileges to
put out a release.<br>
<br>
<ol>
  <li>
    Create/update Release Notes for new release
    <ul>
      <li>Any changelog entry that fixes a user-visible bug should be
in the notes unless it was not reproducible in the last release.&nbsp;
All new user-visible features should also be in the release notes.<br>
      </li>
    </ul>
  </li>
  <li>
    Check if sample data file format has changed since previous release.  If so,
bump OP_VERSION if it hasn't already been done.
  </li>
  <li>
    Change version to non-cvs and commit
  </li>
  <ul>
    <li>Change version in configure.in's AM_INIT_AUTOMAKE</li>
    <li>Probably want to start with a
&lt;<span style="font-style: italic;">v.r.m</span>&gt;-rc&lt;<span
 style="font-style: italic;">n</span>&gt;.&nbsp; Since this has to be
changed for
every release candidate, it's best not to commit this until the final
GA of the release.<br>
    </li>
  </ul>
  <li>
    Run <pre>make dist</pre>
  </li>
  <ul>
    <li>If there are any ChangeLog-xxxx files that are not listed in
the EXTRA_DIST target in Makefile.am, add them to the list and <span
 style="text-decoration: underline;">commit </span>this Makefile.am
change (commit this now, otherwise you'll be making the exact same
change for every release candidate.<br>
    </li>
    <li>./autogen.sh; ./configure; make dist. &nbsp; This produces a
tarball called oprofile-&lt;<span style="font-style: italic;">release</span>&gt;.tar.gz,
where "<span style="font-style: italic;">release</span>" is what
you specified in AM_INIT_AUTOMAKE.<br>
    </li>
  </ul>
  <li>
    Upload the tar ball to sf
  </li>
  <ul>
    <li>With a browser, go to OProfile website and click on the
"SOURCEFORGE.NET" at the bottom left of the screen.&nbsp; Sign in with
your admin user ID.&nbsp; Select "File Releases" from the
"Admin" drop-down tab.&nbsp; Click on the "Help" link under the "Admin"
tab; then go to the "Upload a file" section.</li>
  </ul>
  <li>
    Add release
  </li>
  <ul>
    <li>With a browser, go to the OProfile website and click on the
"SOURCEFORGE.NET" at the bottom left of the screen.&nbsp; Sign in with
your admin user ID and password.&nbsp; Select "File Releases" from the
"Admin" drop-down tab.&nbsp; Click on the "Help" link under the "Admin"
tab; then go to the "Create or edit a release" section.&nbsp; <br>
    </li>
    <ul>
      <li><span style="font-weight: bold;">Details: <br>
        </span></li>
    </ul>
    <ol>
      <ol>
        <li><span style="font-weight: bold;"></span>Name the release
the same as what you specified in AM_INIT_AUTOMAKE in step 1; e.g
0.9.4-rc1.</li>
        <li>For each successive release candidate and the final GA
release, edit the &lt;<span style="font-style: italic;">v.r.m</span>&gt;-rc&lt;<span
 style="font-style: italic;">n</span>&gt; release instead of creating
new
ones.&nbsp; You can change the release name, remove old tar balls and
attach new ones.</li>
        <li>Do <span
 style="font-style: italic; text-decoration: underline;">not </span>check
the check-box for sending out a notice of the new file release until
the release is at the GA stage.<br>
        </li>
	<li>Go to project download page on SourceForge and verify that
the new release tar ball is listed there.  It will take some time for
the new release to be mirrored to all of the mirror sites.  Once you
can successfully download the tar ball from a SourceForge mirror, got
to the next step.
       </li>
        <li>For release candidates, post a message to the oprofile-list
with a URL to the download page for the release you just created and
paste the Release Notes into the message.<br>
        </li>
      </ol>
    </ol>
  </ul>
  <li>Get testing feedback from the community.&nbsp; Return to
step 1 for each new release candidate (and, eventually, for the
GA).&nbsp; The following steps are to be done once the decision is made
to GA and you've iterated over the previous steps again for the GA
release.<br>
  </li>
  <li>
    Close fixed bugs
  </li>
  <ul>
    <li>Log into SourceForge with admin ID and close oprofile bugs that
have been
fixed in this release.&nbsp; <span style="font-weight: bold;">Note:</span>&nbsp;
Bugs for problems that are <span style="font-style: italic;">not</span>
reproducible in previous releases should
have been closed already.<br>
    </li>
  </ul>
  <li>
    Update freshmeat
  </li>
  <ul>
    <li>Create an account for yourself on freshmeat (<a
 href="http://freshmeat.net/projects/oprofile">http://freshmeat.net/projects/oprofile</a>)
and have the OProfile maintainer give you developer permissions.&nbsp;
Log in and click on the "add release" URL and follow the bouncing
ball.&nbsp; If unsure about some of the fields, look at how previous
releases were specified.<br>
    </li>
  </ul>
  <li>
    Run the command <pre>'cvs tag RELEASE_&lt;v_r_m&gt;';  e.g, 'cvs tag RELEASE_0_9_4'</pre>
  </li>
  <ul>
    <li>After committing the change to configure.in's AM_INIT_AUTOMAKE
for the GA release, cd into the checked-out oprofile directory and run
the 'cvs tag' command.&nbsp; You should get a password prompt, then
you'll see a message for every file in the project:&nbsp; "T
&lt;filename&gt;".&nbsp; You can go to OProfile CVS on SourceForge and
browse the files to see that the new tag has been applied.<br>
    </li>
  </ul>
  <li>
    Update web page release-notes/, news, download, srcdoc/, doc/
  </li>
  <ul>
    <li>Do a normal cvs checkout of oprofile and
oprofile-www.</li>
    <li>In oprofile-www, edit the news/index.php and
download/index.php files to point to the new release.&nbsp;  Regenerate
events files documentation: sh all-events-doc.sh, cvs diff docs/ to get a
look if events parsing worked.&nbsp; Also verify correctness/completeness
of the new release-notes, meaningful change seen when diffing docs/ subdir
should be reported in the release-notes file.&nbsp; Do 'cvs
commit' of these changes.&nbsp; </li>
    <li>In oprofile, do ./autogen.sh, ./configure, and then cd into
doc/ and run 'make chunk'.&nbsp; Tar up the doc/ directory.&nbsp; Then
cd into doc/srcdoc/ and run 'make'.&nbsp; Tar up the srcdoc/ directory.</li>
  </ul>
  <li>
    Sync website to oprofile-www CVS
  </li>
  <ul>
    <li>ssh to oprofile.sf.net with your admin ID and go to oprofile's
www directory
(/home/groups/o/op/oprofile/htdocs/). There's a cvs dir there; 'cvs
update' that.</li>
    <li>Unpack the new doc and srcdoc tar balls created in the previous
step.</li>
    <li>Ensure that any new files you create have write access for the
'oprofile' group (do 'chmod g+w' if necessary).</li>
    <li>Point your browser at http://oprofile.sourceforge.net/cvs/ and
verify the website, documentation, etc. looks OK.</li>
    <li>Make a backup of the parent (htdocs) directory; then move all
the stuff from the cvs dir into the parent dir to make it live.&nbsp;
Now use your browser to verify that the actual OProfile website looks
OK.<br>
    </li>
  </ul>
  <li>
    Send release email
  </li>
  <li>
    Change AM_INIT_AUTOMAKE in configure.in '&lt;<span
 style="font-style: italic;">v.r.m</span>&gt;cvs' and commit
  </li>
</ol>
</body>
</html>