Closed annieDang closed 3 months ago
Hi @annieDang,
botocore has been usable with urllib3 2.x since October with https://github.com/boto/botocore/pull/3034. We're confident the majority of users on those platforms have successfully upgraded and been using urllib3 2.0. The most recent change you referenced was to add support beyond 2.0.7 now that a breaking change has been fixed upstream.
As noted in the other issues, Python 3.9 is not compatible with urllib3 on all platforms we support. We don't have intentions to change that restriction as detailed in https://github.com/boto/botocore/issues/3138#issuecomment-1986927748.
Looking at the error you provided, it seems you are trying to install this on a version of Python older than 3.10 (presumably 3.9).
botocore 1.34.63 depends on urllib3<1.27 and >=1.25.4; python_version < "3.10"
You may want to double check any lock files and that you're using the expected version of Python when installing. I installed a fresh copy of Python 3.11.4 on a macOS m1 and this was the result I'm seeing:
(.venv) natepr@ OpenSource % python -m pip install boto3
Collecting boto3
Downloading boto3-1.34.63-py3-none-any.whl (139 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 139.3/139.3 kB 5.8 MB/s eta 0:00:00
Collecting botocore<1.35.0,>=1.34.63 (from boto3)
Downloading botocore-1.34.63-py3-none-any.whl (12.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.0/12.0 MB 65.6 MB/s eta 0:00:00
Collecting jmespath<2.0.0,>=0.7.1 (from boto3)
Using cached jmespath-1.0.1-py3-none-any.whl (20 kB)
Collecting s3transfer<0.11.0,>=0.10.0 (from boto3)
Downloading s3transfer-0.10.1-py3-none-any.whl (82 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 82.2/82.2 kB 7.8 MB/s eta 0:00:00
Collecting python-dateutil<3.0.0,>=2.1 (from botocore<1.35.0,>=1.34.63->boto3)
Downloading python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 229.9/229.9 kB 26.6 MB/s eta 0:00:00
Collecting urllib3!=2.2.0,<3,>=1.25.4 (from botocore<1.35.0,>=1.34.63->boto3)
Downloading urllib3-2.2.1-py3-none-any.whl (121 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 121.1/121.1 kB 15.4 MB/s eta 0:00:00
Collecting six>=1.5 (from python-dateutil<3.0.0,>=2.1->botocore<1.35.0,>=1.34.63->boto3)
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Installing collected packages: urllib3, six, jmespath, python-dateutil, botocore, s3transfer, boto3
Successfully installed boto3-1.34.63 botocore-1.34.63 jmespath-1.0.1 python-dateutil-2.9.0.post0 s3transfer-0.10.1 six-1.16.0 urllib3-2.2.1
We can see it successfully resolves boto3/botocore 1.34.63 and urllib3 2.2.1. Please let us know if you have other questions after reviewing your installation setup. Thanks!
This issue is now closed. Comments on closed issues are hard for our team to see. If you need more assistance, please open a new issue that references this one.
Describe the bug
From #3138 and #3141, even I use Python 3.10+ Work with python 3.10 but cannot work with python 3.11
Expected Behavior
Version botocore 1.34.63 should be compatible with urllib3 2.0+
Current Behavior
botocore 1.34.63 depends on urllib3<1.27 and >=1.25.4; python_version < "3.10"
Reproduction Steps
see above
Possible Solution
No response
Additional Information/Context
No response
SDK version used
Python 3.11; boto3 v1.34.63
Environment details (OS name and version, etc.)
Macos m1