Developer Guidelines

From SleuthKitWiki
Revision as of 21:48, 14 November 2008 by Wikiadmin (Talk | contribs)

Jump to: navigation, search

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.


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.