blob: 0c38ded2aabcb123bea528e04ce9127b681241e8 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<faq xmlns="http://www.eclipse.org/webtools/faq"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.eclipse.org/webtools/faq schemas/faq.xsd"
name="wtp committer faq">
<category name="General"/>
<category name="Build/CVS"/>
<category name="Source Code"/>
<category name="Website"/>
<entry id="cvs_1" category="Build/CVS">
<question>What is the CVS info for the webtools project?</question>
<answer>
server : dev.eclipse.org<br/>
path : /cvsroot/webtools
</answer>
</entry>
<entry id="website_1" category="Website">
<question>Who maintains the WTP website?</question>
<answer>
The WTP website is maintained by the WTP committers.<br/>
<br/>
Problems and requests should be submitted by opening a <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Web%20Tools&amp;component=website">bug report</a>.
</answer>
</entry>
<entry id="website_2" category="Website">
<question>How do I update the WTP website?</question>
<answer>
<p>
There are two ways:
<ol>
<li>
Extract the whole website (www/webtools), make your changes, and run
the website build script (build.xml) in the webtools folder. This will
build the whole site and is useful if you need to make changes in more than
one module (see below). The downside is the website is big and can take
a while to extract.
</li>
<li>
The website is broken up into self contained modules such as community, faq, people,
and plans. Extract the module you want to make changes to (such as www/webtools/plans), make your changes,
run the build script (build.xml) included in the module, and commit your changes.
</li>
</ol>
</p>
</answer>
</entry>
<entry id="website_3" category="Website">
<question>What is the CVS info for the webtools website?</question>
<answer>
The WTP website is located in the cvs root for the Eclipse website in
the www/webtools folder.<br /><br />
server : dev.eclipse.org<br/>
path : /cvsroot/org.eclipse
</answer>
</entry>
<entry id="general_1" category="General">
<question>Who do we contact in order to get commiter passwords reset?</question>
<answer>
You need to contact the Eclipse webmaster at <a href="mailto:webmaster@eclipse.org">webmaster@eclipse.org</a>.
</answer>
</entry>
<entry id="general_2" category="General">
<question>How do I change my dev.eclipse.org password?</question>
<answer>
You can change your password using the committer tools available at <a href="https://dev.eclipse.org/committers/">https://dev.eclipse.org/committers/</a>.
</answer>
</entry>
<entry id="source_1" category="Source Code">
<question>What copyrights should we use? </question>
<answer>
<p>The copyright statement takes one of these two forms, differing only in the year stated on the first line of text.<br/>
IBM copyrights below are examples only and won't apply to everyone in the community.</p>
<ul>
<li>If the file's year of invention and last year of modification are the same.<br/>
Example:<br/>
/*******************************************************************************<br/>
* Copyright (c) 2005 IBM Corporation and others.<br/>
* All rights reserved. This program and the accompanying materials<br/>
* are made available under the terms of the Eclipse Public License v1.0<br/>
* which accompanies this distribution, and is available at<br/>
* http://www.eclipse.org/legal/epl-v10.html<br/>
*<br/>
* Contributors:<br/>
* IBM Corporation - initial API and implementation<br/>
*******************************************************************************/
</li>
<li>If the file's year of invention and last year of modification are
different...<br/>
Example:<br/>
/*******************************************************************************<br/>
* Copyright (c) 2001,2005 IBM Corporation and others.<br/>
* All rights reserved. This program and the accompanying materials<br/>
* are made available under the terms of the Eclipse Public License v1.0<br/>
* which accompanies this distribution, and is available at<br/>
* http://www.eclipse.org/legal/epl-v10.html<br/>
* <br/>
* Contributors:<br/>
* IBM Corporation - initial API and implementation<br/>
*******************************************************************************/
</li>
</ul>
</answer>
</entry>
<entry id="source_2" category="Source Code">
<question>Is there a tool to update the copyright?</question>
<answer>
<B>org.eclipse.releng.tools </B>plugin from
<a href="http://www.eclipse.org/downloads/index.php">Eclipse download site</a>
allows you to fix copyrights.
</answer>
</entry>
<entry id="source_3" category="Source Code">
<question>What are the package naming conventions?</question>
<answer>
See the <a href="../development/guidelines/naming-conventions.html">WTP project naming
conventions</a>
</answer>
</entry>
<entry id="cvs_2" category="Build/CVS">
<question>How do I add my plugin to the WTP CVS repository?</question>
<answer>
<ol>
<li>On your plugin project select <B>Team-&gt;Share Project...</B> context menu.</li>
<li>Choose existing repository location (or create a new one if you haven't) for
<B>dev.eclipse.org:/home/webtools</B>
</li>
<li>On the next page, if you know exactly where the plugin should be located in the
repository, then select the &quot;Use specified module name&quot; radio button and
type in the full path. However, to be safe, it's recommended browsing the repository
to obtain the correct path, and then adding the module name. Here is an example:<br/>
<br/>
Select the &quot;Use an existing module&quot;.<br/>
Browse and then select the folder where you want your new plugin to reside.<br/>
<br/>
<img border="0" src="images/shareProject1.gif" width="485" height="602"/><br/>
<br/>
Notice that the text field is filled in with the path. Reselect the &quot;Use
specified module name:&quot; radio button, and append your plugin's name.<br/>
<br/>
<img border="0" src="images/shareProject2.gif" width="486" height="602"/>
</li>
</ol>
</answer>
</entry>
<entry id="cvs_3" category="Build/CVS">
<question>Where can I find more information about CVS?</question>
<answer>
The <a href="http://dev.eclipse.org/viewcvs/index.cgi/?cvsroot=WebTools_Project">WTP
CVS respository page</a> contains links to useful CVS documentation including how to
use Eclipse with CVS.
</answer>
</entry>
<entry id="cvs_4" category="Build/CVS">
<question>Is there a tool for releasing changes?</question>
<answer>
Yes. The releng tool plugin is available from the <a href="http://www.eclipse.org/downloads" target="_top">Eclipse download page</a>. Each version
of Eclipse contains its own releng tool plugin. Select the version of Eclipse you're
using. The releng tool plugin is found at the bottom of the page.
</answer>
</entry>
<entry id="cvs_5" category="Build/CVS">
<question>How do I release my changes?</question>
<answer>
<ol>
<li>
Commit your changes to the CVS repository. (For information about
CVS and committing see the FAQ entry <a href="#cvs_3">Where can I find more information about CVS?</a>)
</li>
<li>
Extract the releng project from the CVS repository. This project contains the
map files.
</li>
<li>
<b>
*note: It is strongly recommended that you use the releng tool to release
your changes.
</b>
<p>
You now have to tag your source files and update the corresponding map entries.
Although you can do this manually it is much easier and less error prone to use
the releng tool. (See FAQ entry <a href="#cvs_4">Is there a tool for releasing
changes?</a>)
</p>
<ol>
<li>
Select the plug-in you want to release, right click on it and select Team->Release as shown below.<br /><br />
<img src="images/releasemenu.gif"/>
</li>
<li>
Select the releng project as the map project. Click Next.
</li>
<li>
If not already selected, select the plug-ins you want to release. Click Next.
</li>
<li>
The page displays the changes between the last released version of the plug-in
and what is in HEAD. Review the changes. If everything is correct, click Next.
</li>
<li>
Enter the tag you want to use to release the changes. WTP uses tags of the form
vYYYYMMDD_HHMM. Click Next.
</li>
<li>
The page displays the changes to the map files. Review the changes. If everything
is correct, click Next.
</li>
<li>
Enter a comment for the release operation and click Finish.
</li>
</ol>
</li>
</ol>
</answer>
</entry>
<entry id="cvs_6" category="Build/CVS">
<question>What do I need to do before releasing changes?</question>
<answer>
<p>
It depends. If you're releasing an isolated fix, you're probably safe to run the
JUnit tests for the plugin and, if all pass, release your fix. If you're making
a breaking provisional API change (remember, you cannot make breaking API changes)
you should announce the change to the WTP dev list advising
what has changed, why, and how existing consumers of the provisional API can
adapt their plugins to the change.
</p>
<p>
It is also good practice to use a current WTP development driver when making
changes so as not to cause a break in your plugin due to changes in other
plugins.
</p>
</answer>
</entry>
<entry id="cvs_7" category="Build/CVS">
<question>How do I add a new plugin to WTP?</question>
<answer>
<p>
<b>Follow this proceduce closely. Mistakes will likely cause a build breakage.</b><br/>
There are three tasks to add a new plugin to WTP:
<ol>
<li>
Commit your new plug-in to the CVS repository. See <a href="#cvs_2">How do I add my plugin to the WTP CVS repository?</a>
</li>
<li>
<p>
Add your plugin to the appropriate feature. Features are located under the
subproject's assembly component. For example, for WST you can find features
at wst/components/assembly/features.
</p>
<p>
A feature entry will look like the following:<br />
<br />
&lt;plugin<br />
&#160;&#160;&#160;&#160;id="org.eclipse.wst.common.uriresolver"<br />
&#160;&#160;&#160;&#160;download-size="0"<br />
&#160;&#160;&#160;&#160;install-size="0"<br />
&#160;&#160;&#160;&#160;version="0.0.0"/&gt;<br />
</p>
<p>
After you've added your plugin to the feature, commit the changes
and release the feature.
</p>
</li>
<li>
Add your plugin to the appropriate map file. Map files are located in the
releng component. A map file entry will look like the following:<br />
<br/>
plugin@org.eclipse.wst=v20050718_2336,:pserver:anonymous@dev.eclipse.org:/home/webtools,,wst/components/assembly/plugins/org.eclipse.wst<br />
<br />
After updating the map file commit it to the repository.
</li>
<li>
<p>
Your plugin is now in the repository, included in a feature, and included
in a map. Now release your plugin.
</p>
</li>
</ol>
</p>
</answer>
</entry>
<entry id="cvs_8" category="Build/CVS">
<question>How do I jar my plug-in?</question>
<answer>
<p>
First of all, jarring is not an option for every plug-in. If your plugin contains
multiple jars you can't jar your plug-in.
</p>
<p>
There are a three steps to jarring your plugin:
<ol>
<li>
Update your plug-in's build.properties file to include the source.. and
output.. keys as well as "." for bin.includes and src.includes as follows:<br />
<br />
source.. = src/<br />
output.. = bin/<br />
bin.includes = plugin.xml,\<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;META-INF/,\<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;.,\<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;plugin.properties,\<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;about.html<br />
src.includes = exsd/,\<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;.,\<br />
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;build.properties<br />
</li>
<li>
Update your plug-in's manifest (MANIFEST.MF) by removing the line beginning with "Bundle-ClassPath".
</li>
<li>
Update the feature entry for your plugin to include the unpack=false attribute.<br />
<br />
&lt;plugin<br />
&#160;&#160;&#160;&#160;id="org.eclipse.wst.common.uriresolver"<br />
&#160;&#160;&#160;&#160;download-size="0"<br />
&#160;&#160;&#160;&#160;install-size="0"<br />
&#160;&#160;&#160;&#160;version="0.0.0"<br />
&#160;&#160;&#160;&#160;unpack="false"/&gt;
</li>
</ol>
</p>
</answer>
</entry>
<entry id="source_4" category="Source Code">
<question>What comment should I use when declaring public provisional API?</question>
<answer>
<p>
The following comment should be placed in each provisional API class description:<br />
<br />
* &lt;p&gt;<br />
* &lt;b&gt;Note:&lt;/b&gt; This class/interface is part of an interim API that is still under development and expected to<br />
* change significantly before reaching stability. It is being made available at this early stage to solicit feedback<br />
* from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken<br />
* (repeatedly) as the API evolves.<br />
* &lt;/p&gt;
</p>
<p>
See the WST <a href="http://dev.eclipse.org/viewcvs/index.cgi/wst/components/server/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModule.java?rev=1.12&amp;cvsroot=WebTools_Project&amp;content-type=text/vnd.viewcvs-markup" target="_top">Server core plugin</a> for an example.
</p>
</answer>
</entry>
</faq>