Development
For users who would like to actively develop with galois
, these sections may prove helpful.
Install the dev
dependencies
The development dependencies include packages for linting and testing the package. These dependencies are stored
in requirements-dev.txt
.
1pylint
2pytest
3pytest-cov
4pytest-benchmark
Install the dev
dependencies.
$ python3 -m pip install -r requirements-dev.txt
Lint the package
Linting is done with pylint. The linter can be run from the command line as follows. There is also a
.vscode/
folder with appropriate settings, if using VS Code.
$ python3 -m pylint --rcfile=setup.cfg galois/
Run the unit tests
Unit testing is done with pytest. The tests themselves are stored in tests/
. We utilize
test vectors stored in tests/data/
. The tests can be run from the command line as follows. There is also a .vscode/
folder
with appropriate settings, if using VS Code.
$ python3 -m pytest tests/
Build the documentation
The documentation is generated with Sphinx. The documentation dependencies are
stored in docs/requirements.txt
.
1sphinx>=3
2recommonmark>=0.5
3sphinx_rtd_theme>=0.5
4readthedocs-sphinx-ext>=1.1
5ipykernel
6pandoc
7numpy
Install the documentation dependencies.
$ python3 -m pip install -r docs/requirements.txt
Build the HTML documentation. The index page will be located at docs/build/index.html
.
$ sphinx-build -b html -v docs/ docs/build/