Closed stefanor closed 7 years ago
Is it possible to install requirements in such a way where a package is not removed and end up with a venv with unmeet requirements?
Or to phrase that another way, doesn't the check for "removed" cover all cases the following "check_requirements" would catch?
Amenable to adding some coverage? ... something like: https://github.com/yola/yodeploy/compare/doug/capture-venv-fails?expand=1
It was writing ☝️ that made me think of the first question. I'm unable to cobble together a testcase where a venv passes the first check but not the second.
Is it possible to install requirements in such a way where a package is not removed and end up with a venv with unmeet requirements?
No, but I don't really trust scraping output from installation. So I like having the double-check at the end.
And yes, those tests look great, I'm going to steal them.
:sparkles: No lint errors found. :sparkles:
Code review is so much more fun when changes are committed on-top of eachother's work vs leaving comments on the pull.
I really enjoyed reading the changes @stefanor made to my tests.
Not going to merge this until everything at Yola is ready for it.
We previously just passed easy_install each requirement, in order, and didn't pay any attention to what it did. This lead to a lot of breakage. If a library was installed, as a dependency of another one, and was then listed again in requirements.txt, we'd happily overwrite the existing install, possibly violating a version constraint.
To avoid this in future:
This breaks many of our apps. Arguably, they were already broken, we just hadn't noticed. I'm trying to fix the majority of them, before we land this.