bndr / pipreqs

pipreqs - Generate pip requirements.txt file based on imports of any project. Looking for maintainers to move this project forward.
Apache License 2.0
6.38k stars 388 forks source link

Drop Travis as our CI provider #272

Closed alan-barzilay closed 3 years ago

alan-barzilay commented 3 years ago

Since travis changed its pricing policy it has become more limited in what we can accomplish with it. It now uses a limited credit model for open source projects which besides being cumbersome puts the project in a precarious position where we may be unable to run tests if we dont have any credits left.

For this reason we will be moving to github actions since they seem to be the best alternative at the moment

I also dropped flake8 from our tox tests in favor of reviewdog 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

This new test workflow utilizes a few interesting projects to make this action easier to maintain such as the coveralls github action and the tox-gh-actions project

This PR, as mentioned in #252, is necessary to get back our CI pipeline and to confidently make a new pipreqs release

alan-barzilay commented 3 years ago

just a disclaimer that this is a work in progress, testing this CI is complicated because there is no way (afaik) of testing it locally.

I'm currently working on de-duplicating checks and investigating why some tests are being cancelled

codecov-commenter commented 3 years ago

Codecov Report

:exclamation: No coverage uploaded for pull request base (next@c8ab8cb). Click here to learn what that means. The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##             next     #272   +/-   ##
=======================================
  Coverage        ?   87.50%           
=======================================
  Files           ?        2           
  Lines           ?      256           
  Branches        ?        0           
=======================================
  Hits            ?      224           
  Misses          ?       32           
  Partials        ?        0           

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update c8ab8cb...bc8121e. Read the comment docs.

alan-barzilay commented 3 years ago

ok, so I cant find a way to keep using coveralls which sucks because we loose our coverage history. Uploading to coveralls without using the github action is really buggy, however the github action only supports reports in lcov format which i couldn't manage to create. See https://github.com/coverallsapp/github-action/issues/30

After 3 hours trying I gave up and tried codecov which just worked in 5 minutes. So unless someone finds a way to keep using coveralls, we will be using codecov from now on

alan-barzilay commented 3 years ago

I tested this new CI with a dummy PR and everything seems to be working as expected! https://github.com/bndr/pipreqs/pull/273 This PR should be ready to be merged but I will wait a while in case anyone wants to give some feedback on this.

alan-barzilay commented 3 years ago

also, our tests do not respect flake8, changing CI made this evident. I will be opening an issue about this