Skip to content
This repository was archived by the owner on Sep 28, 2020. It is now read-only.

Development

dzwarg edited this page Oct 27, 2011 · 4 revisions

Bugs & Support

Have you identified a bug in DistrictBuilder? Is the software not behaving as expected? Please proceed to the Issues tab to report the problem. Please see Reporting Etiquette below to assist the development team in resolving your issue as quickly as possible.

Reporting Etiquette

Please follow these simple steps when reporting bugs or software problems:

  • Please describe the problem in detail.
  • What action were you performing when you encountered the bug?
  • What was the result of your action that you were expecting?
  • What was the actual result of your action that you experienced?
  • Does this happen all the time, or is there a specific set of steps required to reproduce the problem?

Development Guidelines

Requirements

In order to develop new features for DistrictBuilder, you will need some additional software:

  1. Git: Github uses git to store the revisions of the DistrictBuilder source code, and you will need this to check out the code to work on it.
  2. Python: DistrictBuilder is written in Python and JavaScript, and you will need a current version of Python installed to run the application.
  3. Apache: While DistrictBuilder does not require Apache explicitly, and can run on any webserver that supports wsgi, there are Apache configuration files in the DistrictBuilder repository to help you get the application up and running quickly.
  4. Tomcat6: As with Apache, DistrictBuilder does not require Tomcat explicitly, and can run in any servlet container supported by Geoserver.

Please review the INSTALL doc for specific package requirements as well.

Contributing

Interesting in developing DistrictBuilder? Welcome! We'd love to have you. Here are a few tips when writing new code or patches to DistrictBuilder:

  • When you start a task or issue, perform a git pull before starting work. This will ensure that you are working with the most recent version of the master branch.
  • When working on larger tasks, create a local branch for your task: git checkout -b myfeature master, commit your changes to that branch, then merge the feature back into the master branch when you are done with git branch master, git fetch, git rebase master, then git merge myfeature.
  • If you have a github.com account, you can submit pull requests through the github.com Pull Request feature. You may also attach the patch (result of git diff) to the issue on github.com that you were working on.

The objective of the above guidelines is to keep the master branch on github.com a working and bug-free application, no matter the state of any certain developer's commits.

Tools

DistrictBuilder uses an IRC bot and IRC service hooks to inform developers and users of changes to the codebase during development. The IRC bot code lives in the following gist:

https://gist.github.com/1302111

This IRC bot connects to a local git repository, and performs all git updates and inquiries of the git repository locally. Any wiki, issue, or source inquiries look at the github pages to see if those items exist. This bot is running on a private server, and joins the channel #districtbuilder on irc.freenode.net.

Clone this wiki locally