kevin1024 / vcrpy

Automatically mock your HTTP interactions to simplify and speed up testing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What are the minimum supported versions of boto3 and requests?

pquentin opened this issue · comments

When trying to add support for urllib3 2.0, @hartwork ran into various issues, one of them being that "there is monkey patching of all sorts of bundled urllib3 copies happenning". Indeed, if we look at how urllib3 is imported, we can see three different things:

from urllib3.connectionpool import HTTPConnection, VerifiedHTTPSConnection
from requests.packages.urllib3.connectionpool import HTTPConnection, VerifiedHTTPSConnection
from botocore.vendored.requests.packages.urllib3.connectionpool import HTTPConnection, VerifiedHTTPSConnection (only in tests)

Do we still need this? requests 2.16.0 unvendored urllib3 back in 2017 and botocore 1.11.0 unvendored requests in 2018.

If you look at requests usage today, you can see that:

I found psf/requests@28666e5 that is included in requests >=2.16.2 as the arguably latest point where urllib3 was unvendored from requests.