Currently, the following classes are defined for tracking issues registered in JIRA:
A brief description for each defined class is provided below each heading.
This classification is more suitable for items in thier early stage of formation not yet mature enough to be labelled as a 'Task' or 'New Feature'.
It provides a bucket where thoughts and ideas from interested parties can be recorded as the discussion and exchange of ideas progresses.
For instance, if we were contemplating moving the Flume NG source code to a new version control system; before classifying it as a 'Task', a 'Brainstorming' issue could be created to track thoughts from committers, users and PMC members.
Once a resolution is made, then a Task can be created with all the details defined during the brainstorming exercise.
This is a defect in the source code.
Logic errors, out-of-memory errors, memory leaks, run-time errors, failure of the product to perform as expected and any other unexpected or unwanted behavior can be registered as Bugs.
Missing, incorrect or insufficient documentation on wiki pages, api javadocs and guides should be classified as Documentation issues rather than Bugs.
This is a Task that relates directly to the upgrade of a dependency to a more recent or newer version.
For instance, upgrading the version of elasticsearch used by the elasticsearch sink from version 0.19.10 to 0.20.6 can be classified as a 'Dependency Upgrade'.
This includes but is not limited to providing information about:
- The inner workings of a feature or group of features within FLUME.
- How to configure components within FLUME.
- API level information on a package, class, interface, enum, annotation, method or method parameters.
- Tips and tricks
The documenation/information can be provided in the form of Javadocs (directly in the source code), on the FLUME wiki pages or by updating the FLUME user and developer guides.
This is an Agile software development terminology that describes a group of closely related user stories.
This is an improvement or enhancement to an existing feature within the product.
This is a new feature of the product that is yet to be developed.
For example, a new Source, Channel or Sink not yet in existence can be classified as a 'New Feature'.
New JIRA Project
This is the request for a new JIRA project to be set up.
These types of requests would typically be entered as infrastructure requests under INFRA rather than issues within the FLUME project.
A formal question. Initially added for the Legal JIRA. Questions should generally be sent to the mailing lists instead of opening them as JIRA issues.
For questions about how to use or configure Apache FLUME, such queries can be sent to the user mailing list (firstname.lastname@example.org)
For questions about API internals, patches and code reviews, such queries are more appropriate for the developer mailing list (email@example.com)
This is for an RTC request. A Review-Then-Commit request.
As part of the voting process, this is necessary when there is a need to execute a commit policy which requires that changes to the source code receive consensus approval in order to be committed to the version control system. Before opening such issues, there should be a discussion within the developer mailing list.
A user story is an agile software development terminology that comprises of one or more sentences that captures features or behaviors a developer or end user of the product expects or would like to see in the product.
Two or more user stories can be grouped together to create an epic.
Suitable Name Search
This classification can be used for a brainstorming exercise that is more specifically geared towards a search for a suitable name for an Apache product.
This is a task that needs to be done. For example, setting up a Jenkins job or pre-commit hooks for version control could qualify as a task.
This is a task that must be completed as an element of completing a larger and more complex task.
Sub task issues are useful for splitting up a parent issue into a number of smaller tasks, more-manageable units that can be assigned and tracked separately.
These are challenges made against the Sun Compatibility Test Suite
This can be used to track a new unit or integration test for FLUME.
This is an overarching type that is comprised of one or more sub-tasks.
This is used to track general wishlist items that could eventually be classified as new features or improvements for the product.