zillow / luminaire

Luminaire is a python package that provides ML driven solutions for monitoring time series data.
https://zillow.github.io/luminaire
Apache License 2.0
764 stars 59 forks source link

Add test runner and linter support for setup.py #77

Closed Aristarhys closed 3 years ago

Aristarhys commented 3 years ago

I think it will be worth to have local means of running tests/lint even if you have CI perfectly working (python setup.py test, python setup.py flake8) I used config from https://github.com/zillow/luminaire/blob/master/.github/workflows/python-app.yml#L42 for flake Flake gonna nuke the integration at some point, but i guess it's ok for now (we can use last version without this warning - it's not that old)

https://gitlab.com/pycqa/flake8/-/issues/544

Aristarhys commented 3 years ago

@snazzyfox @shahsmit14 updated

shahsmit14 commented 3 years ago

@Aristarhys When testing locally.

  1. I was able to test the python setup.py test which is working and great addition.

  2. For the python setup.py flake8 its returns 0

    $ python setup.py flake8
    running flake8
    0

    Is this what you were calling out that it might be not work? Or is there some step I was missing or something additional needs to be added? Assuming you were able to test with flake8.

Aristarhys commented 3 years ago

@shahsmit14 count = True add problems count as first line in the flake output - e.g if you done single syntax error it will be 1. Because there is no problems - no more output will be shown and you will be stuck with just 0 I guess this flag was used as mean to force ci fail on first step but it was actually fixed differently (https://github.com/zillow/luminaire/pull/79) so now it can be dropped as i even test this change properly - https://github.com/zillow/luminaire/runs/1974082747?check_suite_focus=true The config corresponds to https://github.com/zillow/luminaire/blob/master/.github/workflows/python-app.yml#L42 i.e "fail' step on ci, aimed on few critical issues not all of them. It can be change to not output all issues and be more verbose without issues count at first line Something like

flake8 . --max-complexity=10 --max-line-length=127 --statistics --show-source

but in config form