Classic computer science algorithms in Python
What is algos-py?
This package contains implementations of some classic computer science algorithms. My primary goal is to understand those algorithms and the best way to do that is to code them myself.
Along the way I practice test driven development (with pytest), continuous integration (with travis and appveyor), coverage tracking (with coveralls and codecov), version control (with git, github and gitlab), documentation (with sphinx and readthedocs) and a lot more.
How to test?
To run all of the unit-tests:
$ pytest -n 2
To run unit-tests for a specific module:
$ pytest ./tests/test_heap.py
To run all the unit-tests and produce a coverage report:
$ pytest -n 2 --cov=src
Where to find?
Secondary (mirror) repository:
$ python setup.py check --restructuredtext $ # change version in setup.py $ git add setup.py $ git commit -m "Bump version to 1.0.0" $ git tag v1.0.0 $ git push origin master && git push origin --tags $ git push gitlab master && git push gitlab --tags $ python setup.py bdist_wheel $ twine upload ./dist/algos_py-1.0.0-py3-none-any.whl