We keep track of bugs, feature requests and development discussions using Github issues: See all our current issues for collaboration opportunities.
To get started, you will need to have pip, git, PostgreSQL and brew installed. Next, you can follow the steps in our README.
If you want to contribute to the code, follow these steps:
Even though this algorithm is not being used, there are still a couple opportunities for you to improve the initial ‘segments’ algorithm but they are not restricted to the list below.
There is documentation available on this version of the algorithm here or on our website. So please go through it and make sure you have a basic understanding of how everything works.
If you add any constant parameters that might impact the algorithm, please add them in the globals.py file. Also, if you introduce new locks, they should also be included in the same file. Make sure that once you start playing around with those locks, you do not introduce any concurrency issues because they are hard to spot.
All of the database querying is done by the db_queries.py file. So make sure that it stays this way to maintain simplicity.
The third iteration of the algorithm is the one currently being used. We have written how it works in detail in a separate page. We have a list of bugs and enhancements that you can work on on our Github issues page.
If you have found an issue, please go to our Github issues page. First, check if someone else has already found the bug and created an issue. If not, create a new one and try to be as descriptive as possible—include how somebody else might be able to recreate the issue.
Important: Even if you want to fix the bug yourself, it is still important that you go through the steps mentioned so people know that this bug has been discovered and somebody is working on it.