<html>
<head>
<title>WTP PMC Agenda/Minutes for November 28, 2006 Conference
Call</title>
</head>

<body>


<h1>WTP PMC Agenda/Minutes for November 28, 2006 Conference Call</h1>


<h2>Call Info</h2>
<p>Tollfree in the US: 866-214-3176 <br />
Alternate: 404-827-9098 <br />
Access code: 8870689# <br />
<br />
<a href="http://www.timeanddate.com/">Call Time: 7am PDT / 10am PDT</a>
</p>
<h2>Attendees</h2>
<h3>PMC Members</h3>
<ul>
    <li>Tim Wagner: Y</li>
    <li>David Williams: Y</li>
    <li>Naci Dai: Y</li>
    <li>Raghunathan Srinivasan: Y</li>
    <li>Jochen Krause: Regrets</li>
    <li>Arthur Ryman: Regrets</li>
</ul>

<h3>Invited Guests</h3>
<ul>
    <li>Pieter Humphrey: Y</li>
    <li>Neil Hauge (JPA/Dali): Y</li>
    <li>Bob Goodman (ATF): Y</li>
</ul>

<h2>Community</h2>
<ul>
    <li>Project link proceeding in parallel with EMO policy planning.
    <li>AI: Tim and Pieter: Work on adopter/contributor list.
    <li>Ian offering EMO resources to help with Phoenix conversion.
    <li>All PMC call attendees to review EclipseCon submissions in the webtools area for next week's call.
        Deadline to announce is 12/15.
</ul> 

<h2>Process </h2>
<ul>
  <li>Tim has outstanding note to Janet regarding MIME IP update.
  <li>2/21 targeted for incubation exit (aka validation) reviews for Dali and JSF (ATF date TBD).
</ul>

<h2>JEE and 2.0 Planning </h2>
<ul>
  <li>Large attendance, including many people who are interested in the topic as opposed to the code per se.
  <li>Focused on support for models and proposed relation between new EE 5 and existing models; this will
      be the focus of this Thursday's meeting.
  <li>Request from JBoss on the 1.5.x line "tolerating" EE 5 (no features but not blocking it). Investigating whether
      this is possible, though we do not want to do temporary patches or multiple implementations.
  <li>Looking at Dali's annotation approaches to see if some of their infrastructure can be adopted for other
      annotation uses.
</ul>

<h2>Build Status (David) </h2>
<ul>
  <li>Europa milestone on January 4th will be converted into a pre-holiday milestone of the 21st.
  <li>Java 5 guidelines underway.
  <li>Interop testing plans being defined.
</ul>

<h2>JSF (Raghu) </h2>
<ul>
  <li>Milestone plan draft available on Wiki.
  <li>Monthly status call moved to next week; will be looking for help on documentation.
</ul>

<h2>ATF (Bob) </h2>
<ul>
  <li>Resolving dependencies with Mozilla and trying to get out hand-built builds. Need Mac build as well to
      get support on that platform. Will need build for short-term use, and still working out long-term
      build logistics.</li>
  <li>Tech preview will be delayed into January due to XULRunner build issues above.</li>
</ul>

<h2>Dali/JPA (Neil) </h2>
<ul>
  <li>Build integration verified.
  <li>Attempting to come to final decision regarding ORM/XML descriptor support in conjunction with
      annotations. Tabbed properties still require some patches to enable them to be used for the Java
      annotations; XML would likely use a separate, XML-based editor.
  <li>Need help from the platform team; WTP members can vote for the open issues.
</ul>

<P><small>Agenda/Minutes by Tim Wagner, November 28, 2006.
Please send any corrections needed. </small>
</body>
</html>
