-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Run fawltydeps against itself in CI #348
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for looking into this. I like the direction of these changes, and they get the job done. 👍🏻
There's one comment below, that I'd like you to reconsider before we merge this.
Another thing to think about (either in this PR or a future PR) is to not only run this FawltyDeps self-check in GitHub CI, but also make it available in our dev shell as a Nox action. This involves adding a new self_test
function to noxfile.py
, and changing .github/workflows/tests.yaml
to instead:
run: poetry run nox --no-venv --no-install --non-interactive -s self_test -- -vv
The advantage of this (and the reason we've done this for the other CI actions) is to make it easy to run the CI actions locally. This helps make CI failures less common (since we can run the same tests locally before we push) and it also make CI failures easier to debug (because we can easily run the same command localy: nox -s self_test
).
Thanks for the review @jherland ! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great! Only one thing remaining, that I only realized while reading this latest version, so please don't feel bad for not catching it! 😅
Co-authored-by: Johan Herland <[email protected]>
Closed #123
This PR adds a functionality of running fawltydeps against itself in the GitHub Actions CI.
While running fawltydeps, it reads in the python environment from
~/.cache/pypoetry/virtualenvs
and ignores format related dependencies (black
,codespell
,colorama
,hypothesis
,mypy
,nox
,pylint
,pytest
, andtypes-setuptools
).Also, this PR declares
setuptools
as a dependency sincepkg_resources
has been imported to the main code.