diff options
Diffstat (limited to 'org.eclipse.mylyn.help.ui/doc/contributing.html')
-rw-r--r-- | org.eclipse.mylyn.help.ui/doc/contributing.html | 176 |
1 files changed, 176 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.help.ui/doc/contributing.html b/org.eclipse.mylyn.help.ui/doc/contributing.html new file mode 100644 index 000000000..83a26ee1f --- /dev/null +++ b/org.eclipse.mylyn.help.ui/doc/contributing.html @@ -0,0 +1,176 @@ +<html> + <head> + <title> + Mylar FAQ + </title> + </head> + <body> + <center><h1>Mylar Contributor Reference</h1></center> + <p>Those interested in contributing should start out by emailing +<a href="mailto:mylar-dev@eclipse.org">mylar-dev@eclipse.org</a> in order to get +an idea of the current priorities. Also refer to the list of <a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=Mylar&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keywords_type=allwords&keywords=helpwanted&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0="> +reports marked help wanted</a>. </p> + <ul> + <li><a href="#contributing-intro">Introduction</a></li> + <li><a href="#contributing-setup">Workspace setup</a></li> + <li><a href="#bootstrap">Working bootstrapped</a></li> + <li><a href="#contributing-patches">Contributing patches</li> +<!-- <li>Building</li>--> + </a></li> + <li><a href="#bootstrap">Building the JIRA Connector</a></li> + <li><a href="#building-dist">Building a distribution</a></li> + </ul><hr width="50%"> + <h3> <br> + <a name="contributing-setup">Workspace setup</a></h3> + <ul> + <li>Building Mylar feature from HEAD requires + the latest Eclipse milestone release and + <a href="http://java.sun.com/j2se/1.5.0/download.jsp">JDK 1.5</a>. + Associate the J2SE-1.5 with your installed JRE on the Execution Environments preference page. </li> + <li>In the CVS Repositories view, add the following CVS location: + <b>HOST =</b> dev.eclipse.org <b>Repository Path</b>: + /cvsroot/technology.<br>If you do not have an account you may enter <b>anonymous</b> for the user name +and leave the password blank.</li> + <li>Check out all of the projects under org.eclipse.mylar (except mylar.jira, + mylar.sandbox, mylar.viz, and mylar.zest.* which have additional + dependencies). There should be no errors or warnings.</li> + <li>Run org.eclipse.mylar.tests.AllTests as a JUnit Plug-in Test, with + assertions enabled. All tests should pass and there should be no + console output once you have done the following:<ul> + <li>Add the following to the test configuration under Arguments -> VM + Arguments: -enableassertions -Xmx384M</li> + <li>Add a <b>credentials.properties</b> file to + org.eclipse.mylar.bugzilla.tests, and define "username: xxx" and + "password: yyy" in it. Email mylar-dev@ecipse.org for a username and + password.</li> + </ul> + </li> + </ul> + <hr> + <h3><a name="connector-jira">JIRA Connector</a></h3> + <ul> + <li>Get the latest <a href="http://subclipse.tigris.org/download.html"> + Subclipse</a> plug-in, e.g. from the following update site: + subclipse.tigris.org/update_1.0.x</li> + <li>Set up a Subversion repository for + <a href="http://jira-dashboard.tigris.org/">JIRA Dashboard</a> (see the + <a href="http://jira-dashboard.tigris.org/servlets/ProjectSource">JIRA + Dahsboard doc</a> for troubleshooting):<ul> + <li>username: <code>guest</code> </li> + <li>password: <blank></li> + <li>repository: + <a href="http://jira-dashboard.tigris.org/svn/jira-dashboard/trunk"> + http://jira-dashboard.tigris.org/svn/jira-dashboard/trunk</a></li> + </ul> + </li> + <li>Check out the JIRA Dashboard Core featureres:<ul> + <li>org.tigris.jira.core</li> + <li>org.tigris.jira.core.soap</li> + <li>org.tigris.jira.core-feature</li> + </ul> + </li> + <li>Create a working set that excludes <i>org.tigris.jira</i> plug-ins + so that you have no warnings in the Problems list</li> + <li>Note that the JIRA connector has it's own test suite: <i> + org.eclipse.mylar.jira.tests.AllJiraTests</i></li> + </ul> + <hr> +<h3><a name="bootstrap">Working bootsrapped</a> </h3> +<p>To make eating your own dog food easier and avoid having to update to dev +builds Mylar committers work bootstrapped:</p> + <ul> + <li>Set up a fresh workspace launched from an Eclipse that does not have + Mylar installed, and check out Mylar into + it.</li> + <li>Create a new Launch Configuration, point it at your workspace, + and work in that. The launching workspace will typically use very + little memory, but if you have a memory constrained machine you can kill + its java process.</li> + <li>Whenever your changes make it into HEAD synch up your launching + workspace and restart. You could conceivably </li> + </ul> + <hr> +<h3><a name="contributing-patches">Contributing patches</a> </h3> + <p>All contributions to Mylar including patches should be made by using + Mylar in order to ensure that we + <a href="http://en.wikipedia.org/wiki/Eat_one's_own_dog_food">eat our our + own dog food</a>. A task context should be attached to each patch to + make applying and evolving it easier.</p> + <ul> + <li>Each patch should correspond to a single bug report, and a single + patch should be made for each set of changes to be reviewed.</li> + <li>With few exceptions patches should be accompanied by a JUnit test, + and in general unit tests are one of the most valuable and long-lived + contributions. If you are having trouble writing a test (e.g. + trickiness verifying what happens in the UI) comment on the + corresponding bug report so that we can point you at similar test cases + or consider extending the test harness if needed. </li> + <li>Minimize the amount of changes to existing code to make review + easier. </li> + <li>Synchronize often to ensure you have the latest code. Once you + start modifying resources, put the Synchronize view in Outgoing mode and press + the Change Set button so that Mylar tracks the context for the patch.</li> + <li>Before creating a new JUnit test class class check the components test + suite for similar test cases (e.g. + <tt>AllTasklistTests</tt>).</li> + <li>Set the formatter by importing org.eclipse.mylar/developer/javaFormatterSettings.xml + into Window -> Preferences -> Java -> Code Style -> Formatter. + Format code using Eclipse's formatter (Ctrl+Shift+F) + and ensure that no have been added.</li> + <li>Ensure that there is no console output. For logging errors use + <tt>MylarStatusHandler</tt>.</li> + </ul> + <p>To submit:</p> + <ul> + <li>Ensure there are no build errors, warnings, and that <tt>org.eclipse.mylar.tests.AllTests</tt> passes.</li> + <li>Synchronize using Incoming mode and ensure that there are no + conflicts, and merge them locally if there are.</li> + <li>Right click the task context change set (or the project containing + the patch--patches should be made for a project, not a file), press Team + -> Create Patch, and make the file suffix ".txt".</li> + <li>Attach the patch to the bug report, and <i>indicate in the comment + what testing was done to validate it</i> (e.g. unit test coverage, + manual tests performed).</li> + <li>Attach the task context to the bug report.</li> + </ul> + <hr> +<h3><a name=building-dist>Building a distribution</a></h3> +<ul> + <li>Using PDE Build support to create a Mylar distribution from HEAD, using + a plain Eclipse 3.2<ul> + <li>org.eclipse.mylar-feature/feature.xml -> Overview -> change version + number to current date (e.g. 0.4.7.v20060125-0800)<ul> + <li>On Plug-ins tab -> Versions... -> Force feature version into plug-in and + fragment manifests</li> + <li>Repeat above for org.eclipse.mylar-bugzilla-feature.xml</li> +</ul> + </li> + <li>org.eclipse.mylar-site/e3.2/site.xml<ul> + <li>Delete old features (grayed out)</li> + <li>Add new mylar-bugzilla and mylar features</li> + <li>Hit Build All (if this fails restart Eclipse and try again)</li> +</ul> + </li> +</ul> + </li> + <li>To install, add the path of org.eclipse.mylar-site/e3.2/site.xml as a + local update site</li> + <li>Bugzilla support can be built independently of the Mylar UI by checking + out the following projects mylar.bugzilla.core, mylar.bugzilla.ui, + mylar.tasklist, mylar.core </li> +</ul> + <p>Merging and building the 3.1 branch:</p> + <ul> + <li>Right-click the org.eclipse.mylar.java, mylar.ide, and mylar.xml + project, <i>Team</i> -> <i>Switch to Another Branch...</i>, then <i>Refresh</i> the + <i>Branches</i> + and select <b>e_3_1 </b></li> + <li>The list of files that should not be overwritten is in: + org.eclipse.mylar-site/merge.text</li> + </ul> + <p>Deploying:</p> + <ul> + <li>Instructions are in org.eclipse.mylar-site/release.txt</li> + </ul> + <p> </p> +</body></html>
\ No newline at end of file |