It would potentially be interesting to make a change in tox so that it runs Py2 CI after other Python versions, and see if that makes an observable difference in the PyPI Python version download metrics for sdists and universal wheels.
There are also a few open discussions against linehaul and pip regarding improving the UserAgent metrics in Big Query to better distinguish different download scenarios:
- Determine how to handle various User Agent situations · Issue #44 · pypi/linehaul · GitHub (handling user agent parsing limitations)
- Permit pipenv and other tools to report itself as the downloader in pip's user agent by theacodes · Pull Request #5424 · pypa/pip · GitHub (allowing pip wrappers like pipenv and tox to provide identifying info via pip’s User Agent string)
- How to measure adoption of Pip? Does anyone still use easy_install? PyPI census · Issue #58 · pypa/packaging-problems · GitHub (original discussion about identifying the level of adoption of pip vs other installers)
There may also be value in teaching pip
to identify well-known CI execution contexts, and report that info as an extra string field. (e.g. set “travis-ci” based on seeing “TRAVIS_BUILD” from Environment Variables - Travis CI environment variables, or “jenkins” based on seeing “JENKINS_URL” from Jenkins : Building a software project)