<!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=UTF-8">
<meta content="Apache Forrest" name="Generator">
<meta name="Forrest-version" content="0.8-dev">
<meta name="Forrest-skin-name" content="pelt">
<title>Apache Forrest issue tracker</title>
<link type="text/css" href="skin/basic.css" rel="stylesheet">
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
<link type="text/css" href="skin/profile.css" rel="stylesheet">
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
<link rel="shortcut icon" href="favicon.ico">
</head>
<body onload="init()">
<script type="text/javascript">ndeSetTextSize();</script>
<div id="top">
<!--+
    |breadtrail
    +-->
<div class="breadtrail">
<a href="http://www.apache.org/">apache</a> &gt; <a href="http://forrest.apache.org/">forrest</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
</div>
<!--+
    |header
    +-->
<div class="header">
<!--+
    |start group logo
    +-->
<div class="grouplogo">
<a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="images/apache-forrest.png" title="The Apache Software Foundation"></a>
</div>
<!--+
    |end group logo
    +-->
<!--+
    |start Project Logo
    +-->
<div class="projectlogo">
<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="images/project-logo.gif" title="Apache Forrest"></a>
</div>
<!--+
    |end Project Logo
    +-->
<!--+
    |start Search
    +-->
<div class="searchbox">
<form action="http://www.google.com/search" method="get" class="roundtopsmall">
<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="25" name="q" id="query" type="text" value="Search the site with google">&nbsp; 
                    <input name="Search" value="Search" type="submit">
</form>
</div>
<!--+
    |end search
    +-->
<!--+
    |start Tabs
    +-->
<ul id="tabs">
<li>
<a class="unselected" href="index.html">Welcome</a>
</li>
<li class="current">
<a class="selected" href="contrib.html">Developers</a>
</li>
<li>
<a class="unselected" href="versions/index.html">Versioned Docs</a>
</li>
<li>
<a class="unselected" href="pluginDocs/index.html">Plugins</a>
</li>
<li>
<a class="unselected" href="tools/index.html">Tools</a>
</li>
</ul>
<!--+
    |end Tabs
    +-->
</div>
</div>
<div id="main">
<div id="publishedStrip">
<!--+
    |start Subtabs
    +-->
<div id="level2tabs"></div>
<!--+
    |end Endtabs
    +-->
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
//  --></script>
</div>
<!--+
    |breadtrail
    +-->
<div class="breadtrail">

             &nbsp;
           </div>
<!--+
    |start Menu, mainarea
    +-->
<!--+
    |start Menu
    +-->
<div id="menu">
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Getting involved</div>
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
<div class="menuitem">
<a href="contrib.html" title="Everyone is a developer and has something to contribute">Contributing</a>
</div>
<div class="menuitem">
<a href="mail-lists.html" title="Discussion mail lists are the heart of the project: dev, user, svn">Mail lists and discussion</a>
</div>
<div class="menupage">
<div class="menupagetitle">Reporting bugs and issues</div>
</div>
<div class="menuitem">
<a href="forrest-friday.html" title="ForrestFriday monthly get-together">ForrestFriday IRC</a>
</div>
<div class="menuitem">
<a href="events.html" title="List of upcoming related conferences and meetings">Events</a>
</div>
<div onclick="SwitchMenu('menu_1.1.6', 'skin/')" id="menu_1.1.6Title" class="menutitle">Project</div>
<div id="menu_1.1.6" class="menuitemgroup">
<div class="menuitem">
<a href="guidelines.html" title="Open development guidelines to encourage participation">Project guidelines</a>
</div>
<div class="menuitem">
<a href="committed.html" title="Notes about contribution">Being committed</a>
</div>
<div class="menuitem">
<a href="roles.html" title="Tasks to keep the project flowing">Project roles</a>
</div>
</div>
</div>
<div onclick="SwitchMenu('menu_selected_1.2', 'skin/')" id="menu_selected_1.2Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Resources and Infrastructure</div>
<div id="menu_selected_1.2" class="selectedmenuitemgroup" style="display: block;">
<div class="menuitem">
<a href="asf-infrastructure.html" title="Explain the ASF infrastructure">Introduction</a>
</div>
<div class="menuitem">
<a href="mail-lists.html" title="Discussion mail lists are the heart of the project: dev, user, svn">Mail lists</a>
</div>
<div class="menupage">
<div class="menupagetitle">Issue management</div>
</div>
<div class="menuitem">
<a href="svn.html" title="Access to the Subversion (SVN) version control system">Version control</a>
</div>
<div class="menuitem">
<a href="http://forrest.zones.apache.org/" title="Demonstrations and testbed at forrest.zones.apache.org">Demonstrations</a>
</div>
<div class="menuitem">
<a href="gump.html">Gump integration</a>
</div>
<div onclick="SwitchMenu('menu_1.2.7', 'skin/')" id="menu_1.2.7Title" class="menutitle">Planning notes</div>
<div id="menu_1.2.7" class="menuitemgroup">
<div class="menuitem">
<a href="plan/index.html">Overview</a>
</div>
<div class="menuitem">
<a href="plan/internal-xhtml.html">Internal XHTML</a>
</div>
</div>
<div class="menuitem">
<a href="todo.html">Todo</a>
</div>
</div>
<div onclick="SwitchMenu('menu_1.3', 'skin/')" id="menu_1.3Title" class="menutitle">Best Practices and Procedures</div>
<div id="menu_1.3" class="menuitemgroup">
<div class="menuitem">
<a href="howto-dev.html" title="Describes tips and procedures for efficiently developing with Forrest.">Development tips</a>
</div>
<div class="menuitem">
<a href="subversion_bestpractices.html" title="Best practice notes for Subversion">Subversion</a>
</div>
<div class="menuitem">
<a href="documentation_bestpractices.html" title="Best practice notes for documentation">Documentation</a>
</div>
<div class="menuitem">
<a href="howto-howto.html" title="Instructions for writing             a new howto-document">Write a How-to</a>
</div>
<div onclick="SwitchMenu('menu_1.3.5', 'skin/')" id="menu_1.3.5Title" class="menutitle">Committer notes</div>
<div id="menu_1.3.5" class="menuitemgroup">
<div class="menuitem">
<a href="zone.html" title="Notes for committers to manage forrest.zones.apache.org">Zone management</a>
</div>
<div class="menuitem">
<a href="procedures/release/How_to_release.html" title="Instructions on preparing and creating a new Forrest release.">How to release</a>
</div>
<div class="menuitem">
<a href="procedures/How_to_publish_docs.html" title="Instructions on publishing the Forrest             Website">Publishing Forrest documentation</a>
</div>
</div>
</div>
<div onclick="SwitchMenu('menu_1.4', 'skin/')" id="menu_1.4Title" class="menutitle">Proposals</div>
<div id="menu_1.4" class="menuitemgroup">
<div class="menuitem">
<a href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
</div>
</div>
<div id="credit"></div>
<div id="roundbottom">
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
<!--+
  |alternative credits
  +-->
<div id="credit2">
<a href="http://apachecon.com/2007/EU/"><img border="0" title="ApacheCon Europe 2007" alt="ApacheCon Europe 2007 - logo" src="http://apache.org/ads/ApacheCon/2007-europe-125x125.png" style="width: 125px;height: 125px;"></a><a href="http://people.apache.org/calendar.html#200711"><img border="0" title="ApacheCon US 2007" alt="ApacheCon US 2007 - logo" src="http://apache.org/ads/ApacheCon/2007-usa-125x125.png" style="width: 125px;height: 125px;"></a>
</div>
</div>
<!--+
    |end Menu
    +-->
<!--+
    |start content
    +-->
<div id="content">
<div title="Portable Document Format" class="pdflink">
<a class="dida" href="issues.pdf"><img alt="PDF -icon" src="skin/images/pdfdoc.gif" class="skin"><br>
        PDF</a>
</div>
<div class="trail">Font size: 
	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
</div>
<h1>Apache Forrest issue tracker</h1>
<div id="minitoc-area">
<ul class="minitoc">
<li>
<a href="#intro">Introduction</a>
</li>
<li>
<a href="#guide">Guidelines and hints for reporting issues</a>
<ul class="minitoc">
<li>
<a href="#priority">Special fields: Priority (a.k.a. Severity)</a>
</li>
<li>
<a href="#urgency">Special fields: Urgency</a>
</li>
<li>
<a href="#permissions">Permissions</a>
</li>
</ul>
</li>
<li>
<a href="#filters">Some search filters</a>
</li>
</ul>
</div>
    
<a name="N1000D"></a><a name="intro"></a>
<h2 class="underlined_10">Introduction</h2>
<div class="section">
<p>
        The Apache Forrest uses an issue tracker call Jira. All of the project
        contributions should go there (not to the mailing list). This enables us
        to keep track of contributions and to classify and manage the issues.
      </p>
<p>
        
<a href="http://issues.apache.org/jira/browse/FOR">http://issues.apache.org/jira/browse/FOR</a>
        is the main entry point which provides access to enter, view, search,
        and add additional comments to issues. There are some additional search
        <a href="#filters">filters</a> provided below.
      </p>
<p>
        You need to set up an account there before you can create new issues or
        add comments to existing issues. Anyone can register as a user and
        report issues. See <a href="#guide">guidelines</a> below.
      </p>
<p>
        Note that the issue tracker is not a discussion or user help forum.
        Please discuss issues about using Forrest on the user or dev mailing
        list.
      </p>
</div>
    
<a name="N1002C"></a><a name="guide"></a>
<h2 class="underlined_10">Guidelines and hints for reporting issues</h2>
<div class="section">
<ul>
        
<li>Ensure that an issue does not already exist.</li>
        
<li>Use Jira's powerful "Find Issues" ability. Set the Project and
        Status fields. See the Help about boolean queries in the Query field.
      </li>
        
<li>Follow the prompts below each entry field.</li>
        
<li>If you don't know the answer to a particular question, then
        leave the field blank.</li>
        
<li>Add a concise initial Description, then add more Comments later to
        further describe the issue.</li>
        
<li>Other people will follow up and enhance your description and
        classifications.</li>
        
<li>If details about your computing environment are relevant
        (e.g. Java version or operating system) then add them to a Comment.</li>
        
<li>If you are going to also add a patch, then select "Patch available".
        (Reporters of issues can add this later via "Edit issue".)
        Follow the instructions about "Grant license" and ensure that you are
        able to do so.</li>
      
</ul>
<a name="N1004D"></a><a name="priority"></a>
<h3 class="underlined_5">Special fields: Priority (a.k.a. Severity)</h3>
<p>
          The Priority is the severity according to the issue reporter. This
          will be a guideline to the development team to identify the most
          urgent issues. It is not a guarantee that a Critical issue will be
          resolved before a Major issue.
        </p>
<p>
          Follow the Jira help icon to see the definition of the options.
        </p>
<a name="N1005A"></a><a name="urgency"></a>
<h3 class="underlined_5">Special fields: Urgency</h3>
<p>
          The project team will classify this according to their urgency. The
          aim is to be able to see at a glance which issues should be attended
          to, so that developers can operate efficiently and so that the product
          can be released as soon as possible. Some issues hinder the project,
          so need to be identified.
        </p>
<div class="fixme">
<div class="label">Fixme (open)</div>
<div class="content">
          Not sure about the project's use of the "Urgency" field. See issue
          <a href="http://issues.apache.org/jira/browse/FOR-853">FOR-853</a>
        
</div>
</div>
<p>
          We use the following definition of the options.
        </p>
<ul>
          
<li>
          None: The default. Not yet classified.
        </li>
          
<li>
          Blocker: Prevents other developers from working; or critical issue with functionality;
          or holds up the implementation of other functionality.
          Cannot release until it is fixed. Will be fixed ASAP.
        </li>
          
<li>
          Urgent: Is a key new feature; or affects many users. Will be fixed before the next
          release.
        </li>
          
<li>
          Normal: If this issue scratches the itch of any particular developer, then
          they should help to solve it and provide a patch.
        </li>
          
<li>
          Low: If this issue bothers you, then fix it because it is not a high priority
          for the project.
        </li>
        
</ul>
<a name="N10081"></a><a name="permissions"></a>
<h3 class="underlined_5">Permissions</h3>
<ul>
          
<li>
          Anyone: Browse, Find, View.
        </li>
          
<li>
          jira-users: People who have registered as a user of the ASF Jira.
          Create, Edit, Comment, Attach, Vote, Watch.
          The reporter can also Close.
        </li>
          
<li>
          forrest-developers: People who are Forrest committers.
          Resolve, Close, Delete issues, Delete coments, Link, Assign, Schedule Fix Version, Administer Project.
        </li>
          
<li>
          Some committers are global adminstrators: Edit user details, Add users to groups, Configure.
        </li>
        
</ul>
</div>
    
<a name="N10098"></a><a name="filters"></a>
<h2 class="underlined_10">Some search filters</h2>
<div class="section">
<p>
        Various general searches are available from the
        <a href="http://issues.apache.org/jira/browse/FOR">front page</a>, e.g.
        "open issues classified by component", or "Added recently". The
        following are some special filters.
      </p>
<ul>
        
<li>
<a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12310472">FOR-open-with-patch</a>
        - Committers need to visit this regularly and deal with the patches.
      </li>
        
<li>
<a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12310820">FOR-roadmap-dev</a>
        - Open issues that are scheduled to be investigated.
      </li>
        
<li>
<a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12310476">FOR-unresolved-with-attachment</a>
        - Issues that have demonstrations of problems, but no solution or patch.
        Of course it will include FOR-open-with-patch.
        (Note that this filter searches for the string "attach" so will not find all.)
      </li>
        
<li>
<a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12310043">FOR-unscheduled</a>
        - Issues that have not yet been scheduled to be fixed for a certain version.
      </li>
      
</ul>
<div class="fixme">
<div class="label">Fixme (open)</div>
<div class="content">
        Not sure about the project's use of the "Urgency" field.
      </div>
</div>
<ul>
        
<li>
<a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12310473">FOR-urgency-blocker</a>
        - Issues that the project considers to be Blockers.
      </li>
        
<li>
<a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12310475">FOR-urgency-urgent</a>
        - Issues that the project considers to be Urgent.
      </li>
      
</ul>
</div>
  
</div>
<!--+
    |end content
    +-->
<div class="clearboth">&nbsp;</div>
</div>
<div id="footer">
<!--+
    |start bottomstrip
    +-->
<div class="lastmodified">
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
//  --></script>
</div>
<div class="copyright">
        Copyright &copy;
         2002-2007 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
</div>
<!--+
    |end bottomstrip
    +-->
</div>
</body>
</html>
