Skip to content
This repository has been archived by the owner on Oct 19, 2021. It is now read-only.

Support and Enhancements

PhlexPlexico edited this page Oct 15, 2019 · 3 revisions

Requesting Enhancements

Fairly simple, just follow the outline for enhancements and feature requests when creating an issue. GitHub will automagically tag the item as a request, and will be evaluated. If you have a compelling reason as to why it should be added in (one that is best for everyone to have, not just yourself), please provide it. This will help sort features based on priority.

Implementing enhancements

For most enhancements where data is required to be stored, a few different modifications to the application will be needed. These steps have been outlined in an issue before:

  • Create a new migration script for the database via ./manage.py db migrate and work from there. If you look here you can see all the different modifications that are made to the database. After looking at some of these, it should be sufficient enough to show how to create new tables/columns/etc in the database.
  • Update the models.py to include a new model (if a table is created), or a new field within a model (whichever table you append to. If you append to the user table in the database, the class User will get an updated value in it) which takes whatever is needed in the database (match id, map id, paused, timestamp). If there's any foreign key relations, make sure these are added in as well, they can be seen in the model.
  • Update the main logic in the web application. These are all found in the .py files. Then update the templates if you are adding new fields. These are found within the .html files. Last but not least, run tests. If you're making changes to the core logic, you must make changes to the tests in order for it to pass CI. There are a few things you need to do if you're adding in new values to baseline, or modifying baseline functionality.

Updating tests

If you're updating any of the main classes (Match, Team, User, Server, etc.) you must update the get5 tests to include your new columns, or the tests will fail. After you make the changes in the main test file, you will have to go to whichever test file that you made changes to in the respective _test.py file. Once tests pass locally, feel free to create a merge request/pull request and it will be reviewed.

Reporting Bugs

When reporting bugs, please give the exact details to what is happening. If at all possible, please provide a log file, especially if it's a database issue. I cannot debug your installation if you give me nothing to work with.