This commit essentially adds back tests to our CI pipeline. They were
previously dropped due to Travis pricing policy change.
This workflow utilizes a few interesting projects to make this action
easier to maintain such as the codecov github action
and the tox-gh-actions project
(https://github.com/ymyzk/tox-gh-actions)
This commit uses codecov instead of coveralls because using coveralls
directly inside GH-actions is buggy and the official coveralls action
only supports lcov reports which we can't seem to be able to generate at
the moment. For more information see the pull request that introduced
this commit
Review dog is an incredible project that makes linting and formatting
review a breeze by commenting inline what is wrong in a pull request.
This makes the review process easier for the maintainer and also
provides a clearer feedback to the contributor
Bump tests version and supported versions in setup.py
stdlib: update packages for python 3.9
By utilizing the packages listed in
https://github.com/jackmaney/python-stdlib-list
for python 3.8 and 3.9, we were able to drop all stdlib packages that
existed solely in python 2 and add the missing stdlib python 3 packages
Currently, flake8 is accessible via `make lint`, but it does not run
along side the rest of the test suite. This change adds flake8 checks to
the tox.ini file to enable linting as a routine part of running tests.
Additionally, drop the changes made in #100.
By using tox instead of the default Travis-CI Python environments, we
ensure that we have a single entrypoint to testing both locally and in
CI. This reduces redundant code and makes it clear when test
environments don't match up on different platforms.
[tox-travis](https://tox-travis.readthedocs.io/en/stable/) is introduced
here to automatically run tox jobs under the proper Travis-CI
environments. Additionally, the coveralls step is moved to a [build
stage](https://docs.travis-ci.com/user/build-stages) to run once after
all other Travis-CI tests complete.