<?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 August 12, 2008 Conference Call</title>
</head>
<body>
<h1>WTP PMC Agenda/Minutes for August 12, 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: Y</li>
    <li>Raghunathan Srinivasan: Y</li>
    <li>Neil Hauge: Y</li>
    <li>Tim deBoer: Y</li>
    <li>Kaloyan Raev R</li>
</ul>
 
<!-- 
<h3>Invited Guests</h3>
<ul>
<li>Philippe Ombredanne (ATF): N</li>
</ul>
-->
<h2>Announcements and General Business</h2>
<ul>
    <li>Release review still scheduled <a
        href="http://www.eclipse.org/webtools/releaseReviews/200808/WTP-INC-XSL-0.5.pdf">WTP Incubator XSL 0.5
    Release Review</a></li>
    <li>Release 3.0.1 readiness?
    <p>PMC agreed we were not quite ready and should delay one week to make sure quality was where it should be</p>
    </li>
    <li>Creative Common License - Attribution-Share Alike
    <p>Will be working with Eclipse Foundation to confirm this license fits within their policies</p>
    </li>
</ul>
<h2>Reports, Actions, Issues</h2>
<!-- Rotate topics by taking last one and putting it on top -->
<h3>Education: Naci Dai</h3>
<p>Please review: <a href="http://www.eclipse.org/webtools/community/new/new.php">Resource Page Proposal</a></p>
<p>Naci was approached (and countered) with some proposed articles for Eclipse (online) magazine [need link. only
one I found last published in 2007?] Naci will invite authors for a series of articles for "WTP Uncovered":</p>
<ol>
    <li>web developer tools (xml, xsl, html, css)</li>
    <li>web applications with Java (jsf, jsp, server)</li>
    <li>enterpise application (jpa/ejb)</li>
    <li>soa, webservices</li>
    <li>adopters/extending (maybe)</li>
</ol>
<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>3.0.1 RC3 this Thursday</li>
    <li>Pre 1.0 release of XSL component mid August</li>
    <li>Pre 1.0 release of ATF component mid October</li>
    <li>3.0.1, 3.0.2 and 3.0.3</li>
    <li>JPT 2.1 ?</li>
    <li>2009, Galileo Release</li>
</ul>
<dl>
    <dt>Notes:</dt>
    <dd>Reminder to be sure to check for <a href="http://www.eclipse.org/webtools/plans/3.0.1/pmc-bug-approval.php">"PMC
    Review" bugs</a>.</dd>
    <dd>Reminded to be consistent in approving defects (such as getting project lead review, documenting "stop
    ship" need, etc.</dd>
</dl>
<h4>Reference</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Planning_Lead">WTP Planning Role</a></li>
    <li><a href="http://wiki.eclipse.org/WTP_Patches_for_Release_2.0.2">patch process document</a></li>
</ul>
<h3>Quality: Neil Hauge</h3>
<dl>
    <dt>Notes:</dt>
    <dd>Neil investigating "close old bugs" policy.</dd>
    <dd>Neil has estimated approximately 800 bugs (of 2000 untargeted bugs) could be considered "old bugs". He'll
    prepare a table and note to send to project with encouragement to PLs to handle ... something like either triage
    individually and assign a target, or mark with 'helpwanted' or mark in mass with a kind comment to re-open if still
    an issue (with reason for the mass update, etc.).</dd>
</dl>
<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>WTP User Experience Lead: Kaloyan Raev</h3>
<ul>
    <li>FYI: XSL team doing walktrough this Wednesday (23rd)
    <p>For info and notes of meeting, see <a href="http://wiki.eclipse.org/XSL_Tools_UI_Preferences_Review">XSL
    Tools UI Preference Review</a></p>
    </li>
    <li>Investigating OpenEJB container (from Apache) for quick/easy out of the box testing, etc.</li>
    <li>Kaloyan, on behalf of PMC, will encourage all Project Leads to do a UI walkthrough. Some quick
    brainstorming ideas we though of were:
    <ul>
        <li>Webservices: many WS wizards use non-standard wizard UI/graphics (is this "cool", or is this
        distracting)?</li>
        <li>New Projects/Facets: once again</li>
        <li>Server tools, such as:<br />
        Consistent Installable runtimes (make api? suggest common approach in Eclipse, such as for datatools, for
        consistent user experience)<br />
        Server runtimes "effects" many places or properties, such as classpath, module dependancies, project build path.
        So, are there simpler ways? more consistent ways to set/modify these values?</li>
        <li>JPA: details view vs. property's view vs. outline view. Neil was quick to point out "they were first"
        :) <br />
        <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=137050">Dali bug 137050</a><br />
        <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=158607">Platform bug 158607</a><br />
        <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=156277">Platform bug 156277</a><br />
        <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=237928">Platform bug 237928</a><br />
        <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=154781">JDT UI bug 154781</a><br />
        <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=162079">Platform bug 162079</a><br />
        </li>
    </ul>
    </li>
</ul>
<h4>References</h4>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_User_Experience_Lead">WTP User Experience Lead</a></li>
</ul>
<h3>Architecture: Tim deBoer</h3>
<ul>
    <li>Will be re-forming group to priortize architecture items for 3.1</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>
<p><a href="http://wiki.eclipse.org/WTP_3.1_Project_Plan">Planning Process Document</a> has been started.</p>
<p>Eclipse-level dates and requirements have been clarified in a <a
    href="http://dev.eclipse.org/mhonarc/lists/eclipse.org-planning-council/msg01422.html">Planning Council message</a>
(and elsewhere). Should we adjust ours?</p>
<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>Other projects to watch:
    <ul>
        <li><a href="http://www.eclipse.org/proposals/sca-tools/">SCA Tools</a></li>
        <li><a href="http://dev.eclipse.org/mhonarc/lists/wtp-pmc/msg01400.html">EMFT Texo project proposal</a></li>
        <li><a href="http://dev.eclipse.org/mhonarc/lists/wtp-dev/msg06011.html">Maven Integration</a></li>
    </ul>
    </li>
</ul>
<h2>PMC Calendar</h2>
<ul>
    <li><a href="http://www.eclipseworld.net/">Eclipse World</a><br />
    Raghu and Neil have submitted.</li>
    <li><a href="http://www.eclipsecon.org/summiteurope2008/">Eclipse European Summit</a>. Known cases of
    presentations to be submitted: Kaloyan "project creation?", Naci will attend but (probably) not present. JPA,
    probably Shawn probably combined with EclipseLink. JSF, probably Cameron.</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>
