CosmiQ / solaris

CosmiQ Works Geospatial Machine Learning Analysis Toolkit
https://solaris.readthedocs.io
Apache License 2.0
411 stars 112 forks source link

[MAINT] Improve reporting of failed flake8 errors in test workflow #454

Open rbavery opened 2 years ago

rbavery commented 2 years ago

Maintenance request summary

When flake8 fails during the tox -e lint step, an unintuitive error message shows up in the action logs

tox -e lintroot@rave-desktop:/home/rave/solaris# tox -e lint
lint installed: flake8==4.0.1,mccabe==0.6.1,pycodestyle==2.8.0,pyflakes==2.4.0
lint run-test-pre: PYTHONHASHSEED='657686712'
lint run-test: commands[0] | flake8 .
./solaris/__init__.py:1:1: F401 '.data' imported but unused
./solaris/__init__.py:1:1: F401 '.utils' imported but unused
./solaris/__init__.py:1:1: F401 '.vector' imported but unused
./solaris/__init__.py:1:1: F401 '.tile' imported but unused
./solaris/tile/raster_tile.py:515:54: W291 trailing whitespace
5
ERROR: InvocationError for command /home/rave/solaris/.tox/lint/bin/flake8 . (exited with code 1)
_________________________________________________________________________________________________ summary __________________________________________________________________________________________________
ERROR:   lint: commands failed

apparently this is the intended behavior according to the tox and flake8 maintainer https://stackoverflow.com/questions/68743112/invocationerror-while-running-flake8-in-tox-ini

Task detail and notes

I think we can improve how flake8 errors are reported, but I'm not sure how.