-
-
Notifications
You must be signed in to change notification settings - Fork 747
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
Improve test failure directions #4902
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.
Love this!
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 find
$(VIRTUALENV_DIR)/bin/pip install --upgrade "pip>=19.3.1" | ||
# setuptools >= 41.0.1 is required for packs.install in dev envs | ||
# setuptools >= 42 is required so setup.py install respects dependencies' python_requires | ||
$(VIRTUALENV_DIR)/bin/pip install --upgrade "setuptools>=42" |
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.
It looks like with this diff we just relaxed again pinned versions set before
pip==20.0.2
setuptools==44.1.0
Updating dependencies is not an obvious, straightforward, or documented process, so many people have tried to simply update the root
requirements.txt
files, or therequirements.txt
in one of our subpackages (eg: runners and st2* packages). While we do have headers on all of those files instructing people how to do it properly, it's very easy to miss them.To combat this, I have previously added a step in the
ci-checks
that runs themake requirements
target and uses git to check if there were any changes.However, when this causes test failures in Travis CI, the error output isn't very helpful. Furthermore, running
make requirements
takes a long time to complete.This PR splits the
requirements
target intorequirements
and.requirements
and uses targets to maintain reverse compatibility. Additionally, it gives very obvious directions for how to update versions properly, and how to check again before pushing additional changes.Additionally, since I didn't realize that we had a similar situation with
scripts/dist_utils.py
and didn't update those for #4895, this PR adds a similar check for the sdist-requirements, with similar instructions, and a similar make target.