<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
    http-equiv="Content-Type"
    content="text/html; charset=iso-8859-1" />
<title>Eclipse Web Tools Platform Project Development</title>
<link
    rel="stylesheet"
    href="../../../default_style.css"
    type="text/css" />
<meta
    http-equiv="Content-Type"
    content="text/html; charset=windows-1252" />
</head>
<body
    alink="#ff0000"
    bgcolor="#ffffff"
    link="#0000ee"
    text="#000000"
    vlink="#551a8b">
<table
    border="0"
    cellpadding="2"
    cellspacing="5"
    width="100%">
    <tbody>
        <tr>
            <td
                colspan="2"
                align="left"
                bgcolor="#0080c0"
                valign="top"><b> <font
                color="#ffffff"
                face="Arial,Helvetica">PMC Conference Call - November 16, 2004</font></b></td>
        </tr>
    </tbody>
</table>
<table
    border="0"
    cellpadding="2"
    cellspacing="5"
    width="100%">
    <tbody>
        <tr>
            <td>
            <p>Attending: Jochen Krause, David Williams, Dominique De Vito<br />
            Regrets: Arthur Ryman, Bjorn Freeman-Benson, Christophe Ney</p>
            <p><b>PHP Project</b> by Dominique</p>
            <ul>
                <li>Contact with the <a href="http://www.phpeclipse.de/">PHPEclipse</a> project. This project
                already uses some WTP components and is expected to follow WTP components evolution. Discussion on-going
                to see if the team is interested in an Eclipse project - one that fits well with WTP?</li>
            </ul>
            <p><b>Planning Group and M4-M5 Milestones </b>by Dominique</p>
            <ul>
                <li>Planning Group a bit late : feedback from Naci is not yet taken into account, the same for work
                on bugs into BugZilla</li>
                <li>A page 'help wanted' for calling external help, in specific area, has yet to be defined</li>
                <li>Component leaders will be helpful to finalize of the milestone plan</li>
            </ul>
            <p><b>EclipseCon and ObjectWebCon events about WTP</b> by David, Jochen</p>
            <ul>
                <li>WTP tutorials will be presented during EclipseCon, technical details will be given during the
                code camp</li>
                <li>ObjectWebCon will host also WTP presentations, for example, a SSE presentation by
                Innoopract/Jochen</li>
            </ul>
            <p><b>Talk about M2</b></p>
            <ul>
                <li>David plan for WTP M2 testing has got positive feedback, looks OK
                <ul>
                    <li>12/10 (Friday) - candidate build for M2 (on Eclipse M3), component, test plans complete,
                    component teams (and community) begins "milestone testing". (typically, there might be 2 to 3 days
                    of "formal testing" but its up to each component team, to satisfy their test plan, plus, hopefully,
                    the community will pick up builds and find some bugs for us).</li>
                    <li>12/20 (Friday) - upgrade build for final candidate build (include Eclipse M4, and "most
                    recent" versions of pre-req projects).</li>
                    <li>12/20 to 12/22, "regression tests" with new base/pre-reqs.</li>
                    <li>12/22 (Wednesday) milestone M2 declared and promoted.</li>
                </ul>
                </li>
                <li>M2 content: all items with high and medium priority should be ready with M2, we have to check
                with Naci about EJB Wizard</li>
                <li>M2 content may be modified depending on component leaders feedback</li>
            </ul>
            <p><b>Code refresh and build process</b> by David</p>
            <ul>
                <li>Code refresh still ongoing into CVS, end expected next week</li>
                <li>Build process has yet to be fixed as soon as possible</li>
            </ul>
            <p><b>On the Queue for Next Week</b></p>
            <ul>
                <li>'Making noise' by Mitch</li>
                <li>M2 Milestone planning by Bjorn
                <ul>
                    <li>Features; schedule; testing; releasing</li>
                </ul>
                </li>
                <li>Project granularity by Arthur</li>
                <li>Requirements</li>
            </ul>
            <p><font size="-1"><i>Minutes taken by Jochen Krause and Dominique De Vito, and posted by,
            Dominique De Vito , November 16, 2004</i></font></p>
            </td>
        </tr>
    </tbody>
</table>
</body>
</html>