-
Notifications
You must be signed in to change notification settings - Fork 0
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
Split dependencies based on required use #30
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Packaging is done in CI, and doesn't require the makefile.
Before this change, these workflows didn't track all of the important files which contain python requirements.
meshy
force-pushed
the
makefile-and-requirements
branch
from
May 9, 2024 11:32
4e70dee
to
6e00c65
Compare
meshy
commented
May 9, 2024
Before this change, we were using the same requirements file for local development as we were for running pytest in tox. This has been causing issues because of the different needs of the different environments. This change separates the requirements.
Before this change, we installed a lot of requirements that we didn't need when we did a release. This change creates a new more limited requirements file, and uses it only for releasing.
Before this change, we installed tox directly in CI, but didn't specify a version, or pin transitive dependencies.
We didn't install these before because they clashed with the requirements of running Pytest in Tox. This caused issues where developers and scripts expected these to be installed. Now that we have isolated the dependencies of pytest-in-tox, we can install these for local development, and in CI when running linters. This causes the Mypy linter to begin failing. It reveals a previously-hidden bug that I will address separately.
These were getting hard to read and differentiate.
Before now, these instructions were unclear and faulty. This change fixes the pytest instructions, and removes the instructions for running tox in isolation.
meshy
force-pushed
the
makefile-and-requirements
branch
from
May 9, 2024 11:42
6e00c65
to
c81e240
Compare
meshy
commented
May 9, 2024
mypy-ratchet.json
Outdated
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.
I'll address these issues in another PR. It's great that we're seeing the ratchet in action now!
Before this change, we were seeing a warning when these lines were run: WARNING: --strip-extras is becoming the default in version 8.0.0. To silence this warning, either use --strip-extras to opt into the new default or use --no-strip-extras to retain the existing behavior.
meshy
force-pushed
the
makefile-and-requirements
branch
from
May 9, 2024 11:59
c81e240
to
46f3a1e
Compare
samueljsb
approved these changes
May 9, 2024
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We previously had one set of dependencies which we used for inside tox and outside of it.
This caused a bit of a muddle. Inside tox we couldn't have Django or Psycopg installed (to avoid clashes with the build matrix) and outside of it we needed them so that the tests and linters actually worked.
This splits up the dependencies based on their use.
In the process, it gets Mypy running again in CI, which it seems was broken for some time. I've updated the type ratchet with the now-discovered errors, and will address them separately. This is a good example of the type ratchet in action!
CI caching is fixed too, which speeds up tox quite a bit.