[openstack-dev] [requirements][all][keystone] Getting requests from keystoneauth not directly

Monty Taylor mordred at inaugust.com
Fri Apr 21 15:29:04 UTC 2017


Hey everybody!

I just put up a couple of patches here:

https://review.openstack.org/#/q/topic:ksa-requests

that remove direct depends from client libs on requests, which leave 
them to rely on keystoneauth for their requests dependency.

The reason I pushed these up is that we're seeing bug reports from users 
out there that they'll install a set of python-*clients, then try to use 
something with entrypoints and pkg_resources barfs at them.

This in turn is caused by _some_ of the clients having made releases 
with a new version exclusion placed on requests but others not having 
made that, and then the ones that haven't released with the exclusion 
yet happen to be the ones from which pip decides to install requests - 
leading to a version of requests being installed that conflicts with the 
stated version string of some of our client libs. (yay! :( )

So my general proposal is that since all of our client libs use 
keystoneauth for their REST interactions anyway (yay for real), that we 
rely on keystoneuath for installation of requests. This way if we need 
to get a fix out that involves blocking a version of requests, we simply 
need to land it in ksa and release ksa - which is also low impact 
because ksa has an extremely strict policy on changes and backwards compat.

There is a similar issue that currently exists with Babel, so I'll also 
send a few patches out. There is a MUCH LARGER overall issue at work 
here that Doug Hellmann has a proposal up for fixing in a real way. I 
don't think we should spend an excessive amount of time obsessing about 
trying to shrink transitive dependency chains like this and instead we 
should just work on Doug's thing. But requests is, well, it's kind of 
essential to all the client libs - so it seems like a fairly simple way 
to fix something that's breaking our users right now.

Monty



More information about the OpenStack-dev mailing list