|  | <?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 	$App 	= new App();	$Nav	= new Nav();	$Menu 	= new Menu();		include($App->getProjectCommon()); | 
|  |  | 
|  | $pageTitle = "SWT Bug Triage"; | 
|  |  | 
|  | ob_start(); | 
|  | ?> | 
|  | <div id="midcolumn"> | 
|  | <h1>SWT Bug Triage</h1> | 
|  | <script type="text/javascript"> | 
|  | window.onload = function() { | 
|  | if (window.XMLHttpRequest) | 
|  | { | 
|  | //IE7+, Firefox, Chrome, Opera, Safari | 
|  | xmlhttp=new XMLHttpRequest(); | 
|  | } | 
|  | else if (window.ActiveXObject) | 
|  | { | 
|  | // IE6, IE5 | 
|  | xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); | 
|  | } | 
|  | else | 
|  | { | 
|  | alert("Your browser does not support XMLHTTP!"); | 
|  | } | 
|  | xmlhttp.onreadystatechange=function() { | 
|  | if(xmlhttp.readyState==4){ | 
|  | //if (xmlhttp.status == 200) { | 
|  | buildTable(xmlhttp.responseText); | 
|  | //}else{ | 
|  | //	alert(xmlhttp.status); | 
|  | //} | 
|  | } | 
|  | } | 
|  | xmlhttp.open("GET","swt_triage.json",true); | 
|  | xmlhttp.send(null); | 
|  | } | 
|  |  | 
|  | function buildTable(loadedJSON){ | 
|  | var container = eval('(' + loadedJSON + ')'); | 
|  | var components = container.components; | 
|  | var users = container.users; | 
|  |  | 
|  | table = document.getElementById('swtComponents'); | 
|  | var row = table.insertRow(0); | 
|  | var component = row.insertCell(0); | 
|  | var description = row.insertCell(1); | 
|  | var owner = row.insertCell(2); | 
|  | component.innerHTML = '<div style="text-align: center;"><h3>Component</h3></div>'; | 
|  | description.innerHTML = '<div style="text-align: center;"><h3>Description</h3></div>'; | 
|  | owner.innerHTML = '<div style="text-align: center;"><h3>Owner</h3></div>'; | 
|  |  | 
|  | for (i = 0; i < components.length; i++){ | 
|  | row = table.insertRow(i+1); | 
|  | component = row.insertCell(0); | 
|  | description = row.insertCell(1); | 
|  | owner = row.insertCell(2); | 
|  | component.innerHTML = '<div style="text-align: center;" id="component">[<a href="javascript:viewBugsWithSummary(\'[' + components[i].component + ']\')">' + components[i].component + '</a>]</div>'; | 
|  | description.innerHTML = components[i].description; | 
|  | var osList = ""; | 
|  | for (j = 0; j < components[i].OS.length; j++) { | 
|  | osList += '<li>' + components[i].OS[j].name + ' - ' + components[i].OS[j].owner + ','+ components[i].OS[j].second + '</li>'; | 
|  | } | 
|  | owner.innerHTML = '<div id="owner"><ul>' + osList + '</ul></div>'; | 
|  | } | 
|  | } | 
|  |  | 
|  | function viewBugsWithSummary(desc) { | 
|  | //window.location = "https://bugs.eclipse.org/bugs/buglist.cgi?short_desc_type=anywordssubstr&short_desc=" + encodeURI(desc) + "&product=Platform&component=IDE&component=UI&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keywords_type=allwords&keywords=&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0="; | 
|  | window.location = "https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=" + encodeURI(desc) + "&product=Platform&component=SWT&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&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="; | 
|  | } | 
|  | </script> | 
|  | <h2>Background</h2> | 
|  | <p>Early in the 3.6 planning cycle, we have decided to revamp the SWT bug triage system. Up until now, our triage | 
|  | consisted of directly assigning bugs to the component owners. Over time this led to each committer owning a huge number | 
|  | of bugs which not only gives the mistaken impression that they are actively working on solving all of those bugs but also makes it | 
|  | difficult for members of the community to identify which bugs are available for contribution. The Platform UI team has changed their | 
|  | triage process earlier in the year and we have decided to adopt their process.</p> | 
|  | <h2>Triage</h2> | 
|  | <p>The new SWT triage process is as follows: | 
|  | <ul> | 
|  | <li>Bugs come in to platform-swt-inbox@eclipse.org</li> | 
|  | <li>If the bug has sufficient information in it to proceed, the person performing the triage: | 
|  | <ul> | 
|  | <li>Prepends the component area of the bug in the Summary field.</li> | 
|  | <li>Prepends [GTK], [GTK3], [Win32], [Cocoa] or [Common] into the Summary field, depending on which architectures are affected by the bug.</li> | 
|  | <li>Ensures that the severity level is appropriate - enhancement requests should be marked appropriately as should blocker/critical bugs.</li> | 
|  | <li>Adds the primary component owner as the main QA contact.</li> | 
|  | <li>Adds the secondary owner to the CC field.</li> | 
|  | <li>Reassigns the bug to the swt-triaged@eclipse.org box.</li> | 
|  | </ul> | 
|  | </li> | 
|  | <li>Committers assign the bugs that they are actively working on to themselves.</li> | 
|  | <li>All other bugs in the triaged inbox are considered active but are not currently being worked on. These bugs are available for anyone in the community to work on.</li> | 
|  | </ul> | 
|  | <h2>Bug owners</h2> | 
|  | If you are the main QA contact on a bug: | 
|  | <ul> | 
|  | <li>Verify that there is enough information to proceed on the bug and that the severity is accurate.</li> | 
|  | <li>Blocker/critical bugs need to be fixed ASAP.</li> | 
|  | <li>Regressions need to be addressed during the current development cycle (on both main and maintenance branches).</li> | 
|  | </ul> | 
|  | When a comment is made on a bug you are watching: | 
|  | <ul> | 
|  | <li>Respond on the bug if necessary.</li> | 
|  | <li>Adjust bug priority if necessary.</li> | 
|  | </ul> | 
|  | </p> | 
|  |  | 
|  | <h2>SWT Component Areas</h2> | 
|  | <table id="swtComponents" border="1"> | 
|  |  | 
|  | </table> | 
|  | </div> | 
|  | <?php | 
|  | $html = ob_get_clean(); | 
|  |  | 
|  | # Generate the web page | 
|  | $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html); | 
|  | ?> |