Difference between revisions of "Developer Guidelines"

From SleuthKitWiki
Jump to: navigation, search
(Added links to trackers.)
(moved trackers to their own page.)
Line 4: Line 4:
 
The [http://lists.sourceforge.net/lists/listinfo/sleuthkit-developers Sleuth Kit Developers] e-mail list is the official communication forum for TSK and Autopsy development. Subscribe to participate in the development process.  
 
The [http://lists.sourceforge.net/lists/listinfo/sleuthkit-developers Sleuth Kit Developers] e-mail list is the official communication forum for TSK and Autopsy development. Subscribe to participate in the development process.  
  
There are also trackers on SourceForge to keep track of bugs, patches, and feature requests.  
+
There are also [[trackers]] on SourceForge to keep track of bugs and feature requests.  
* [http://sourceforge.net/tracker2/?group_id=55685&atid=477889 Sleuth Kit Bug Tracker]
+
* [http://sourceforge.net/tracker2/?group_id=55685&atid=477891 Sleuth Kit Patch Tracker]
+
* [http://sourceforge.net/tracker2/?group_id=55685&atid=477892 Sleuth Kit Feature Request Tracker]
+
* [http://sourceforge.net/tracker2/?group_id=55687&atid=477897 Autopsy Bug Tracker]
+
* [http://sourceforge.net/tracker2/?group_id=55687&atid=477899 Autopsy Patch Tracker]
+
* [http://sourceforge.net/tracker2/?group_id=55687&atid=477900 Autopsy Feature Request Tracker]
+
  
 
= Submitting Patches / Code =
 
= Submitting Patches / Code =
To contribute code or patches to the project, create an artifact in the respective patch tracker (listed above) with the new code or a diff. If the patch is a bug fix for a bug in the bug tracker, be sure to reference the bug number.  Next, send e-mail to the [http://lists.sourceforge.net/lists/listinfo/sleuthkit-developers Sleuth Kit Developers] list.  
+
Code that is contributed to the project should have a corresponding bug or feature request entry in one of the project [[trackers]]. If you are adding a new feature to the project, first create an artifact for it that describes the features.
 +
 
 +
Attach the code contribution to the tracker artifact in the form of new source code or a diff. Next, send e-mail to the [http://lists.sourceforge.net/lists/listinfo/sleuthkit-developers Sleuth Kit Developers] list.  
  
 
Code submissions should follow the error handling, Unicode, and other conventions of the specific tool.  A more detailed list of tool-specific guidelines is being developed.
 
Code submissions should follow the error handling, Unicode, and other conventions of the specific tool.  A more detailed list of tool-specific guidelines is being developed.

Revision as of 21:48, 14 November 2008

This page contains the guidelines for developing code for The Sleuth Kit and Autopsy. These guidelines are not about the technical designs of the tools, rather they are about how code is contributed and merged in. Note that this document is a work in progress as the process is officially defined.

Communications

The Sleuth Kit Developers e-mail list is the official communication forum for TSK and Autopsy development. Subscribe to participate in the development process.

There are also trackers on SourceForge to keep track of bugs and feature requests.

Submitting Patches / Code

Code that is contributed to the project should have a corresponding bug or feature request entry in one of the project trackers. If you are adding a new feature to the project, first create an artifact for it that describes the features.

Attach the code contribution to the tracker artifact in the form of new source code or a diff. Next, send e-mail to the Sleuth Kit Developers list.

Code submissions should follow the error handling, Unicode, and other conventions of the specific tool. A more detailed list of tool-specific guidelines is being developed.

To make diffs of the changes, run the following command on a Unix system (or from cygwin on Windows):

% diff -Nru sleuthkit-old sleuthkit-new > changes.patch

The patches and code contributions will be reviewed and incorporated into the main development if they are approved. It is also helpful to submit test images and test cases that can be used to test the new code.

Code Acceptance

Currently, these tools have a Benevolent Dictator model for incorporating code into the official distribution. As more developers get involved, this can change. Acceptance is based on code quality and completeness.