CI: Don't use a venv for either GitHub Actions or CircleCI #7102
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.
Upon additional testing, it was seen that there needed to be more done in each CI run in order to make sure that a cache of the venv stayed at the most recent versions of our sub-dependencies without exceeding the versions required for our explicit requirements. The extra steps are required because
pip
doesn't update sub-dependencies of explicitly specified dependencies, unless required. Doing the extra steps cost enough time such that using a venv is, at best, neutral with respect to the amount of time required for installing all of the requirements from cached copies of the package downloads. In multiple cases, using the cached venv actually took longer. The entire point of using a venv in our CI was that fully caching the installed dependencies resulted in a savings in the run time for the CI tests. Without there being a time savings, there isn't a point to using a venv.So, this PR removes the use of venv from both GitHub Actions and CircleCI. It implements/re-implements caching for the main pip download cache.
Resolves #7100