Replace Travis CI with GitHub Actions
First of all, thanks for Feedgenerator! We're using it to provide the feed for the PEPs website at https://peps.python.org!
Replaces and closes https://github.com/lkiesow/python-feedgen/pull/103. Replaces and closes https://github.com/lkiesow/python-feedgen/pull/113.
Travis CI has stopped working for this repo, and their new plan makes it harder to test open-source projects.
Let's use GitHub Actions instead. Benefits include:
- Free for open source
- 20 parallel jobs instead of 5 on Travis
- Can test on macOS and Windows in addition to Ubuntu
Coverage is uploaded to Codecov instead of Coveralls, as it's easier to integrate with GHA.
This PR also bumps the versions in requirements.txt, needed to support Python 3.10.
I've only tested on Python 3.7+, the versions supported by the core Python team (https://endoflife.date/python). Although some older Python versions are available on the CI, I've made another PR (https://github.com/lkiesow/python-feedgen/pull/117) to drop support for those old ones too, and modernise the syntax used here.
This PR also fixes some new Flake8 errors.
Demo:
- https://github.com/hugovk/python-feedgen/actions/runs/2480472182
- https://codecov.io/gh/hugovk/python-feedgen/tree/405d0e20e1e2678d3b5dfdbcf542418faf1c99e0