platform-ui-home/contributing/checklist.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (view) (download) (as text)

1 : mvanmeek 1.1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 :     <html>
3 :     <head>
4 :     <title>UI Component Development Resources</title>
5 :     <meta http-equiv="Content-Type"
6 :     content="text/html; charset=iso-8859-1">
7 :     <link rel="stylesheet" href="http://dev.eclipse.org/default_style.css"
8 :     type="text/css">
9 :     </head>
10 :     <body bgcolor="#ffffff" text="#000000">
11 :     <p></p>
12 :     <table border="0" cellpadding="2" cellspacing="5" width="100%">
13 :     <tbody>
14 :     <tr>
15 :     <td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font
16 :     color="#ffffff" face="Arial,Helvetica"> Platform UI Component Contributors Check
17 :     List </font></b></td>
18 :     </tr>
19 :     <tr>
20 :     <td align="right" valign="top" width="2%"><img
21 :     src="http://dev.eclipse.org/images/Adarrow.gif" alt="List title arrow"
22 :     border="0" height="16" width="16"></td>
23 :     <td width="98%"><p><b>Plug-in Check list</b> </p>
24 :     <p>Contributing new function in a plug-in often occurs when features built
25 :     in other products tend to reveal solid generic capabilities that all
26 :     UI developers might want to use. In this case the process followed generally
27 :     involves the following steps:</p>
28 :     <ol>
29 :     <li>Existing plug-in is seen as a useful feature at the level of the
30 :     Platform UI
31 :     <ol>
32 :     <li>Ideally the plug-in proves itself by being shipped in 1 or more
33 :     releases of prefereably multiple products</li>
34 :     <li>Ideally requests from the community are being sent to Platform
35 :     UI asking for this feature</li>
36 :     <li>Always good to have at least two (2) scenarios ready that will
37 :     be clients of this feature in to help solidify the robustness
38 :     of the new API</li>
39 :     </ol>
40 :     </li>
41 :     <li>Contact is made with Platform UI requesting the feature be moved
42 :     down</li>
43 :     <li>Discussion over the feature ensues.
44 :     <ol>
45 :     <li>If agreed upon, then committment is discussed.
46 :     <ol>
47 :     <li>contributing team needs to provide 2 or more names of developers
48 :     who will maintain the code
49 :     <ol>
50 :     <li>NOTE: this means the exisiting Platform UI team generally
51 :     will not absorb code in this case, you must continue to
52 :     maintain it</li>
53 :     </ol>
54 :     </li>
55 :     <li>without this committment the code does not go in</li>
56 :     </ol>
57 :     </li>
58 :     </ol>
59 :     </li>
60 :     <li>Code reviews occur</li>
61 :     <li>JUnit Tests must be provided that verify the new feature</li>
62 :     <li>Once the tests and code are ready the projects are requested to
63 :     be created along with user privilidges</li>
64 :     <li>Then the code is committed and made part of the builds </li>
65 :     </ol></td>
66 :     </tr>
67 :     <tr>
68 :     <td align="right" valign="top" width="2%"><img
69 :     src="http://dev.eclipse.org/images/Adarrow.gif" alt="List title arrow"
70 :     border="0" height="16" width="16"></td>
71 :     <td width="98%"> <b>Code Check list</b> <ul>
72 :     <li>UI will need you to use project-specific settings for compiler warnings/errors,
73 :     code formatting etc. that are copied from the other UI plug-ins' settings</li>
74 :     <li>use &quot;organize imports&quot; (Ctrl-Shift-O) to clean up the
75 :     imports (we do not use org.eclipse.* type notation)</li>
76 :     <li> don't put CVS headers in the files (with revision information etc.)</li>
77 :     <li> the copyright header goes before the package declaration, starting
78 :     in the very first line.
79 :     <ul>
80 :     <li>It may be necessary to agree on a copyright depending on who
81 :     is contributing the code</li>
82 :     </ul>
83 :     </li>
84 :     <li>commit comments are required for all code commits, bugs should be
85 :     logged to track work and the bug number and a description is then
86 :     used in the commit comment to describe the chagne. For example when
87 :     fixing a bug, use &quot;Fixed bug xxx: &lt;title of bug&gt;&quot;.
88 :     Otherwise, describe what you did with a short sentence, this will
89 :     help us track the changes</li>
90 :     <li> before committing changes, catch up to all changes made by others,
91 :     and then run the tests</li>
92 :     <li> don't commit your changes if this will cause compile errors for
93 :     others</li>
94 :     <li> it is considered good practice to write code that does not have
95 :     warnings. If possible, fix warnings existing whenever you see them,
96 :     they can crop up due to compiler changes occassionally</li>
97 :     <li> non-externalized strings are considered errors, do not ship non-externalized
98 :     strings</li>
99 :     <li>write/update Javadoc for all API you introduce/change</li>
100 :     </ul></td>
101 :     </tr>
102 :     <tr>
103 :     <td align="right" valign="top"><img
104 :     src="http://dev.eclipse.org/images/Adarrow.gif" alt="List title arrow"
105 :     border="0" height="16" width="16"></td>
106 :     <td width="98%"> <p><strong>Bugs</strong></p>
107 :     <p>New bugs related to this feature will be sent to you as owner. Please
108 :     try and review all new bugs and respond as quickly as possible. We realize
109 :     that you might have some other full time job to worry about, but we
110 :     do expect some level of responsiveness. </p></td>
111 :     </tr>
112 :     <tr>
113 :     <td align="right" valign="top" width="2%"><img
114 :     src="http://dev.eclipse.org/images/Adarrow.gif" alt="List title arrow"
115 :     border="0" height="16" width="16"></td>
116 :     <td width="98%"> <p><b>Build Check List</b></p>
117 :     <ol>
118 :     <li>Doug can you put something here?<br>
119 :     </li>
120 :     </ol></td>
121 :     </tr>
122 :     <tr>
123 :     <td align="right" valign="top" width="2%"><img
124 :     src="http://dev.eclipse.org/images/Adarrow.gif" alt="List title arrow"
125 :     border="0" height="16" width="16"></td>
126 :     <td width="98%"> <b>Mailing Lists</b> <p> Once you are a contributor/committer
127 :     to Platform UI, you should be tracking the platform UI mailing list
128 :     to watch for issues related to what you've been doing, and feel free
129 :     to be part of other development discussions that affect your component.
130 : mvanmeek 1.2 See the<a href="../dev.html"> UI Development page</a> for our mailing
131 :     list information.</p></td>
132 : mvanmeek 1.1 </tr>
133 :     <tr>
134 :     <td align="right" valign="top" width="2%"><img
135 :     src="http://dev.eclipse.org/images/Adarrow.gif" alt="List title arrow"
136 :     border="0" height="16" width="16"></td>
137 :     <td width="98%"> <b>Patches</b> <ul>
138 :     <li>patches should be provided by way of bug reports with email to a
139 :     committer if you need them applied</li>
140 :     </ul></td>
141 :     </tr>
142 :     </tbody>
143 :     </table>
144 :     </body>
145 :     </html>