Comment 7 for bug 1172444

Revision history for this message
Akihiro Motoki (amotoki) wrote :

Useful description about why pep8 and pyflakes needs to be placed first and they cannot be in alphabetical order in tools/test-require. (from https://review.openstack.org/#/c/28890/1/tools/test-requires )

-----
Unfortunately pip finds and installs dependencies by performing a depth first search across this list. What that means is while we can strive to put dependencies in alphabetic order we may not be able to when the actual order pip installs things matters.
This is one of those cases. We want pep8 and pyflakes to be installed before flake8 so that we can control their versions. If we let flake8 pull them in as dependencies we will get whatever version flake8 has deemed appropriate. By putting this set of things at the top of the list we also avoid other test dependencies potentially pulling in versions we don't want.
-----