blob: adb6697e0ef9a732cca7d13c75132f4c47d8bfb8 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<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">
</head>
<body text="#000000" bgcolor="#ffffff" link="#0000ee" vlink="#551a8b" alink="#ff0000">
<table BORDER=0 CELLSPACING=5 CELLPADDING=2 WIDTH="100%" >
<tr>
<td ALIGN=LEFT width="60%"><font class=indextop>eclipse web tools platform project</font><br>
<font class=indexsub>contributing to the wtp project</font></td>
<td WIDTH="40%">
<img SRC="../../images/Idea.jpg" HSPACE=50 height=86 width=120 align=CENTER></td>
</tr>
</table>
<table BORDER=0 CELLSPACING=5 CELLPADDING=2 WIDTH="100%" >
<tr>
<td ALIGN=LEFT VALIGN=TOP> <I>This document was inspired by the <A CLASS="external" HREF="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/cdt-home/developer/Commitment.html?cvsroot=Tools_Project" target="_top">Contributing
to the CDT document</A><!-- This image doesn't exist. <img class="outlink" src="../jst/images/out.png" alt="" width="6" height="6" />--></I>
</td>
</tr>
<tr>
<td ALIGN=LEFT VALIGN=TOP BGCOLOR="#0080C0"><b>
<font face="Arial,Helvetica" color="#FFFFFF">Introduction</font></b></td>
</tr>
<tr>
<td valign="top">
<P>
People often ask, &quot;What does it take to get involved with the development of the WTP?&quot; There are many ways to get involved. On the lightweight end of scale, there is involvement by using the WTP and providing feedback and sharing your experiences on the Eclipse and WTP newsgroups. Beyond that, you can report problems that you discover, so that they may be addressed in future releases. A deeper level of involvement would be to actually solve some of the problems that you or others have uncovered by modifying/writing the necessary code and creating patches that can applied by the project committers. The final, and most beneficial way to get involved is to take responsibility for a significant piece of development work, whether it's enhancing a particular area of the tool or creating new functionality.
<P>
The purpose of this document is to help people and organizations understand what it means to &quot;commit&quot; to WTP Development at this highest level. Basically, it involves a commitment to describe, develop, test and document your contributions.
</td>
</tr>
<tr>
<td ALIGN=LEFT VALIGN=TOP BGCOLOR="#0080C0"><b>
<font face="Arial,Helvetica" color="#FFFFFF">Commitment to Development</font></b></td>
</tr>
<tr>
<td valign="top">
<H4>Communicating Your Desires/Intentions</H4>
<p>The first step involves letting the WTP user community and other WTP development
team members what you propose. The mechanism for this is to create Bugzilla
entries to describe the enhancements or new capabilities you propose to do. The
mailing lists and/or newgroups could also be used for discussing or proposing,
in a more informal way, enhancements or new capabilities. Anyway Bugzilla is seen
here as a central repository of reference for enhancement demands. </p>
<P>
Bugzilla is the open source change management system used by Eclipse projects. To set these Bugzilla entries apart from other problem reports, the word &quot;plan&quot; should be used in the keywords field, and the severity of the entry should be set to &quot;enhancement&quot;. Following these guidelines will ensure that all of these proposals get picked up by the appropriate query and recorded in the plan for the upcoming release.
<P>
Feature specifications (what your code will do) and design specifications (how it will do it) are an important aspect of the development effort. These specifications will allow the WTP community and the rest of the WTP development team to understand what you are doing and to provide feedback. The format of these documents is not important, the content is.
<P>
<H4>Becoming a committer</H4>
<p>Every developer's contribution is welcomed. And by the time, developers can become committers. A committer is a developer who has write access to the source code repository for the associated subproject (or component), and has voting rights allowing to affect the future of the subproject (or component); other developers define patches and submit them, indirectly, through committers. A developer gains such committer rights through frequent and valuable contributions to a subproject, or component of a subproject (in the case of large subprojects). For more information in what it means to be or to become an Eclipse project or subproject committer, see the
<a CLASS="wikipage" href="../project-charter.html">WTP Project Charter</a>. We should point out that creating and submitting quality patches is the best way to obtain committer privileges for future work.
</p>
<P>
<P>
<H4>Delivering the Code</H4>
<p>Once the feature and design documents have been floated to the rest of the WTP community and feedback has been harvested, its time to start pushing the code changes into the development stream. For those that have committer privileges, these changes can be pushed directly into the stream. Those without committer privileges create patches that get reviewed and applied by committers. Patch requests are communicated via
attachments to Bugzilla bugs. Being a committer entails certain responsibilities on its own which won't be discussed here.
</p>
<P>
<H4>Commitment To Testing</H4>
<p>Everyone that contributes content to Eclipse projects is expected to test their contributions. When contributing a significant enhancement or feature, that commitment means more than just assuring the community that the code has been tested. It means documenting a test plan and committing to execute that testing on release candidate builds. The Eclipse way of generating releases is to generate a series of release candidate builds after all of the development has been completed. Each release candidate goes through a test-fix cycle where everyone tests their contributions and communicates their findings. A collective decision is made as to which problems will get fixed for the next release candidate, and the process is repeated. Fewer and fewer fixes will be &quot;blessed&quot; as we progress through the release candidates.
</p>
<P>
So, committing to contribute significant code to the WTP also means committing to participate in the test-fix cycles by executing your test plans against the release candidates build leading up to the final release build.
<P>
<H4>Commitment to Documentation</H4>
<p>An important part of any enhancement or addition to the WTP is making sure that the on-line help of the tool stays current with the changes. The responsibility for updating/modifying/writing the on-line help content that is associated with some part of the tool lies with the contributors of the code. Unless the contributors have commit privileges, the on-line documentation content would get submitted as a patch, much the same as code. And, like code, producing and submitting quality documentation patches is the way to obtain documentation committer privileges.
</p>
<P>
<I>Until a Documentation Style Guide is available for the WTP project, you may
refer to the <A CLASS="external" HREF="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/cdt-home/user/docs.html?cvsroot=Tools_Project" target="_top">CDT
Documentation Style Guide</A> to help maintain a constant look and feel
for documentation originating from different contributors. There also a
couple of links that take you to additional information on how to contribute
help content for Eclipse projects.
<P>
So, finally, committing to contribute code to the WTP also means committing to contributing the associated on-line documentation content for the part of the tool that is being enhanced or created.</i><P></td>
</tr>
</table>
</body>
</html>