Contributing code to Toga-Chart¶
If you experience problems with Toga-Chart, log them on GitHub. If you want to contribute code, please fork the code and submit a pull request.
Setting up your development environment¶
The recommended way of setting up your development environment for Toga-Chart is to use a virtual environment, install the required dependencies and start coding:
$ git clone https://github.com/beeware/toga-chart.git
$ cd toga-chart
$ python3 -m venv venv
$ . venv/bin/activate
$ git clone https://github.com/beeware/toga-chart.git
$ cd toga-chart
$ python3 -m venv venv
$ . venv/bin/activate
C:\...>git clone https://github.com/beeware/toga-chart.git
C:\...>cd toga-chart
C:\...>py -m venv venv
C:\...>venv\Scripts\activate
To install all the development version of Toga-Chart, along with all it’s requirements, run the following commands within your virtual environment:
$ (venv) pip install -e .
$ (venv) pip install -e .
C:\...>pip install -e .
Now you are ready to start hacking! Have fun!
Toga-Chart uses PyTest for its own test suite. It uses tox to manage the testing process. To set up a testing environment and run the full test suite:
$ (venv) pip install tox
$ (venv) tox
$ (venv) pip install tox
$ (venv) tox
C:\...>pip install tox
C:\...>tox
By default this will run the test suite multiple times, once on each Python version supported by Toga-Chart, as well as running some pre-commit checks of code style and validity. This can take a while, so if you want to speed up the process while developing, you can run the tests on one Python version only:
(venv) $ tox -e py
(venv) $ tox -e py
C:\...>tox -e py
Or, to run using a specific version of Python:
(venv) $ tox -e py
(venv) $ tox -e py
C:\...>tox -e py
substituting the version number that you want to target. You can also specify one of the pre-commit checks flake8, docs or package to check code formatting, documentation syntax and packaging metadata, respectively.