-
Notifications
You must be signed in to change notification settings - Fork 306
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
Switch GitHub workflows used in CI from tox environments to nox sessions #2685
Conversation
In the past, I've occasionally updated the OS or version of Python in one place, but not the other. By generating names from the matrix, it'll make it more likely that there will be self-consistency. (Also: DRY principle)
I wasn't able to get it to work.
The purpose of this commit is primarily to test if the labeler GitHub Action is working.
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.
There are 3 checks waiting, apart from that looks good 👍
The three checks that are waiting are because I changed the names of the tests in the GitHub Action, but I haven't yet gone into the repo settings to change the name of which tests are required since that would break all other PRs. I'll do that right after merging. Thank you as always for the reviews! |
Most of our GitHub workflows and heretofore been based on tox environments. However, the configuration files for tox is in an INI format, which I've perpetually had trouble understanding and maintaining. In contrast, nox is a test runner that is directly inspired by tox, with the exception that nox configuration files are written in Python.
I've spent perhaps a tenth as much time working with nox than I have with tox, and I already have a much better understanding of working with nox. For a Python project, it makes a lot of sense to configure things in Python when possible. Switching to nox will move us half of the way from removing INI files from our configuration. (The remaining files is
mypy.ini
, though the configuration for that will eventually go inpyproject.toml
.)In the recent past, we've had a few PRs that switched tox environments to nox sessions (#2654, #2664, #2656, #2681, #2683). This PR switches several of our GitHub workflows over from using tox environments to using nox sessions.
Closes #1734 at long last!
Important
Some of the checks are showing as "Expected" without being performed because I changed the names of some checks in this pull request without changing the names of required checks in the repository settings. So, it's expected that the "Expected" checks should be unexpected. 😅