<?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>
<title>WTP PMC Agenda/Minutes for March 4, 2008 Conference Call</title>
</head>
<body>
<h1>WTP PMC Agenda/Minutes for March 4, 2008 Conference Call</h1>
<h2>Call Info</h2>
<p>Tollfree in the US: 877-421-0030 <br />
Alternate: 770-615-1247<br />
Access code: 800388# <br />
<a href="http://wiki.eclipse.org/images/f/f6/WTP_status_phone_access.pdf">Full list of phone numbers</a><br />
<br />
<a
    href="http://www.timeanddate.com/worldclock/custom.html?cities=224,207,1440,107
&amp;month=10
&amp;day=16
&amp;year=2007
&amp;hour=11
&amp;min=0&amp;sec=0&amp;p1=207">Call
Time: 1500 UTC</a></p>
<h2>Attendees</h2>
<h3>PMC Members</h3>
<ul>
    <li>David Williams: Y</li>
    <li>Naci Dai: N (regrets)</li>
    <li>Raghunathan Srinivasan: Y</li>
    <li>Neil Hauge: Y</li>
    <li>Tim deBoer: Y</li>
</ul>
<!-- 
<h3>Invited Guests</h3>
<ul> 
<li>Philippe Ombredanne (ATF): N</li> 
</ul> 
-->
<h2>Reports, Actions, Issues</h2>
<h3>Education: Naci Dai</h3>
<ul>
    <li>No progress to report (Naci sent regrets). Will re-visit next week.</li>
</ul>
<dl>
    <dt>Previous Notes:</dt>
    <dd>
    <ul>
        <li>Phase 1, orgainize what we have, done by end January.</li>
        <li>Phase 2, self guided new materials. some available by EclipseCon.</li>
        <li>phase 3, shutdown .. scenerios</li>
    </ul>
    </dd>
</dl>
<h4>Reference</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Education_Lead">WTP Education Lead</a></li>
</ul>
<h3>Planning: David Williams</h3>
<ul>
    <li>We need a 2.0.2 patch. (and put on update site)</li>
    <li>Schedule? this week? Or else will interfere with EclipseCon?</li>
    <li>As agreed, dw has updated <a href="http://wiki.eclipse.org/WTP_Patches_for_Release_2.0.2">patch process
    document</a></li>
</ul>
<dl>
    <dt>Notes:</dt>
    <dd>Agreed this week best, to fix before EclipseCon.</dd>
</dl>
<h4>Reference</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Planning_Lead">WTP Planning Role</a></li>
</ul>
<h3>Quality: Neil Hauge</h3>
<ul>
    <li>Good Progress on focus items. (Remember to include these activities in release review.)</li>
</ul>
<h4>Reference:</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Quality_Lead">WTP Quality Lead</a></li>
    <li>See also <a href="http://wiki.eclipse.org/WTP_Quality">Quality Page</a></li>
</ul>
<h3>ATF</h3>
<ul>
    <li>?</li>
</ul>
<h3>Architecture: Tim deBoer</h3>
<ul>
    <li>?</li>
</ul>
<h4>Reference</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Architecture_Lead">WTP Architecture Lead Role</a></li>
    <li>Tracking meetings and work at <a href="http://wiki.eclipse.org/WTP_Architecture_Working_Group">WTP
    Architecture Working Group</a></li>
</ul>
<h3>Requirements: Raghu Srinivasan</h3>
<ul>
    <li>Note: as agreed, dw did update <a href="http://wiki.eclipse.org/WTP_3.0_Ramp_down_Plan_for_Ganymede">ramp
    down plan</a>, to make sure clear.</li>
    <li>Time to start <b>Io</b> Version?</li>
</ul>
<dl>
    <dt>Notes:</dt>
    <dd>We may need a mid-year release.</dd>
</dl>
<h4>Reference</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Requirements_Lead">WTP Requirements Lead Role</a></li>
</ul>
<h2>General business?</h2>
<ul>
    <li>Committers in the works: Several in ATF project (see Portal): Giuliano Mega, Laurends Vandeput
    <dl>
        <dt>Notes:</dt>
        <dd>All agreed.</dd>
    </dl>
    </li>
    <li>Requirement Project: http://www.eclipse.org/proposals/ormf/
    <dl>
        <dt>Notes:</dt>
        <dd>Raghu to respond this week.</dd>
    </dl>
    </li>
    <li>Face-to-face meeting. Sunday will be bad (most getting in too late on Sunday). Need to find some other
    time. Need to create an agenda.
    <dl>
        <dt>Notes:</dt>
        <dd>Tenatively suggested Monday evening, after awards ceremony.</dd>
    </dl>
    </li>
    <li>Discussed version increment for next year (Io). Decided "3.1", unless there is major additions or something
    breaking. [Added after the meeting, should we consider "3.5"? (to match the platform?)
    <dl>
        <dt>Notes:</dt>
        <dd>No one liked "3.5" idea.</dd>
    </dl>
    </li>
    <li>Potential resource issues?
    <ul>
        <li>Product plugin for EPP and welcome screen</li>
        <li>Refactoring Doc features (and moving to appropriate sub-projects).</li>
        <li>Refactoring SDK (source and JavaDoc) features/bundles (and moving to appropriate sub-projects)</li>
        <li>Platform/OS coverage for testing and support? -- probably suffices to simply record coverage. Perhaps
        ask for community help.</li>
        <li>Performance Tests -- Kayolan making some progress.</li>
    </ul>
    <dl>
        <dt>Notes:</dt>
        <dd>
        <ul>
            <li>No obvious resouce solutions.</li>
            <li>Needs some JSF features, at least for build</li>
        </dd>
    </dl>
    </li>
</ul>
<h2>Action Items</h2>
<h3>To Do</h3>
<ol>
    <li>David: Will call for Project Lead vote on <a
        href="http://wiki.eclipse.org/WTP_Policy_on_Package_Visibility">WTP Policy on Package Visibility</a></li>
    <li>Raghu: create a wiki page: a checklist for how to lower the barrier to participation for all projects</li>
    <li>David: create wiki page for 3rd-party requirements</li>
    <li>David: post instructions and reminders for our "community resources" and presentations page, especially,
    even, for eclipseCon 2007, and Eclipse Summit</li>
</ol>
<h3>Done</h3>
<ol>
    <li>Bob Frasher, all: WTP Refactor followup: Need to update website. Project Leads will need to take ownership
    of their own pages. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=201331">bug 201331</a></li>
    <li>David: Reorg CVS. See <a href="http://wiki.eclipse.org/WTP_CVS_Restructuring">CVS Restructuring
    Proposal</a></li>
    <li>David: update our "planning" documents with dates for both Ganymede and Winter maintenance.</li>
</ol>
<h2>PMC Calendar</h2>
<ul>
    <li>Tentatively plan f2f Sunday before EclipseCon</li>
</ul>
<hr />
<p>Back to <a href="../index_pmc_call_notes.php">meeting list</a>.</p>
<p>Please send any additions or corrections to David Williams.</p>
</body>
</html>
