Developer policies

From Gramps
Revision as of 05:16, 10 December 2009 by Pez4brian (talk | contribs) (Coding Policies)
Jump to: navigation, search

This document collects the different policies the GRAMPS developer community has adopted.

Coding Policies


GRAMPS is a GPLv2 application with possibility to use a later version of the GPL (GPLv3). There are no plans at the moment to move to GPLv3 and drop GPLv2. See Project License for details.

Coding style

GRAMPS follows PEP 8. More info and general policy: Programming Guidelines. Starting from 3.2 minimal pylint scores will probably be enforced.

Concerning the visual elements, a general UI style is agreed upon: UI Style

Acceptable changes

You should follow the roadmap set out for the next release. Only minor features or new reports/gramplets/... can still be added to the roadmap after it has been made official. Add your changes to the roadmap (on this wiki and in the bug tracker) so others are notified what you work on. Seek approval for your changes via the devel mailing list.

Commit Policies


Read Committing Policies

Becoming an official developer

The road to become an official developer is as follows:

  • Fix bug issues on the bug tracker and participate in the devel mailing list.
  • Accept the guidance from existing developers. If you do not agree with them, you need to convince them. To do that consider first to code what is asked pointing out the weakness afterward, i.e let the code speak for you.
  • Take up a feature request after assuring yourself (eg via the devel mailing list) the feature will probably be accepted by the developers. Let your code be reviewed.
  • Once you come to the conclusion your code needs little change before commit, ask one of the admins (Benny, Brian) to add your sourceforge id to the list of developers. If you did not have contact with the admins yet, ask one of the other developers to vouch for you.
  • Even after you obtained commit rights, consider a review of your code by other developers using the bug tracker (send reminder) or the devel mailing list.